@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-numeric-CWqhiLPL.woff2)format("woff2");unicode-range:U+20-7E,U+A0,U+A5,U+20AC,U+FFE5}:root{--ink:#e0e0e0;--ink-2:#ffffffd1;--ink-3:#ffffffad;--canvas:#121212;--surface:#18181c;--surface-2:#26262a;--line:#2d2d30;--line-strong:#ffffff24;--table-head:#26262a;--table-head-ink:#ffffffeb;--control-bg:#ffffff1a;--control-hover:#ffffff29;--control-disabled:#ffffff0f;--overlay:#00000085;--accent:#3b82f6;--accent-hover:#60a5fa;--accent-soft:#3b82f626;--accent-line:#3b82f685;--focus-ring:0 0 0 2px #3b82f640;--row-hover:#ffffff0a;--danger:#e88080;--danger-soft:#e880801f;--danger-line:#e8808066;--ok:#52c41a;--ok-soft:#52c41a24;--ok-line:#52c41a66;--warn:#faad14;--warn-soft:#faad1424;--warn-line:#faad1466;--nav-bg:#1c1c1c;--nav-ink:#ffffffb8;--nav-hover:#ffffff0f;--nav-line:#ffffff17;--nav-active:#1f6feb;--nav-active-ink:#fff;--radius:6px;--radius-lg:6px;--shadow-card:none;--shadow-float:0 12px 32px #00000073, 0 2px 8px #0000004d;--shadow-primary:none;--font:system-ui, -apple-system, BlinkMacSystemFont, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans CJK SC", "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--font-numeric:Inter, "SF Pro Display", "Segoe UI Variable", "Helvetica Neue", Arial, sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:16px;--text-lg:20px;--text-xl:28px;--table-row-height:39px;--table-cell-y:8px;--table-head-y:10px;--control-h:34px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--ink:#172033;--ink-2:#172033d6;--ink-3:#172033a3;--canvas:#f4f6fa;--surface:#fff;--surface-2:#edf1f7;--line:#dbe2ec;--line-strong:#17203326;--table-head:#f1f4f9;--table-head-ink:#334155;--control-bg:#f4f6fa;--control-hover:#eaf0f7;--control-disabled:#f7f8fb;--overlay:#0f172a5c;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:#2563eb1a;--accent-line:#2563eb6b;--focus-ring:0 0 0 2px #2563eb33;--row-hover:#2563eb0d;--danger:#c24154;--danger-soft:#c2415417;--danger-line:#c241544d;--ok:#238636;--ok-soft:#23863617;--ok-line:#23863647;--warn:#b45309;--warn-soft:#b4530917;--warn-line:#b4530947;--nav-bg:#fff;--nav-ink:#172033bd;--nav-hover:#2563eb12;--nav-line:#e3e8ef;--nav-active:#2563eb;--nav-active-ink:#fff;--shadow-card:0 1px 2px #0f172a0d, 0 4px 16px #0f172a0a;--shadow-float:0 18px 44px #0f172a29, 0 4px 12px #0f172a14}*,:before,:after{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html,body,#app{height:100%}body{font-family:var(--font);font-size:var(--text-base);color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;line-height:1.57}h1,h2,h3,h4{color:var(--ink);margin:0;font-weight:500}h1{font-size:var(--text-lg)}h2,h3{font-size:var(--text-md)}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:none}.num{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;-webkit-text-stroke:.15px currentColor}.text-muted{color:var(--ink-3)}.text-small{font-size:var(--text-sm)}.field{flex-direction:column;gap:6px;display:flex}.field>label{font-size:var(--text-sm);color:var(--ink-2);font-weight:400}.input{width:100%;height:var(--control-h);font:inherit;color:var(--ink-2);background:var(--control-bg);border-radius:var(--radius);-webkit-text-stroke:.15px currentColor;border:1px solid #0000;padding:0 12px;transition:background .15s,border-color .15s}select.input{cursor:pointer;padding-right:28px}select.input option{color:var(--ink);background:var(--surface-2)}.input::placeholder{color:var(--ink-3)}.input:hover:not(:disabled){background:var(--control-hover)}.input:focus{border-color:var(--accent);background:var(--control-bg);outline:none}.input:disabled{background:var(--control-disabled);color:var(--ink-3);cursor:not-allowed}.input--code{font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.4em;text-align:center;height:auto;padding:10px 12px 10px .4em}.btn{height:var(--control-h);font:inherit;color:var(--ink-2);background:var(--control-bg);border-radius:var(--radius);cursor:pointer;border:1px solid #0000;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:400;line-height:1;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn:hover:not(:disabled){color:var(--ink);background:var(--control-hover);border-color:#0000}.btn:focus-visible{outline:2px solid var(--accent-line);outline-offset:1px}.btn:disabled{color:var(--ink-3);background:var(--control-disabled);cursor:not-allowed}.btn--primary{color:#fff;background:var(--accent);border-color:#0000}.btn--primary:hover:not(:disabled){color:#fff;background:var(--accent-hover);border-color:#0000}.btn--ok{color:#fff;background:var(--ok);border-color:#0000}.btn--ok:hover:not(:disabled){color:#fff;background:#63d523;border-color:#0000}.btn--warn{color:#fff;background:var(--warn);border-color:#0000}.btn--warn:hover:not(:disabled){color:#fff;background:#fbbf3a;border-color:#0000}.btn--block{width:100%}.btn--ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){color:var(--ink);background:#ffffff14;border-color:#0000}.alert{font-size:var(--text-sm);border-radius:var(--radius);border:1px solid #0000;padding:8px 12px}.alert--danger{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-line)}.alert--ok{color:var(--ok);background:var(--ok-soft);border-color:var(--ok-line)}.alert--warn{color:var(--warn);background:var(--warn-soft);border-color:var(--warn-line)}.alert--info{color:var(--accent-hover);background:var(--accent-soft);border-color:var(--accent-line)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card)}.card__head{font-size:var(--text-lg);color:var(--ink-2);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:19px 24px 20px;font-weight:500;line-height:1.6;display:flex}.card.data-card{overflow:hidden}.card.data-card .table-wrap{border:none;border-radius:0}.auth-shell{background:radial-gradient(900px 480px at 50% -8%,#db277738 0%,#0000 62%),radial-gradient(700px 420px at 88% 12%,#3b82f624 0%,#0000 60%),#0d0d10;flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:32px 20px;display:flex}.auth-brand{align-items:center;gap:10px;margin-bottom:20px;display:flex}.auth-brand__mark{width:34px;height:34px;font-size:var(--text-md);color:#fff;border-radius:var(--radius);background:linear-gradient(135deg,#3b82f6 0%,#db2777 100%);place-items:center;font-weight:700;display:grid}img.auth-brand__mark{object-fit:cover;border:0;border-radius:8px;display:block}.auth-brand__name{font-size:var(--text-md);letter-spacing:.02em;color:var(--ink);font-weight:600}.auth-brand__portal{font-size:var(--text-xs);color:var(--ink-3);border-left:1px solid var(--line-strong);margin-left:2px;padding-left:10px;font-weight:400}.auth-card{border-radius:var(--radius-lg);width:100%;max-width:392px;box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#18181ceb;border:1px solid #ffffff1a;padding:28px 26px 22px}.auth-card__title{font-size:var(--text-lg);color:var(--ink);margin-bottom:4px}.auth-card__hint{font-size:var(--text-sm);color:var(--ink-3);margin-bottom:20px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-foot{font-size:var(--text-xs);color:var(--ink-3);text-align:center;margin-top:18px}.page{flex-direction:column;gap:16px;min-width:0;display:flex}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.page>.toolbar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.toolbar__field{flex-direction:column;gap:6px;display:flex}.toolbar__field>label{font-size:var(--text-sm);color:var(--ink-2)}.toolbar .input,.toolbar select.input{width:auto;min-width:160px}.toolbar>.btn{margin-bottom:0}.toolbar__actions{align-items:center;gap:12px;display:flex}.toolbar__spacer{flex:1}.tabs{border-bottom:1px solid var(--line);gap:4px;display:flex}.tab{font:inherit;font-size:var(--text-base);color:var(--ink-2);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;transition:color .15s}.tab:hover{color:var(--accent-hover)}.tab--active{color:var(--accent);border-bottom-color:var(--accent);font-weight:500}.table-wrap{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow-x:auto}.card__body>.toolbar{margin-bottom:12px}.card__body>.toolbar+:is(p,.text-small){clear:both;margin-top:4px;line-height:1.65;display:block}.table{border-collapse:collapse;width:100%;font-size:var(--text-base);white-space:nowrap}.table th{height:auto;min-height:44px;padding:var(--table-head-y) clamp(8px, 1vw, 14px);font-size:var(--text-sm);letter-spacing:.02em;color:var(--table-head-ink);text-align:left;vertical-align:middle;white-space:nowrap;overflow-wrap:normal;word-break:keep-all;background:var(--table-head);border-bottom:1px dashed color-mix(in srgb, var(--line) 62%, var(--accent));font-weight:600;line-height:1.32}.table th:not(:last-child){border-right:1px dashed color-mix(in srgb, var(--line) 68%, var(--accent))}.table th:first-child,.table td:first-child{padding-left:24px}.table th:last-child,.table td:last-child{padding-right:24px}.table td{height:var(--table-row-height);padding:var(--table-cell-y) 8px;color:var(--ink-2);text-align:left;vertical-align:middle;border-bottom:1px solid var(--line)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:var(--row-hover)}.table td.num{text-align:right;font-family:var(--font-numeric);font-variant-numeric:tabular-nums}.table th.num{text-align:right}.table .table__cell--numeric,.amount,.money,.currency,[data-numeric=true]{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;text-align:right}.table td.wrap{white-space:normal;min-width:220px;max-width:420px}.table .actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px 9px;display:flex}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini,.link){height:28px;min-height:28px;font-size:var(--text-xs);color:var(--accent-hover);background:color-mix(in srgb, var(--accent) 9%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 24%, var(--line));white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-weight:500;line-height:1;text-decoration:none;transition:color .15s,background .15s,border-color .15s,transform .15s;display:inline-flex}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini,.link):before{width:5px;height:5px;box-shadow:0 0 0 3px color-mix(in srgb, currentColor 12%, transparent);content:"";background:currentColor;border-radius:50%;flex:0 0 5px}.btn--mini{height:28px;font-size:var(--text-sm);padding:0 10px}.btn--danger{color:var(--danger);background:var(--danger-soft);border-color:#0000}.btn--danger:hover:not(:disabled){color:#fff;background:var(--danger);border-color:#0000}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini.btn--danger,.link--danger){color:var(--danger);background:color-mix(in srgb, var(--danger) 9%, var(--surface));border-color:color-mix(in srgb, var(--danger) 28%, var(--line))}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini.btn--danger,.link--danger):hover:not(:disabled){color:#ff9c9c;background:var(--danger-soft);border-color:var(--danger-line)}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini,.link):disabled{opacity:.42;cursor:not-allowed;transform:none}.table td .tag{margin-top:1px}.tag{height:22px;font-size:var(--text-xs);white-space:nowrap;border-radius:var(--radius);border:1px solid #0000;align-items:center;padding:0 7px;line-height:1;display:inline-flex}.tag--ok{color:var(--ok);background:var(--ok-soft);border-color:var(--ok-line)}.tag--danger{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-line)}.tag--warn{color:var(--warn);background:var(--warn-soft);border-color:var(--warn-line)}.tag--info{color:var(--accent-hover);background:var(--accent-soft);border-color:var(--accent-line)}.tag--muted{color:var(--ink-3);background:#ffffff14;border-color:#0000}.pager{font-size:var(--text-base);color:var(--ink-2);justify-content:flex-end;align-items:center;gap:8px;padding:12px 24px;display:flex}.pager__info{color:var(--ink-3);margin-right:8px}.pager__nav,.pager__num{border-radius:var(--radius);min-width:30px;height:30px;color:var(--ink-2);font:inherit;font-size:var(--text-base);cursor:pointer;background:#ffffff14;border:1px solid #0000;justify-content:center;align-items:center;padding:0 8px;display:inline-flex}.pager__nav:disabled,.pager__num:disabled{color:var(--ink-3);cursor:not-allowed}.pager__nav:not(:disabled):hover,.pager__num:not(:disabled):hover{color:var(--ink);background:#ffffff24}.pager__num--active,.pager__num--active:not(:disabled):hover{color:var(--accent-hover);background:var(--accent-soft);border-color:var(--accent-line)}.pager__num--gap,.pager__num--gap:disabled{cursor:default;background:0 0}.pager__size{border-radius:var(--radius);height:30px;color:var(--ink-2);font:inherit;font-size:var(--text-base);cursor:pointer;background:#ffffff1a;border:1px solid #0000;padding:0 8px}.pager__size option{color:var(--ink);background:var(--surface-2)}.pager .btn--mini{background:#ffffff14;min-width:30px;height:30px;padding:0 10px}.pager .btn--mini.btn--active{color:var(--accent-hover);background:var(--accent-soft);border-color:var(--accent-line)}.modal{z-index:900;background:#0000008c;justify-content:center;align-items:flex-start;padding:8vh 20px 20px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal__card{border-radius:var(--radius-lg);width:100%;max-width:600px;box-shadow:var(--shadow-float);background:#1f1f23;border:1px solid #ffffff1a}.modal__card--wide{max-width:880px}.modal__head{font-size:var(--text-md);color:var(--ink);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;font-weight:500;display:flex}.modal__body{flex-direction:column;gap:14px;padding:20px 24px;display:flex}.modal__foot{justify-content:flex-end;gap:8px;padding:12px 24px 16px;display:flex}.modal__close{font-size:var(--text-lg);color:var(--ink-3);cursor:pointer;background:0 0;border:none;padding:0 4px;line-height:1}.modal__close:hover{color:var(--ink)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.form-grid--one{grid-template-columns:1fr}.form-grid .span-2{grid-column:1/-1}textarea.input{resize:vertical;height:auto;min-height:72px;padding:8px 12px;line-height:1.6}.empty{font-size:var(--text-sm);color:var(--ink-3);text-align:center;padding:34px 18px}.empty--block{color:var(--ink-3);flex-direction:column;align-items:center;gap:10px;padding:46px 18px;display:flex}.empty--block svg{color:#ffffff29}.empty--block p{font-size:var(--text-base);margin:0}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:16px}.stat__label{font-size:var(--text-sm);color:var(--ink-3);display:block}.stat__value{font-size:var(--text-lg);color:var(--ink);margin-top:4px;font-weight:500;display:block}.stat__value--neg{color:var(--danger)}.stat__hint{font-size:var(--text-xs);color:var(--ink-3);margin-top:2px;display:block}.tree-toggle{width:18px;height:18px;font-size:var(--text-xs);color:var(--ink-3);cursor:pointer;vertical-align:middle;background:#ffffff14;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;margin-right:6px;padding:0;display:inline-flex}.tree-toggle:hover{color:var(--accent-hover)}.tree-toggle--hidden{visibility:hidden}.tree-toggle--open{transform:rotate(90deg)}.tree-label{cursor:pointer;vertical-align:middle}.tree-label--active{color:var(--accent);font-weight:500}.kv{font-size:var(--text-sm);grid-template-columns:max-content 1fr;gap:10px 18px;display:grid}.kv dt{color:var(--ink-3)}.kv dd{color:var(--ink);word-break:break-all;margin:0}.kv__key{color:var(--ink-3)}.kv__value{color:var(--ink);word-break:break-all}.section-title{font-size:var(--text-base);color:var(--ink);font-weight:500}body{overflow-x:hidden}.page,.card,.card__body,.table-wrap,.form-grid,.toolbar,.modal__body{min-width:0}.table-wrap{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.inline-form,.row-actions,.section-actions,.head-actions{flex-wrap:wrap}@media (width<=1200px){.breakdown-grid{grid-template-columns:1fr!important}.global-settings{grid-template-columns:repeat(2,minmax(0,1fr))!important}.global-settings>.btn{grid-column:1/-1;justify-self:start}}@media (width<=900px){.card__head{font-size:var(--text-md);padding:16px 18px}.card__body{padding:16px 18px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.trade-summary{grid-template-columns:1fr!important}.trade-summary__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.detail-grid,.permission-grid{grid-template-columns:1fr!important}.table-wrap--responsive{box-shadow:none;background:0 0;overflow:visible}.table--responsive{white-space:normal;min-width:0;display:block}.table--responsive thead{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.table--responsive tbody{gap:10px;padding:10px;display:grid}.table--responsive tbody tr{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid;overflow:hidden}.table--responsive tbody tr:hover td{background:0 0}.table--responsive tbody td{min-width:0;height:auto;color:var(--ink-2);text-align:left;white-space:normal;overflow-wrap:anywhere;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:block;padding:10px 12px!important}.table--responsive tbody td:last-child{border-right:0}.table--responsive[data-responsive-columns="2"] tbody tr{grid-template-columns:minmax(120px,.8fr) minmax(0,1.6fr)}.table--responsive tbody td:before{font-size:var(--text-xs);color:var(--ink-3);letter-spacing:.02em;content:attr(data-label);margin-bottom:4px;font-weight:500;line-height:1.35;display:block}.table--responsive tbody td:not([data-label]):before{display:none}.table--responsive tbody td:first-child{color:var(--ink);background:color-mix(in srgb, var(--accent) 7%, transparent);border-right:0;grid-column:1/-1;font-weight:500;padding-left:12px!important;padding-right:12px!important}.table--responsive[data-responsive-columns="2"] tbody td:first-child{grid-column:auto}.table--responsive tbody td.num{text-align:right}.table--responsive tbody td.table__cell--actions{border-bottom:0;border-right:0;flex-wrap:wrap;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;padding-top:10px;padding-bottom:10px;display:flex}.table--responsive tbody td.table__cell--actions:before{flex:0 0 100%;margin-bottom:0}.table--responsive tbody td.table__cell--actions>:is(.actions,.row-actions){flex-wrap:wrap;flex:100%;justify-content:center;gap:7px 9px;display:flex}.table--responsive tbody td.table__cell--actions>.btn{flex:92px;min-width:0}.table--responsive tbody tr.table__row--full{background:var(--surface);display:block}.table--responsive tbody tr.table__row--full td{color:var(--ink-3);text-align:center;background:0 0;border-bottom:0;border-right:0;grid-column:1/-1;font-weight:400;display:block;padding:24px 12px!important}.table--responsive tbody tr.table__row--full td:before{display:none}.table--responsive tbody tr:last-child td{border-bottom:1px solid var(--line)}.table--responsive tbody tr.table__row--full:last-child td,.table--responsive tbody tr:last-child td.table__cell--actions{border-bottom:0}}@media (width<=600px){.page{gap:12px}.page>.toolbar,.card__head,.card__body{padding:12px 14px}.card__head{flex-wrap:wrap}.toolbar{gap:10px}.toolbar__field{flex:100%;min-width:0}.toolbar .input,.toolbar select.input{width:100%;min-width:0}.toolbar__actions{flex-wrap:wrap;flex:100%}.toolbar__actions>.btn,.toolbar>.btn{flex:96px}.toolbar__spacer{display:none}.tabs{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;overflow-x:auto}.tab{flex:none;padding-inline:12px}.table{font-size:var(--text-sm)}.table th,.table td{height:auto;min-height:40px;padding:8px 10px}.table th:first-child,.table td:first-child{padding-left:14px}.table th:last-child,.table td:last-child{padding-right:14px}.table .actions{flex-wrap:wrap;justify-content:center;gap:8px 12px}.pager{flex-wrap:wrap;justify-content:center;gap:6px;padding:10px 12px}.pager__info{text-align:center;flex:1 0 100%;margin-right:0}.form-grid{grid-template-columns:1fr!important}.form-grid .span-2{grid-column:auto!important}.section-head,.project-head{flex-direction:column!important;align-items:stretch!important}.section-head .head-actions,.project-head .head-actions{justify-content:flex-start}.strategy-editor__row{flex-wrap:wrap}.strategy-editor__row .input:first-child,.strategy-editor__row .input:nth-child(2){flex:calc(50% - 5px);min-width:120px}.modal{padding:max(10px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));align-items:flex-start}.modal__card{flex-direction:column;max-width:calc(100vw - 16px);max-height:calc(100dvh - 20px);display:flex}.modal__head{padding:13px 14px}.modal__body{min-height:0;padding:14px;overflow-y:auto}.modal__foot{flex-wrap:wrap;padding:12px 14px 14px}.modal__foot>.btn{flex:120px}.kv{grid-template-columns:1fr;gap:4px}.kv dd{margin-bottom:8px}.auth-shell{min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.auth-card{padding:22px 18px 18px}.modal-scrim{padding:8px!important}.channel-modal,.login-modal{max-width:100%;max-height:calc(100dvh - 16px);overflow-y:auto;width:100%!important}.alert{overflow-wrap:anywhere}.table--responsive tbody{gap:9px;padding:0}.table--responsive tbody tr,.table--responsive[data-responsive-columns="2"] tbody tr{grid-template-columns:1fr}.table--responsive tbody td,.table--responsive tbody td:first-child{border-right:0;grid-column:1/-1}:root{--control-h:40px}.stat-grid,.trade-summary__grid,.trade-summary__payments{grid-template-columns:1fr!important}.trade-summary__head,.payment-summary__title,.payment-summary__meta{flex-direction:column;align-items:flex-start}.global-settings{grid-template-columns:1fr!important}.btn{min-height:var(--control-h)}.input,.pager__size{font-size:var(--text-md)}.stat{padding:12px}.stat__value{font-size:var(--text-lg)}}.table-wrap{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(68vh,760px);position:relative;overflow:auto}.table thead{z-index:3;position:sticky;top:0}.table thead th{box-shadow:0 1px 0 var(--line)}:root[data-table-density=compact]{--table-row-height:34px;--table-cell-y:5px;--table-head-y:7px}:root[data-table-density=default]{--table-row-height:39px;--table-cell-y:8px;--table-head-y:10px}:root[data-table-density=comfortable]{--table-row-height:48px;--table-cell-y:12px;--table-head-y:14px}.route-view-enter-active{transition:opacity .16s,transform .16s}.route-view-leave-active{transition:opacity 70ms}.route-view-enter-from{opacity:0;transform:translateY(3px)}.route-view-leave-to{opacity:0}:root[data-theme=light] .auth-shell{background:radial-gradient(900px 480px at 50% -8%, #2563eb1a 0%, transparent 62%), radial-gradient(700px 420px at 88% 12%, #0ea5e914 0%, transparent 60%), var(--canvas)}:root[data-theme=light] .auth-card{border-color:var(--line);background:#fffffff0}@media (width<=600px){.toolbar{align-items:stretch;row-gap:10px}.toolbar>*,.toolbar__field{min-width:0}}@media (prefers-reduced-motion:reduce){.route-view-enter-active,.route-view-leave-active{transition:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (pointer:coarse){.btn,.nav-item,.pager__nav,.pager__num,.modal__close{min-height:40px}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini,.link){min-height:32px;padding:4px 10px}}:root{--control-h:36px}body{line-height:1.5}.page{gap:12px}.card__head{font-size:var(--text-md);padding:14px 18px;line-height:1.4}.card__body{padding:16px 18px}.page>.toolbar{padding:14px}.toolbar{gap:10px}.toolbar__actions{gap:8px}.toolbar .input,.toolbar select.input{min-width:150px}.table{font-size:var(--text-sm)}.table th{font-size:var(--text-sm);text-align:left;vertical-align:middle;padding:9px 10px;line-height:1.4}.table td{height:40px;font-size:var(--text-sm);text-align:left;vertical-align:middle;padding:7px 10px;line-height:1.45}.table th.num,.table td.num{text-align:right}.table td.actions{flex-wrap:nowrap;justify-content:center;min-width:190px}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini,.link){height:30px;min-height:30px;color:var(--ink-2);border-color:var(--line-strong);background:0 0;border-radius:4px;gap:0;padding:0 9px}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini,.link):before{content:none;display:none}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini,.link):hover:not(:disabled){color:var(--accent-hover);background:var(--accent-soft);border-color:var(--accent-line);transform:none}.table :is(.actions,.row-actions,td[data-label=操作],td:last-child) :is(.btn--mini.btn--danger,.link--danger){color:var(--danger);border-color:color-mix(in srgb, var(--danger) 30%, var(--line));background:0 0}@media (width<=900px){.page{gap:10px}.card__head,.card__body{padding:14px}.table--responsive tbody td{padding:9px 10px!important}.table td.actions,.table--responsive tbody td.table__cell--actions{white-space:normal;flex-wrap:wrap;justify-content:flex-start;width:100%;min-width:0}}@media (width<=600px){.table th{font-size:var(--text-xs)}.toolbar .input,.toolbar select.input{width:100%;min-width:0}}.route-feedback[data-v-baa72b67]{z-index:120;pointer-events:none;height:2px;position:fixed;inset:0 0 auto;overflow:hidden}.route-feedback__bar[data-v-baa72b67]{background:linear-gradient(90deg, transparent, var(--accent), #8ab4f8);width:38%;height:100%;animation:1.1s ease-in-out infinite route-progress-baa72b67;display:block}.route-skeleton[data-v-baa72b67]{inset:92px 0 0 var(--portal-side-current-width,208px);z-index:59;pointer-events:none;background:var(--canvas);padding:18px;position:fixed}.route-skeleton__head[data-v-baa72b67]{background:var(--surface-2);border-radius:var(--radius);width:min(280px,42vw);height:24px;margin-bottom:18px;animation:1.2s ease-in-out infinite alternate skeleton-pulse-baa72b67}.route-skeleton__card[data-v-baa72b67]{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:10px;padding:20px;display:grid}.route-skeleton__card span[data-v-baa72b67]{background:color-mix(in srgb, var(--surface-2) 76%, var(--canvas));border-radius:4px;width:100%;height:34px;animation:1.2s ease-in-out infinite alternate skeleton-pulse-baa72b67}.route-skeleton__card span[data-v-baa72b67]:nth-child(3n+2){width:88%}.route-skeleton__card span[data-v-baa72b67]:nth-child(3n){width:94%}.route-feedback-fade-enter-active[data-v-baa72b67],.route-feedback-fade-leave-active[data-v-baa72b67]{transition:opacity .14s}.route-feedback-fade-enter-from[data-v-baa72b67],.route-feedback-fade-leave-to[data-v-baa72b67]{opacity:0}@keyframes route-progress-baa72b67{0%{transform:translate(-110%)}to{transform:translate(300%)}}@keyframes skeleton-pulse-baa72b67{0%{opacity:.48}to{opacity:.9}}@media (width<=900px){.route-skeleton[data-v-baa72b67]{inset:92px 0 0}}@media (prefers-reduced-motion:reduce){.route-feedback__bar[data-v-baa72b67],.route-skeleton__head[data-v-baa72b67],.route-skeleton__card span[data-v-baa72b67]{animation:none}}.captcha-row[data-v-699f30c6]{align-items:stretch;gap:10px;display:flex}.captcha-row .input[data-v-699f30c6]{flex:auto;min-width:0}.captcha-image[data-v-699f30c6]{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius);cursor:pointer;flex:none;justify-content:center;align-items:center;width:120px;padding:0;display:flex;overflow:hidden}.captcha-image[data-v-699f30c6]:hover:not(:disabled){border-color:var(--ink-3)}.captcha-image[data-v-699f30c6]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.captcha-image[data-v-699f30c6]:disabled{cursor:progress}.captcha-image img[data-v-699f30c6]{object-fit:cover;width:100%;height:100%;display:block}.captcha-image__placeholder[data-v-699f30c6]{font-size:var(--text-xs);color:var(--ink-3)}
