@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:500;src:url(./bricolage-grotesque-latin-500-normal-DEDBoLFO.woff2)format("woff2"),url(./bricolage-grotesque-latin-500-normal-CV-uA8Lw.woff)format("woff")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(./bricolage-grotesque-latin-600-normal-nxTgbNFE.woff2)format("woff2"),url(./bricolage-grotesque-latin-600-normal-Bw0J83-2.woff)format("woff")}:root{--bg:#f6f4ef;--surface:#fffdf8;--sunken:#efebe3;--elev:#fff;--fg:#141311;--muted:#625d55;--faint:#6a655c;--line:#e4dfd5;--accent:#141311;--accent-ink:#fffdf8;--accent-soft:#e9e5dc;--red:#c4302d;--green:#0f7a45;--red-soft:#c4302d24;--green-soft:#0f7a4524;--red-area:#c4302d1f;--green-area:#0f7a451f;--warn:#8a5300;--warn-soft:#f6ead3;--shadow:0 1px 2px #1413110d, 0 8px 28px #14131112;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", system-ui, sans-serif;--font-num:"Bricolage Grotesque", var(--font);--radius:18px;--spring:linear(0, .006, .025 2.8%, .101 6.1%, .539 18.9%, .721 25.3%, .849 31.5%, .937 38.1%, .968 41.8%, .991 45.7%, 1.006 50.1%, 1.015 55%, 1.017 63.9%, 1.001 85.9%, 1);--ease:cubic-bezier(.2, .9, .25, 1);--safe-b:env(safe-area-inset-bottom,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0c0b0a;--surface:#181715;--sunken:#211f1c;--elev:#23211e;--fg:#f3f0e8;--muted:#aaa499;--faint:#8f897f;--line:#2b2925;--accent:#f3f0e8;--accent-ink:#0c0b0a;--accent-soft:#2a2824;--red:#ff6f61;--green:#3dc884;--red-soft:#ff6f612e;--green-soft:#3dc8842e;--red-area:#ff6f6121;--green-area:#3dc88421;--warn:#f0b45c;--warn-soft:#2e2416;--shadow:0 1px 2px #0006, 0 8px 28px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0c0b0a;--surface:#181715;--sunken:#211f1c;--elev:#23211e;--fg:#f3f0e8;--muted:#aaa499;--faint:#8f897f;--line:#2b2925;--accent:#f3f0e8;--accent-ink:#0c0b0a;--accent-soft:#2a2824;--red:#ff6f61;--green:#3dc884;--red-soft:#ff6f612e;--green-soft:#3dc8842e;--red-area:#ff6f6121;--green-area:#3dc88421;--warn:#f0b45c;--warn-soft:#2e2416;--shadow:0 1px 2px #0006, 0 8px 28px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--up:var(--red);--down:var(--green);--up-soft:var(--red-soft);--down-soft:var(--green-soft);--up-area:var(--red-area);--down-area:var(--green-area)}:root.green-up{--up:var(--green);--down:var(--red);--up-soft:var(--green-soft);--down-soft:var(--red-soft);--up-area:var(--green-area);--down-area:var(--red-area)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);color:var(--fg);font:16px/1.5 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0}button{font:inherit;color:inherit;cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.45}input{font:inherit;color:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--fg);outline-offset:2px;border-radius:8px}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.up{color:var(--up)}.down{color:var(--down)}.muted{color:var(--muted);margin:0;font-size:14px}.small{font-size:13px}.app{min-height:100dvh}.top{z-index:20;padding:calc(env(safe-area-inset-top,0px) + 10px) 16px 10px;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.top:before{content:"";z-index:-1;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(18px);border-bottom:.5px solid color-mix(in srgb, var(--line) 70%, transparent);position:absolute;inset:0}.brand{min-height:44px;color:var(--fg);align-items:center;gap:10px;display:flex}.wordmark{width:auto;display:block}.cloud-dot{background:0 0;border-radius:50%;width:8px;height:8px;transition:background .3s}.cloud-dot.synced{background:var(--faint)}.cloud-dot.saving,.cloud-dot.connecting{background:var(--faint);animation:1s ease-in-out infinite pulse}.cloud-dot.error{background:var(--warn)}.main{padding:4px 16px calc(96px + var(--safe-b));max-width:680px;margin:0 auto}.page{flex-direction:column;gap:14px;display:flex}.page-title{letter-spacing:-.01em;margin:8px 0 2px;font-size:30px;font-weight:700;line-height:1.15}.section-title{color:var(--muted);letter-spacing:.02em;margin:10px 4px 6px;font-size:13px;font-weight:600}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card.flush{padding:0;overflow:hidden}.card.inset{box-shadow:none;background:var(--sunken)}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.card-head.pad{margin-bottom:4px;padding:14px 16px 0}.card-head h2,.card-head h3{margin:0;font-size:17px;font-weight:650}.link{min-height:44px;color:var(--muted);align-items:center;gap:2px;font-size:14px;display:inline-flex}.link.danger{color:var(--red)}.hero{padding:6px 4px 4px}.hero-label{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:14px;display:flex}.live{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:6px;font-size:12px;display:inline-flex}.live i{background:var(--faint);border-radius:50%;width:7px;height:7px}.live.on i{background:var(--up);animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.25}}.hero-total{letter-spacing:-.03em;margin:4px 0 6px;font-size:clamp(40px,12vw,56px);font-weight:600;line-height:1.08;display:block}.hero-day{flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;display:flex}.hero-day-k,.hero-fx{color:var(--muted);font-size:13px}.chg{font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:3px;font-weight:500;display:inline-flex}.chg .tri{font-size:.62em}.chg.up{color:var(--up)}.chg.down{color:var(--down)}.chg.flat{color:var(--muted)}.stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px;display:grid}.stats>*{background:var(--surface);border-radius:14px;flex-direction:column;gap:2px;min-width:0;padding:10px 10px 9px;display:flex}.stats.three{grid-template-columns:repeat(3,1fr);margin:0;padding:8px}.stats.three>*{background:0 0}.stats span{color:var(--muted);white-space:nowrap;font-size:12px}.stats b{white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600;overflow:hidden}.stats b small{font-size:12px;font-weight:500}@media (width<=420px){.stats:not(.three){grid-template-columns:repeat(2,1fr)}}.seg{background:var(--sunken);isolation:isolate;border-radius:12px;max-width:100%;padding:3px;display:inline-flex;position:relative}.seg button{z-index:1;min-height:38px;color:var(--muted);white-space:nowrap;text-align:center;border-radius:9px;flex:auto;padding:0 14px;font-size:14px;transition:color .25s;position:relative}.seg button.on{color:var(--fg);font-weight:600}.seg-pill{z-index:0;background:var(--elev);transition:transform .5s var(--spring), width .5s var(--spring);border-radius:9px;position:absolute;top:3px;bottom:3px;left:0;box-shadow:0 1px 3px #0000001f}.seg.small button{min-height:32px;padding:0 10px;font-size:13px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.chart{-webkit-user-select:none;user-select:none;position:relative}.chart svg{width:100%;display:block;overflow:visible}.area-up{fill:var(--up-area)}.area-down{fill:var(--down-area)}.line-up,.line-down{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.line-up{stroke:var(--up)}.line-down{stroke:var(--down)}.base-line{fill:none;stroke:var(--faint);stroke-width:1px;stroke-dasharray:3 4}.cross{stroke:var(--faint);stroke-width:1px}.chart .dot{border:2px solid var(--surface);pointer-events:none;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;position:absolute}.card.inset .chart .dot{border-color:var(--sunken)}.chart .dot.up{background:var(--up)}.chart .dot.down{background:var(--down)}.chart .dot.end:after{content:"";background:inherit;opacity:.25;border-radius:50%;animation:1.8s ease-in-out infinite pulse;position:absolute;inset:-6px}.tip{background:var(--elev);box-shadow:var(--shadow);pointer-events:none;white-space:nowrap;border-radius:10px;flex-direction:column;align-items:center;padding:5px 9px;font-size:12px;display:flex;position:absolute;top:-6px;transform:translate(-50%,-100%)}.tip b{font-family:var(--font-num);font-size:14px}.tip span{color:var(--muted)}.chart-axis{color:var(--muted);justify-content:space-between;align-items:center;margin-top:4px;font-size:12px;display:flex}.legend{align-items:center;gap:6px;display:inline-flex}.legend .dash{border-top:1.5px dashed var(--faint);width:16px}.chart-empty{color:var(--muted);background:var(--sunken);border-radius:12px;place-items:center;font-size:14px;display:grid}.spark{display:block;overflow:visible}.spark path{fill:none;stroke-width:1.6px;stroke-linejoin:round}.spark.up path{stroke:var(--up)}.spark.down path{stroke:var(--down)}.spark-base{stroke:var(--line);stroke-width:1px;stroke-dasharray:2 3}.spark-empty{display:block}.ix-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.ix{background:var(--surface);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:1px;min-width:0;padding:10px 12px;display:flex}.ix span{color:var(--muted);font-size:12px}.ix b{font-size:15px;font-weight:600}.ix .chg{font-size:13px}.hlist{flex-direction:column;display:flex}.hrow{border-top:.5px solid var(--line);min-height:64px;animation:rowIn .5s var(--ease) both;grid-template-columns:minmax(0,1fr) 64px 92px 86px;align-items:center;gap:10px;padding:10px 16px;transition:background .2s;display:grid}.hlist .hrow:first-child{border-top:0}.hrow:active{background:var(--sunken)}@media (hover:hover){.hrow:hover{background:color-mix(in srgb, var(--sunken) 60%, transparent)}}@keyframes rowIn{0%{opacity:0;transform:translateY(8px)}}.hrow-name{flex-direction:column;min-width:0;display:flex}.hrow-name b,.trow-name b{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.hrow-name small,.trow-name small,.hrow-pnl small,.trow-amt small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.hrow-price,.hrow-pnl{flex-direction:column;align-items:flex-end;display:flex}.hrow-price .flash{font-size:15px;font-weight:600}.hrow-price .chg{font-size:12px}.hrow-pnl b{font-size:14px;font-weight:600}.flash{border-radius:6px;margin:0 -3px;padding:0 3px}@media (width<=400px){.hrow{grid-template-columns:minmax(0,1fr) 52px 84px 76px;gap:8px;padding:10px 12px}}.sum-line{color:var(--muted);justify-content:space-between;gap:12px;padding:0 4px;font-size:14px;display:flex}.sum-line b{color:var(--fg);font-weight:600}.sum-line b.up{color:var(--up)}.sum-line b.down{color:var(--down)}.trow{border-top:.5px solid var(--line);width:100%;min-height:62px;animation:rowIn .5s var(--ease) both;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 16px;display:grid}.card .trow:first-child{border-top:0}.trow:active{background:var(--sunken)}.side{border-radius:9px;place-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:inline-grid}.side.buy{background:var(--up-soft);color:var(--up)}.side.sell{background:var(--down-soft);color:var(--down)}.trow-name{flex-direction:column;min-width:0;display:flex}.trow-amt{flex-direction:column;align-items:flex-end;display:flex}.trow-amt b{font-size:15px;font-weight:600}.trow-amt small.up{color:var(--up)}.trow-amt small.down{color:var(--down)}.btn{background:var(--sunken);min-height:46px;color:var(--fg);transition:transform .35s var(--spring), background .2s;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:15px;font-weight:600;display:inline-flex}.btn:active:not(:disabled){transform:scale(.96)}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.danger{color:var(--red)}.btn.block{width:100%}.btn.google{background:var(--elev);border:1px solid var(--line)}.icon-btn{width:44px;height:44px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.icon-btn:active{background:var(--sunken)}.fab{right:18px;bottom:calc(84px + var(--safe-b));z-index:25;background:var(--accent);width:56px;height:56px;color:var(--accent-ink);transition:transform .4s var(--spring);animation:fabIn .6s var(--spring) both;border-radius:50%;place-items:center;display:grid;position:fixed;box-shadow:0 6px 20px #00000038}.fab:active{transform:scale(.9)}@keyframes fabIn{0%{opacity:0;transform:scale(.4)}}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.row-actions .btn{flex:1 1 0}.dock{z-index:30;padding:6px 8px calc(6px + var(--safe-b));background:color-mix(in srgb, var(--bg) 84%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(18px);border-top:.5px solid color-mix(in srgb, var(--line) 70%, transparent);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.dock button{min-height:50px;color:var(--faint);transition:color .2s, transform .35s var(--spring);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:600;display:flex}.dock button:active{transform:scale(.9)}.dock button.on{color:var(--fg)}@media (width>=960px){.dock{border-top:0;border-right:.5px solid var(--line);grid-template-columns:1fr;grid-auto-rows:72px;align-content:center;width:92px;padding:0;top:0;right:auto}.app{padding-left:92px}.main{padding-bottom:60px}.fab{bottom:32px;right:32px}}.sheet-root{z-index:50;position:fixed;inset:0}.sheet-back{opacity:0;background:#00000052;position:absolute;inset:0}.sheet{background:var(--surface);will-change:transform;border-radius:22px 22px 0 0;flex-direction:column;max-width:680px;max-height:calc(100dvh - 48px);margin:0 auto;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -8px 40px #0000002e}@media (width>=720px){.sheet{border-radius:22px;max-height:calc(100dvh - 64px);bottom:16px}}.sheet-head{touch-action:none;cursor:grab;align-items:center;gap:8px;padding:14px 8px 6px 18px;display:flex;position:relative}.grab{background:var(--line);border-radius:3px;width:38px;height:5px;margin-left:-19px;position:absolute;top:6px;left:50%}.sheet-title{flex:1;min-width:0;font-size:18px;font-weight:650}.sheet-body{overscroll-behavior:contain;padding:6px 18px calc(24px + var(--safe-b));overflow-y:auto}.st-title{flex-direction:column;line-height:1.25;display:flex}.st-title small{color:var(--muted);font-size:12px;font-weight:500}.st-price{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.st-big{letter-spacing:-.02em;font-size:38px;font-weight:600}.st-ccy{color:var(--muted);font-size:13px}.stack{flex-direction:column;gap:14px;display:flex}.card.inset .seg{background:var(--surface);margin-top:10px}.card.inset .seg-pill{background:var(--sunken)}.note-line{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:8px;padding:0 2px;font-size:14px;display:flex}.note-line b{color:var(--fg);font-size:16px}.note-line small{font-size:13px}.sim input,.field input{border:1px solid var(--line);background:var(--elev);border-radius:12px;outline:none;width:100%;min-height:46px;padding:0 12px;font-size:17px;transition:border-color .2s}.sim input:focus,.field input:focus{border-color:var(--fg)}.kv{grid-template-columns:auto auto;justify-content:space-between;gap:8px 16px;margin:10px 0 0;font-size:15px;display:grid}.kv dt{color:var(--muted)}.kv dd{text-align:right;margin:0}.kv dd.strong{font-weight:700}.kv dd.up{color:var(--up)}.kv dd.down{color:var(--down)}.form{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.field>span{color:var(--muted);font-size:13px;font-weight:600}.hint{color:var(--muted);font-size:12px}.field-row{gap:10px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips button{background:var(--sunken);border-radius:10px;min-height:34px;padding:0 12px;font-size:13px;font-weight:600}.check{align-items:center;gap:10px;min-height:44px;font-size:15px;display:flex}.check input{width:22px;height:22px;accent-color:var(--accent)}.field.net input{border-style:dashed}.bill{background:var(--sunken);animation:rowIn .45s var(--ease) both;border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px;font-size:14px;display:flex}.bill>div{justify-content:space-between;gap:12px;display:flex}.bill span{color:var(--muted)}.bill .total{border-top:.5px solid var(--line);margin-top:2px;padding-top:8px;font-size:15px}.bill .total span{color:var(--fg);font-weight:600}.bill p{margin:4px 0 0}.learned{font-weight:600}.warn{color:var(--warn);background:var(--warn-soft);border-radius:10px;margin:0;padding:8px 10px;font-size:14px}.ask p{margin:6px 0 8px}.confirm{background:var(--sunken);animation:rowIn .4s var(--ease) both;border-radius:14px;padding:12px}.confirm p{margin:0 0 10px;font-size:14px}.news{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.news li{border-top:.5px solid var(--line);padding:10px 0}.news li:first-child{border-top:0;padding-top:2px}.news a{font-size:15px;line-height:1.45;text-decoration:none;display:block}.news small{color:var(--muted);align-items:center;gap:8px;margin-top:4px;font-size:12px;display:flex}.tag{background:var(--sunken);min-height:24px;color:var(--fg);border-radius:7px;align-items:center;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.chip-list{flex-wrap:wrap;gap:6px;display:flex}.ai{border-bottom:.5px solid var(--line);flex-direction:column;gap:8px;margin-bottom:12px;padding-bottom:12px;display:flex}.ai p{margin:0;font-size:15px;line-height:1.6}.skeleton{background:linear-gradient(90deg, var(--sunken), color-mix(in srgb, var(--sunken) 50%, var(--surface)), var(--sunken));background-size:200% 100%;border-radius:12px;height:64px;animation:1.4s linear infinite shine}@keyframes shine{to{background-position:-200% 0}}.mini-trades{margin:0;padding:0;list-style:none}.mini-trades li{border-top:.5px solid var(--line);grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:8px 0;font-size:14px;display:grid}.mini-trades .side{width:26px;height:26px;font-size:12px}.choice{background:var(--sunken);transition:transform .35s var(--spring);border-radius:16px;align-items:flex-start;gap:14px;padding:14px;display:flex}.choice:active{transform:scale(.98)}.choice .ico{flex:none;margin-top:2px}.choice span{flex-direction:column;gap:2px;display:flex}.choice small{color:var(--muted);font-size:13px;line-height:1.45}.account h2{margin:0 0 6px;font-size:18px}.account .muted{margin-bottom:14px}.account .muted.small{margin:10px 0 0}.who{align-items:center;gap:12px;margin-bottom:8px;display:flex}.who img,.avatar{border-radius:50%;width:44px;height:44px}.avatar{background:var(--accent);color:var(--accent-ink);place-items:center;font-weight:700;display:grid}.who span{flex-direction:column;min-width:0;display:flex}.who small{color:var(--muted);font-size:13px}.sync{color:var(--muted);align-items:center;gap:6px;margin:0 0 12px;font-size:13px;display:flex}.sync.error{color:var(--warn)}.list button{border-top:.5px solid var(--line);grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:14px;width:100%;min-height:60px;padding:10px 16px;display:grid}.list button:first-child{border-top:0}.list button:active{background:var(--sunken)}.list span{flex-direction:column;min-width:0;display:flex}.list small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.list .ico:last-child{color:var(--faint)}.set-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.fee-sum{grid-template-columns:1fr 1fr;gap:12px;display:grid}.fee-sum>div{flex-direction:column;display:flex}.fee-sum span{color:var(--muted);font-size:13px}.fee-sum b{font-size:22px;font-family:var(--font-num)}.fee-sum small{color:var(--muted);font-size:12px}.disclaimer{color:var(--muted);margin:8px 4px 0;font-size:12px;line-height:1.6}.danger-zone{margin-top:4px}.version{text-align:center;color:var(--faint);font-size:12px}.empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:48px 16px 24px;display:flex}.empty-title{font-size:22px;font-weight:700}.empty-text{color:var(--muted);max-width:340px;margin:0 0 12px;line-height:1.6}.empty-actions{gap:8px;display:flex}.toast{left:50%;bottom:calc(92px + var(--safe-b));z-index:60;background:var(--accent);max-width:calc(100% - 32px);color:var(--accent-ink);opacity:0;pointer-events:none;transition:transform .5s var(--spring), opacity .25s;border-radius:14px;padding:11px 16px;font-size:14px;font-weight:600;position:fixed;transform:translate(-50%,24px)scale(.96);box-shadow:0 8px 24px #0003}.toast.show{opacity:1;transform:translate(-50%)scale(1)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
