:root{--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.32, 0, .67, 0);--ease-spring: cubic-bezier(.34, 1.36, .64, 1);--ease-sheet: cubic-bezier(.32, .72, 0, 1);--bg: #f5f5f7;--surface: #ffffff;--surface-2: #f2f2f7;--input-bg: #ffffff;--fill: rgba(120, 120, 128, .12);--fill-hover: rgba(120, 120, 128, .2);--fill-strong: rgba(120, 120, 128, .32);--separator: rgba(60, 60, 67, .12);--border: rgba(60, 60, 67, .2);--text: #1d1d1f;--muted: #6e6e73;--accent: #0071e3;--accent-hover: #0077ed;--accent-soft: rgba(0, 113, 227, .1);--on-accent: #ffffff;--ok: #248a3d;--ok-fill: #34c759;--ok-soft: rgba(52, 199, 89, .14);--warn: #b25000;--warn-soft: rgba(255, 149, 0, .14);--danger: #d70015;--danger-soft: rgba(255, 59, 48, .1);--info-soft: rgba(0, 113, 227, .08);--glass: rgba(246, 246, 248, .72);--glass-border: rgba(0, 0, 0, .06);--glass-shadow: 0 8px 28px rgba(0, 0, 0, .07), 0 1px 2px rgba(0, 0, 0, .04);--ambient: rgba(0, 113, 227, .07);--menu-bg: rgba(252, 252, 253, .97);--radius: 14px;--radius-control: 10px;--shadow: 0 1px 1px rgba(0, 0, 0, .02), 0 2px 12px rgba(0, 0, 0, .05);--shadow-sheet: 0 24px 64px rgba(0, 0, 0, .2), 0 2px 8px rgba(0, 0, 0, .08);--scroll-shade: rgba(0, 0, 0, .12);--raised: #ffffff;--shadow-raised: 0 1px 3px rgba(0, 0, 0, .12), 0 1px 1px rgba(0, 0, 0, .04);--card-border: transparent;--focus: 0 0 0 4px rgba(0, 113, 227, .28);--chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5' fill='none' stroke='%236e6e73' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,sans-serif;font-size:14px;line-height:1.5;letter-spacing:-.005em;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-color-scheme:dark){:root{--bg: #000000;--surface: #1c1c1e;--surface-2: #2c2c2e;--input-bg: #2c2c2e;--fill: rgba(118, 118, 128, .24);--fill-hover: rgba(118, 118, 128, .32);--fill-strong: rgba(118, 118, 128, .44);--separator: rgba(84, 84, 88, .5);--border: rgba(84, 84, 88, .7);--text: #f5f5f7;--muted: #98989d;--accent: #0a84ff;--accent-hover: #409cff;--accent-soft: rgba(10, 132, 255, .18);--ok: #30d158;--ok-fill: #30d158;--ok-soft: rgba(48, 209, 88, .16);--warn: #ff9f0a;--warn-soft: rgba(255, 159, 10, .16);--danger: #ff453a;--danger-soft: rgba(255, 69, 58, .16);--info-soft: rgba(10, 132, 255, .14);--glass: rgba(44, 44, 46, .58);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 28px rgba(0, 0, 0, .5);--ambient: rgba(10, 132, 255, .1);--menu-bg: rgba(44, 44, 46, .97);--shadow: none;--shadow-sheet: 0 24px 64px rgba(0, 0, 0, .6);--scroll-shade: rgba(0, 0, 0, .6);--raised: #636366;--shadow-raised: 0 1px 3px rgba(0, 0, 0, .5);--card-border: rgba(84, 84, 88, .36);--focus: 0 0 0 4px rgba(10, 132, 255, .4);--chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5' fill='none' stroke='%2398989d' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");color-scheme:dark}}*{box-sizing:border-box}body{margin:0;background:var(--bg)}::selection{background:var(--accent-soft)}h1,h2{margin:0;color:var(--text)}h1{font-size:28px;font-weight:700;line-height:1.2;letter-spacing:-.022em}h2{font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.012em}p{margin:0}code,.mono{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}code{padding:1px 5px;border-radius:5px;background:var(--fill)}.muted{color:var(--muted)}.small{font-size:12px}.nowrap{white-space:nowrap}.empty{color:var(--muted);padding:40px 24px;text-align:center;background:var(--surface);border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:var(--shadow)}:focus-visible{outline:none;box-shadow:var(--focus)}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 16px;border:none;border-radius:999px;font:inherit;font-size:14px;font-weight:500;letter-spacing:-.01em;cursor:pointer;white-space:nowrap;transition:background-color .18s ease,color .18s ease,opacity .18s ease,transform .4s var(--ease-spring)}.button:not(:disabled):active{transform:scale(.96);transition-duration:.18s,.18s,.18s,.08s;transition-timing-function:ease,ease,ease,var(--ease-out)}.button:disabled{cursor:default;opacity:.4}.button.primary{background:var(--accent);color:var(--on-accent)}.button.primary:not(:disabled):hover{background:var(--accent-hover)}.button.secondary{background:var(--fill);color:var(--text)}.button.secondary:not(:disabled):hover{background:var(--fill-hover)}.button.danger{background:var(--danger-soft);color:var(--danger)}.button.danger:not(:disabled):hover{background:var(--danger);color:#fff}.button.link{height:auto;padding:2px 6px;border-radius:6px;background:none;color:var(--accent);font-weight:400}.button.link:not(:disabled):hover{background:var(--accent-soft)}.button.link:not(:disabled):active{transform:none}.button.link.danger-link{color:var(--danger)}.button.link.danger-link:not(:disabled):hover{background:var(--danger-soft)}.spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.form{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field-label{font-size:13px;font-weight:500}.field-hint{color:var(--muted);font-size:12px}.field input,.field select,.pager select{width:100%;height:36px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-control);background-color:var(--input-bg);color:var(--text);font:inherit;transition:border-color .18s ease,box-shadow .18s ease}.field select,.pager select{appearance:none;padding-right:32px;background-image:var(--chevron);background-repeat:no-repeat;background-position:right 12px center;background-size:12px;cursor:pointer}.field input::placeholder{color:var(--muted);opacity:.8}.field input:focus,.field select:focus,.pager select:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus)}.field input[type=file]{height:auto;padding:8px;border-style:dashed;cursor:pointer}.field input[type=file]::file-selector-button{margin-right:12px;padding:5px 14px;border:none;border-radius:999px;background:var(--fill);color:var(--text);font:inherit;cursor:pointer}.toggle{display:flex;align-items:center;gap:10px;cursor:pointer;user-select:none}.toggle input{appearance:none;position:relative;flex-shrink:0;width:38px;height:22px;margin:0;border-radius:999px;background:var(--fill-strong);cursor:pointer;transition:background-color .28s var(--ease-out)}.toggle input:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003,0 0 1px #0003;transition:transform .42s var(--ease-spring),width .24s var(--ease-out)}.toggle input:checked{background:var(--ok-fill)}.toggle input:checked:before{transform:translate(16px)}.toggle input:not(:disabled):active:before{width:22px}.toggle input:checked:not(:disabled):active:before{transform:translate(12px)}.toggle input:disabled{opacity:.4;cursor:default}.choices{border:none;border-radius:12px;padding:12px 14px;background:var(--fill);display:flex;flex-wrap:wrap;gap:10px 20px;margin:0}.choices legend{float:left;width:100%;font-size:13px;font-weight:500;padding:0;margin-bottom:2px}.banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;font-size:13px;animation:drop-in .45s var(--ease-spring)}@keyframes drop-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}}.banner-text{flex:1;word-break:break-word}.banner.info{background:var(--info-soft)}.banner.success{background:var(--ok-soft);color:var(--ok)}.banner.warning{background:var(--warn-soft);color:var(--warn)}.banner.error{background:var(--danger-soft);color:var(--danger)}.banner-close{width:22px;height:22px;flex-shrink:0;border:none;border-radius:50%;background:var(--fill);color:inherit;font-size:15px;line-height:1;cursor:pointer}.modal-backdrop{position:fixed;inset:0;background:#00000047;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10;animation:fade-in .3s var(--ease-out)}.modal-backdrop.leaving{pointer-events:none;animation:fade-out .22s var(--ease-in) both}.modal{width:min(560px,calc(100% - 32px));max-height:calc(100vh - 48px);overflow-y:auto;background:var(--surface);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-sheet);animation:sheet-in .46s var(--ease-spring)}.modal-backdrop.leaving .modal{animation:sheet-out .22s var(--ease-in) both}.modal-body{display:flex;flex-direction:column;gap:14px}.modal-actions,.actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes sheet-in{0%{opacity:0;transform:scale(.92) translateY(12px)}}@keyframes sheet-out{to{opacity:0;transform:scale(.96) translateY(6px)}}.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(1200px 600px at 20% -10%,rgba(0,113,227,.12),transparent 60%),radial-gradient(900px 500px at 110% 110%,rgba(175,82,222,.1),transparent 60%),var(--bg)}.auth-card{width:400px;max-width:100%;background:var(--surface);border:1px solid var(--card-border);border-radius:22px;padding:32px;box-shadow:var(--shadow-sheet);display:flex;flex-direction:column;gap:16px}.auth-card .button[type=submit]{height:40px;font-size:15px}.shell{position:relative;display:flex;height:100vh;background:radial-gradient(900px 600px at 0% 0%,var(--ambient),transparent 60%),var(--bg)}body.resizing{cursor:col-resize;user-select:none}.sidebar{position:relative;z-index:3;flex-shrink:0;width:228px;height:calc(100vh - 20px);margin:10px 0 10px 10px;padding:10px 10px 12px;border:1px solid var(--glass-border);border-radius:18px;background:var(--glass);backdrop-filter:saturate(180%) blur(30px);-webkit-backdrop-filter:saturate(180%) blur(30px);box-shadow:var(--glass-shadow);display:flex;flex-direction:column;gap:12px;transition:width .34s var(--ease-sheet)}body.resizing .sidebar{transition:none}.sidebar.collapsed{width:62px;padding:10px 8px 12px}.sidebar.overlay{position:absolute;top:0;left:0;z-index:20;box-shadow:var(--shadow-sheet);animation:peek-in .4s var(--ease-sheet)}@keyframes peek-in{0%{opacity:0;transform:translate(-12px)}}.sidebar-scrim{position:fixed;inset:0;z-index:19;background:#0000001f;animation:fade-in .2s ease}.sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;padding-left:6px}.sidebar.collapsed .sidebar-top{justify-content:center;padding:0}.sidebar-brand{display:flex;align-items:center;gap:9px;min-width:0;overflow:hidden;white-space:nowrap;font-size:14px;letter-spacing:-.01em}.sidebar-brand img{flex-shrink:0;border-radius:22%;box-shadow:0 1px 4px #0000001f}.sidebar-toggle{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:background-color .15s ease,color .15s ease}.sidebar-toggle:hover{background:var(--fill);color:var(--text)}.sidebar-toggle .nav-icon{color:inherit}.account-card{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:none;border-radius:12px;background:var(--fill);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease}.account-card:hover{background:var(--fill-hover)}.avatar{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#5ac8fa,#0a84ff 55%,#5e5ce6);color:#fff;font-size:15px;font-weight:600}.account-text{display:flex;flex-direction:column;min-width:0;line-height:1.35}.account-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500}.account-balance{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.account-balance.low{color:var(--danger)}.sidebar.collapsed .account-card{justify-content:center;padding:4px 0;background:transparent}.sidebar.collapsed .account-card:hover{background:var(--fill)}.sidebar-sections{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.sidebar-heading{padding:0 10px 4px;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.02em}.sidebar.collapsed .sidebar-section+.sidebar-section{padding-top:10px;border-top:1px solid var(--separator)}.sidebar ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.nav{position:relative;width:100%;height:32px;display:flex;align-items:center;gap:10px;padding:0 10px;border:none;border-radius:8px;background:none;color:var(--text);font:inherit;font-size:14px;text-align:left;cursor:pointer;transition:background-color .15s ease}.nav-icon{width:18px;height:18px;flex-shrink:0;color:var(--accent)}.nav-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-trailing{display:flex;align-items:center}.nav:hover{background:var(--fill)}.nav.active{background:var(--accent);color:var(--on-accent);font-weight:500}.nav.active .nav-icon{color:var(--on-accent)}.sidebar.inactive .nav.active{background:var(--fill-strong);color:var(--text)}.sidebar.inactive .nav.active .nav-icon{color:var(--muted)}.sidebar.collapsed .nav{justify-content:center;width:44px;height:36px;margin:0 auto;padding:0}.sidebar.collapsed .nav-trailing{position:absolute;top:5px;right:6px}.nav-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--fill-strong)}.nav-dot.ok{background:var(--ok-fill)}.nav-dot.warn{background:#ff9f0a}.nav-dot.bad{background:#ff3b30}.nav.active .nav-dot{box-shadow:0 0 0 2px #ffffffe6}.sidebar-footer{display:flex;align-items:center;gap:8px;padding:10px 8px 0;border-top:1px solid var(--separator);color:var(--muted);font-size:12px}.sidebar-footer .dot{width:8px;height:8px}.sidebar-version{margin-left:auto}.sidebar.collapsed .sidebar-footer{justify-content:center;padding:10px 0 0}.sidebar.collapsed .account-text,.sidebar.collapsed .nav-label,.sidebar.collapsed .sidebar-heading,.sidebar.collapsed .sidebar-footer-text,.sidebar.collapsed .sidebar-version{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.sidebar-resizer{position:absolute;top:16px;bottom:16px;right:-6px;z-index:4;width:12px;cursor:col-resize}.sidebar-resizer:after{content:"";position:absolute;top:0;bottom:0;left:5px;width:2px;border-radius:1px;background:transparent;transition:background-color .15s ease}.sidebar-resizer:hover:after,.sidebar-resizer:focus-visible:after,body.resizing .sidebar-resizer:after{background:var(--accent)}.sidebar-resizer:focus-visible{box-shadow:none}.brand-icon{width:26px;height:26px;padding:4px;border-radius:8px;background:linear-gradient(135deg,#0a84ff,#5e5ce6);color:#fff}.nav-count{display:grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ff3b30;color:#fff;font-size:11px;font-weight:600}.sidebar.collapsed .nav-count{min-width:14px;height:14px;padding:0 3px;font-size:9px}.account-menu{position:relative}.menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;min-width:180px;padding:5px;border:1px solid var(--glass-border);border-radius:12px;background:var(--menu-bg);box-shadow:var(--shadow-sheet);transform-origin:top left;animation:menu-in .28s var(--ease-spring)}.menu.leaving{pointer-events:none;animation:fade-out .16s var(--ease-in) both}@keyframes menu-in{0%{opacity:0;transform:scale(.95) translateY(-4px)}}.menu-item{display:block;width:100%;padding:6px 10px;border:none;border-radius:7px;background:none;color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.menu-item:hover,.menu-item:focus-visible{background:var(--accent);color:var(--on-accent);box-shadow:none}main{flex:1;padding:32px 40px 48px;min-width:0;overflow-y:auto}.page{display:flex;flex-direction:column;gap:20px;max-width:1100px;margin:0 auto}.page>:not(.page-header):not(.modal-backdrop){animation:rise-in .5s var(--ease-out) both}.page>:nth-child(3):not(.modal-backdrop){animation-delay:40ms}.page>:nth-child(4):not(.modal-backdrop){animation-delay:80ms}.page>:nth-child(5):not(.modal-backdrop){animation-delay:.12s}.page>:nth-child(n+6):not(.modal-backdrop){animation-delay:.16s}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}}.page>p.muted{margin-top:-8px;font-size:13px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.card{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px 14px}.table-wrap{overflow-x:auto;background:linear-gradient(to right,var(--surface) 40%,transparent) left / 36px 100% no-repeat local,linear-gradient(to left,var(--surface) 40%,transparent) right / 36px 100% no-repeat local,radial-gradient(farthest-side at 0 50%,var(--scroll-shade),transparent) left / 12px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,var(--scroll-shade),transparent) right / 12px 100% no-repeat scroll,var(--surface);border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px 10px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:10px;text-align:left;vertical-align:top;border-bottom:1px solid var(--separator)}th{color:var(--muted);font-size:12px;font-weight:500;white-space:nowrap}tbody tr{transition:background-color .12s ease}tbody tr:hover{background:var(--fill)}tbody tr:hover td:first-child{border-radius:8px 0 0 8px}tbody tr:hover td:last-child{border-radius:0 8px 8px 0}tbody tr:last-child td{border-bottom:none}.number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.row-actions{white-space:nowrap}.status{display:inline-flex;align-items:center;gap:5px;padding:1px 9px 1px 7px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status.ok{background:var(--ok-soft);color:var(--ok)}.status.warn{background:var(--warn-soft);color:var(--warn)}.status.bad{background:var(--danger-soft);color:var(--danger)}.status.off{background:var(--fill);color:var(--muted)}.error-text{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:600;line-height:18px;vertical-align:1px}.preview{list-style:none;margin:0;padding:0 12px;display:flex;flex-direction:column;border-radius:12px;background:var(--fill)}.preview li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:10px 0}.preview li+li{border-top:1px solid var(--separator)}.page.logs{max-width:none}.log-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px 14px;align-items:end}.log-actions{grid-column:1 / -1;justify-content:flex-end}.log-actions .button{height:36px}.log-table th,.log-table td{padding-left:8px;padding-right:8px}.log-details{min-width:170px}.log-details .mono{word-break:break-all}.parts>span{white-space:nowrap}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:baseline;gap:6px;padding:8px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--card-border);box-shadow:var(--shadow);color:var(--muted);font-size:12px}.chip strong{color:var(--text);font-size:16px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.segmented{position:relative;display:inline-flex;align-self:flex-start;padding:2px;gap:2px;border-radius:9px;background:var(--fill)}.segmented-thumb{position:absolute;top:2px;bottom:2px;left:0;border-radius:7px;background:var(--raised);box-shadow:var(--shadow-raised);transition:transform .46s var(--ease-spring),width .46s var(--ease-spring)}.segmented button{position:relative;height:28px;padding:0 16px;border:none;border-radius:7px;background:transparent;color:var(--text);font:inherit;font-size:13px;cursor:pointer;transition:opacity .18s ease}.segmented button:not([aria-pressed=true]):hover{opacity:.7}.segmented button[aria-pressed=true]{font-weight:600}.secret{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-2);color:var(--text);font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.6;resize:vertical}.secret:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus)}.stack>.status{align-self:flex-start}.button.link.refund-link{align-self:flex-start;height:auto;padding:2px 0 0;font-size:12px}.balance-after{color:var(--muted);font-size:13px}.stack{display:flex;flex-direction:column;gap:2px}.tag{align-self:flex-start;display:inline-block;padding:1px 7px;border-radius:6px;font-size:11px;font-weight:600;background:var(--fill);color:var(--muted)}.tag.charge{background:var(--ok-soft);color:var(--ok)}.tag.topup,.tag.refund{background:var(--accent-soft);color:var(--accent)}.tag.adjust{background:var(--warn-soft);color:var(--warn)}.amount{font-weight:600;font-variant-numeric:tabular-nums}.amount.plus{color:var(--ok)}.amount.minus{color:var(--danger)}.timing-cell{display:flex;flex-direction:column;gap:2px;padding-left:8px;border-left:2px solid var(--ok-fill)}.timing{color:var(--ok);font-variant-numeric:tabular-nums}.timing.slow{color:var(--warn)}.pager{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;font-size:13px}.pager select{width:auto;height:32px}.auth{animation:fade-in .4s var(--ease-out)}.auth-card{animation:sheet-in .5s var(--ease-spring)}.shell{animation:fade-in .4s var(--ease-out)}.button .spinner{animation:spin .8s linear infinite,spinner-in .3s var(--ease-spring)}@keyframes spinner-in{0%{opacity:0;scale:.4}}.table-wrap,.chips,.empty,.preview{animation:fade-in .35s var(--ease-out)}tbody tr{animation:fade-in .35s var(--ease-out) both}.nav-trailing{animation:pop-in .45s var(--ease-spring)}.dot,.nav-dot{transition:background-color .4s var(--ease-out),box-shadow .4s var(--ease-out)}.sidebar:not(.collapsed) :is(.sidebar-brand,.account-text,.sidebar-heading,.nav-label){animation:label-in .4s var(--ease-out) .06s both}@keyframes label-in{0%{opacity:0;transform:translate(-4px)}}.sidebar-scrim.leaving{pointer-events:none;animation:fade-out .22s var(--ease-in) both}.swap{animation:swap-in .3s var(--ease-out)}@keyframes swap-in{0%{opacity:0;transform:translateY(3px)}}@keyframes pop-in{0%{transform:scale(.4)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
