@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--fs-2xs:.694rem;--fs-xs:.833rem;--fs-sm:.9rem;--fs-md:1rem;--fs-lg:1.2rem;--fs-xl:1.44rem;--fs-2xl:1.728rem;--fs-3xl:2.074rem;--fs-4xl:2.488rem;--lh-tight:1.15;--lh-normal:1.55;--fw-medium:500;--fw-semi:600;--fw-bold:700;--fw-black:800;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-full:999px;--dur-fast:.12s;--dur-mid:.22s;--dur-slow:.4s;--dur-slower:.7s;--ease:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--z-sticky:100;--z-drawer:200;--z-modal:300;--z-toast:400;--container:1180px;--topbar-h:60px}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080b14;--bg-1:#0d1220;--surface:#161e30;--surface-2:#1c2539;--surface-3:#232e45;--border:#253048;--border-strong:#33415e;--text:#eef2f8;--text-2:#b6c2d6;--text-3:#8494ad;--accent:#3ec6f0;--accent-2:#8b6cf5;--accent-ink:#04202c;--accent-soft:#3ec6f024;--accent-ring:#3ec6f073;--up:#2ed673;--up-soft:#2ed67324;--up-ink:#04240f;--down:#ff5a5f;--down-soft:#ff5a5f24;--down-ink:#2c0406;--warn:#f5b942;--warn-soft:#f5b94221;--grad:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);--shadow-1:0 1px 2px #0006;--shadow-2:0 4px 16px -4px #00000080;--shadow-3:0 12px 32px -8px #0009;--shadow-4:0 24px 64px -12px #000000b3;--glow:0 0 0 1px #3ec6f033, 0 8px 32px -8px #3ec6f040;--glass:#0d1220b8;--aurora-1:#3ec6f024;--aurora-2:#8b6cf51f}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f9fc;--bg-1:#fff;--surface:#fff;--surface-2:#f4f7fb;--surface-3:#e7edf6;--border:#dbe3ee;--border-strong:#c2cede;--text:#0e1728;--text-2:#47566d;--text-3:#64748b;--accent:#0b7ba3;--accent-2:#6535e0;--accent-ink:#fff;--accent-soft:#0b7ba31a;--accent-ring:#0b7ba366;--up:#0d7a42;--up-soft:#0d7a421c;--up-ink:#fff;--down:#c0272f;--down-soft:#c0272f1a;--down-ink:#fff;--warn:#8a5504;--warn-soft:#8a55041a;--grad:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);--shadow-1:0 1px 2px #1018280f;--shadow-2:0 4px 14px -4px #1018281f;--shadow-3:0 12px 28px -8px #10182829;--shadow-4:0 24px 56px -12px #10182833;--glow:0 0 0 1px #0b7ba32e, 0 8px 28px -8px #0b7ba333;--glass:#ffffffc7;--aurora-1:#0b7ba314;--aurora-2:#6535e012}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter Variable,Inter,system-ui,-apple-system,Segoe UI,sans-serif}body{background:var(--bg);color:var(--text);font-size:var(--fs-md);line-height:var(--lh-normal);transition:background-color var(--dur-mid) var(--ease), color var(--dur-mid) var(--ease);margin:0}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(60rem 30rem at 12% -10%, var(--aurora-1), transparent 70%), radial-gradient(50rem 26rem at 92% 4%, var(--aurora-2), transparent 70%);position:fixed;inset:0}#root{min-height:100dvh}h1,h2,h3,h4{line-height:var(--lh-tight);letter-spacing:-.02em;margin:0}p{margin:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}.num,td.right,.stat-value,.big-price,.kv .v,input[type=number]{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}::selection{background:var(--accent-soft);color:var(--text)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.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}.skip-link{left:var(--sp-4);z-index:var(--z-toast);padding:var(--sp-2) var(--sp-4);background:var(--accent);color:var(--accent-ink);border-radius:var(--r-md);font-weight:var(--fw-semi);transition:top var(--dur-fast) var(--ease);position:absolute;top:-100px}.skip-link:focus{top:var(--sp-4)}.layout{flex-direction:column;min-height:100dvh;display:flex}main{width:min(var(--container), 94vw);padding:var(--sp-6) 0 var(--sp-8);flex:1;margin:0 auto}section{margin-bottom:var(--sp-6)}.row{align-items:center;gap:var(--sp-2);display:flex}.wrap{flex-wrap:wrap}.eyebrow{font-size:var(--fs-xs);font-weight:var(--fw-semi);text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--sp-4);margin-bottom:var(--sp-5);flex-wrap:wrap;display:flex}.page-head h1{font-size:var(--fs-3xl);font-weight:var(--fw-black)}.page-head .sub{margin-top:var(--sp-1);color:var(--text-2);font-size:var(--fs-sm)}.muted{color:var(--text-2)}.dim{color:var(--text-3)}.small{font-size:var(--fs-xs)}.center{text-align:center}.right{text-align:right}.up{color:var(--up)}.down{color:var(--down)}.grad-text{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.topbar{z-index:var(--z-sticky);align-items:center;gap:var(--sp-5);height:var(--topbar-h);padding:0 max(var(--sp-4), calc((100vw - var(--container)) / 2));background:var(--glass);-webkit-backdrop-filter:blur(14px)saturate(1.6);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0;overflow:hidden}.brand{align-items:center;gap:var(--sp-2);font-size:var(--fs-lg);font-weight:var(--fw-black);letter-spacing:-.03em;flex-shrink:0;text-decoration:none;display:inline-flex}.brand-mark{border-radius:var(--r-sm);background:var(--grad);color:#fff;width:30px;height:30px;box-shadow:var(--shadow-2);place-items:center;display:grid}.brand em{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}.topnav{gap:var(--sp-1);flex:1;min-width:0;display:flex}.nav-link{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);color:var(--text-2);font-size:var(--fs-sm);font-weight:var(--fw-medium);white-space:nowrap;transition:color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);text-decoration:none;position:relative}.nav-link:hover{color:var(--text);background:var(--surface-2)}.nav-link.active{color:var(--accent)}.nav-link.active:after{content:"";left:var(--sp-3);right:var(--sp-3);border-radius:var(--r-full);background:var(--grad);height:2px;animation:nav-slide var(--dur-mid) var(--ease-out) both;position:absolute;bottom:2px}.topbar-right{align-items:center;gap:var(--sp-2);flex-shrink:0;display:flex}.drawer-auth{display:none}.desktop-only{display:flex}.user-chip{align-items:baseline;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);border-radius:var(--r-full);background:var(--surface-2);border:1px solid var(--border);font-size:var(--fs-xs);display:inline-flex}.icon-btn{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);width:34px;height:34px;color:var(--text-2);cursor:pointer;transition:color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);place-items:center;display:grid}.icon-btn:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-2)}.icon-btn:active{transform:scale(.94)}.icon-btn.on{color:var(--accent);border-color:var(--accent-ring);background:var(--accent-soft)}.nav-toggle{display:none}.btn{--btn-bg:transparent;--btn-fg:var(--text);--btn-bd:var(--border-strong);justify-content:center;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border:1px solid var(--btn-bd);border-radius:var(--r-md);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--fs-sm);font-weight:var(--fw-semi);white-space:nowrap;cursor:pointer;transition:transform var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), opacity var(--dur-fast) var(--ease);text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){box-shadow:var(--shadow-2);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)scale(.99)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{--btn-bg:var(--grad);--btn-fg:var(--accent-ink);--btn-bd:transparent}.btn.primary:hover:not(:disabled){box-shadow:var(--glow)}.btn.buy{--btn-bg:var(--up);--btn-fg:var(--up-ink);--btn-bd:transparent}.btn.sell{--btn-bg:var(--down);--btn-fg:var(--down-ink);--btn-bd:transparent}.btn.ghost{--btn-bd:transparent;--btn-fg:var(--text-2)}.btn.ghost:hover:not(:disabled){--btn-fg:var(--text);background:var(--surface-2);box-shadow:none}.btn.full{width:100%}.btn.sm{padding:var(--sp-1) var(--sp-3);font-size:var(--fs-xs)}.btn.xs{padding:2px var(--sp-2);font-size:var(--fs-2xs);border-radius:var(--r-sm)}.btn.xs.buy{--btn-bg:var(--up-soft);--btn-fg:var(--up);--btn-bd:color-mix(in srgb, var(--up) 40%, transparent)}.btn.xs.buy:hover:not(:disabled){--btn-bg:var(--up);--btn-fg:var(--up-ink)}.btn.xs.sell{--btn-bg:var(--down-soft);--btn-fg:var(--down);--btn-bd:color-mix(in srgb, var(--down) 40%, transparent)}.btn.xs.sell:hover:not(:disabled){--btn-bg:var(--down);--btn-fg:var(--down-ink)}.trade-btns{gap:var(--sp-1);display:inline-flex}.field{gap:var(--sp-2);display:grid}.field label{font-size:var(--fs-xs);font-weight:var(--fw-semi);color:var(--text-2)}.field .hint{font-size:var(--fs-2xs);color:var(--text-3)}.input{width:100%;padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-1);font-size:var(--fs-md);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease)}.input:hover{border-color:var(--border-strong)}.input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input::placeholder{color:var(--text-3)}.search{align-items:center;display:flex;position:relative}.search svg{left:var(--sp-3);color:var(--text-3);pointer-events:none;position:absolute}.search .input{padding-left:calc(var(--sp-6) + 2px);width:clamp(180px,32vw,280px)}.segmented{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-1);flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.segmented button{padding:var(--sp-1) var(--sp-3);border-radius:var(--r-sm);color:var(--text-3);font-size:var(--fs-xs);font-weight:var(--fw-semi);cursor:pointer;transition:color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease);background:0 0;border:none}.segmented button:hover{color:var(--text)}.segmented button[aria-pressed=true]{background:var(--surface-3);color:var(--text);box-shadow:var(--shadow-1)}.segmented.accent button[aria-pressed=true]{background:var(--grad);color:var(--accent-ink)}.segmented button.buy[aria-pressed=true]{background:var(--up);color:var(--up-ink)}.segmented button.sell[aria-pressed=true]{background:var(--down);color:var(--down-ink)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--shadow-2)}.card.flush{padding:0;overflow:hidden}.card h2{font-size:var(--fs-lg);font-weight:var(--fw-bold)}.card-head{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.card.flush .card-head{padding:var(--sp-4) var(--sp-5) 0;margin-bottom:var(--sp-3)}.toolbar{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);padding:var(--sp-3) var(--sp-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1);flex-wrap:wrap;display:flex}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table.data{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-sm)}table.data th{padding:var(--sp-3);background:var(--surface-2);border-bottom:1px solid var(--border);text-align:left;font-size:var(--fs-2xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);white-space:nowrap}table.data th.right{text-align:right}table.data th button.th-sort{color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;align-items:center;gap:4px;padding:0;display:inline-flex}table.data th button.th-sort:hover{color:var(--text)}table.data td{padding:var(--sp-3);border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);vertical-align:middle}table.data tbody tr{transition:background-color var(--dur-fast) var(--ease)}table.data tbody tr:hover{background:var(--surface-2)}table.data tbody tr:last-child td{border-bottom:none}.sym{font-weight:var(--fw-bold);letter-spacing:-.01em;border-radius:var(--r-sm);text-decoration:none}.sym:hover{color:var(--accent)}.asset-cell{flex-direction:column;gap:1px;display:flex}.asset-name{color:var(--text-2);font-size:var(--fs-xs)}.stat-grid{gap:var(--sp-3);margin-bottom:var(--sp-5);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.stat{gap:var(--sp-1);padding:var(--sp-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1);transition:transform var(--dur-mid) var(--ease), box-shadow var(--dur-mid) var(--ease);display:grid}.stat:hover{box-shadow:var(--shadow-3);transform:translateY(-2px)}.stat-label{font-size:var(--fs-2xs);font-weight:var(--fw-semi);text-transform:uppercase;letter-spacing:.07em;color:var(--text-3)}.stat-value{font-size:var(--fs-xl);font-weight:var(--fw-black);letter-spacing:-.02em}.stat-note{font-size:var(--fs-2xs);color:var(--text-3)}.badge{padding:2px var(--sp-2);border-radius:var(--r-full);font-size:var(--fs-2xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border:1px solid #0000;align-items:center;gap:4px;display:inline-flex}.badge.up{background:var(--up-soft);color:var(--up);border-color:color-mix(in srgb, var(--up) 30%, transparent)}.badge.down{background:var(--down-soft);color:var(--down);border-color:color-mix(in srgb, var(--down) 30%, transparent)}.badge.warn{background:var(--warn-soft);color:var(--warn);border-color:color-mix(in srgb, var(--warn) 30%, transparent)}.badge.neutral{background:var(--surface-3);color:var(--text-2);border-color:var(--border)}.badge.accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-ring)}.banner{align-items:flex-start;gap:var(--sp-3);margin:var(--sp-3) 0;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);font-size:var(--fs-sm);border:1px solid #0000;display:flex}.banner svg{flex-shrink:0;margin-top:2px}.banner.error{background:var(--down-soft);border-color:color-mix(in srgb, var(--down) 35%, transparent);color:var(--down)}.banner.success{background:var(--up-soft);border-color:color-mix(in srgb, var(--up) 35%, transparent);color:var(--up)}.banner.warn{background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 35%, transparent);color:var(--warn)}.banner.info{background:var(--accent-soft);border-color:var(--accent-ring);color:var(--accent)}.meter{border-radius:var(--r-full);background:var(--surface-3);height:10px;position:relative;overflow:hidden}.meter-fill{border-radius:var(--r-full);background:var(--grad);height:100%;transition:width var(--dur-slow) var(--ease-out)}.meter-fill.up{background:linear-gradient(90deg, color-mix(in srgb, var(--up) 55%, transparent), var(--up))}.meter-fill.down{background:linear-gradient(90deg, color-mix(in srgb, var(--down) 55%, transparent), var(--down))}.meter-labels{margin-top:var(--sp-2);font-size:var(--fs-2xs);color:var(--text-3);justify-content:space-between;display:flex}.pred-hero{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);display:grid}.pred-dir{align-items:center;gap:var(--sp-2);font-size:var(--fs-2xl);font-weight:var(--fw-black);letter-spacing:-.03em;display:flex}.pred-dir.up{color:var(--up)}.pred-dir.down{color:var(--down)}.no-edge{gap:var(--sp-3);padding:var(--sp-5);border:1px dashed color-mix(in srgb, var(--warn) 45%, transparent);border-radius:var(--r-md);background:var(--warn-soft);display:grid}.no-edge h3{align-items:center;gap:var(--sp-2);font-size:var(--fs-md);color:var(--warn);display:flex}.kv{margin:0;padding:0;list-style:none;display:grid}.kv li{justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px dashed color-mix(in srgb, var(--border) 70%, transparent);font-size:var(--fs-sm);display:flex}.kv li:last-child{border-bottom:none}.kv .k{color:var(--text-2)}.kv .v{font-weight:var(--fw-semi)}.detail-grid{gap:var(--sp-4);grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);align-items:start;display:grid}.chart-shell{position:relative}.chart-container{width:100%}.chart-overlay{border-radius:var(--r-md);background:color-mix(in srgb, var(--surface) 55%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;display:grid;position:absolute;inset:0}.big-price{font-size:var(--fs-4xl);font-weight:var(--fw-black);letter-spacing:-.035em}.price-line{align-items:baseline;gap:var(--sp-3);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.head-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.sparkline{display:block;overflow:visible}.modal-backdrop{z-index:var(--z-modal);padding:var(--sp-4);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in var(--dur-fast) var(--ease) both;background:#03060c9e;place-items:center;display:grid;position:fixed;inset:0}.modal{width:min(460px,100%);max-height:min(88dvh,760px);padding:var(--sp-5);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-xl);box-shadow:var(--shadow-4);animation:modal-in var(--dur-mid) var(--ease-spring) both;overflow-y:auto}.modal-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.modal-head h2{font-size:var(--fs-lg)}.modal-form{gap:var(--sp-4);display:grid}.toast-region{right:var(--sp-4);bottom:var(--sp-4);z-index:var(--z-toast);gap:var(--sp-2);width:min(360px, calc(100vw - var(--sp-6)));display:grid;position:fixed}.toast{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--surface);border:1px solid var(--border-strong);border-left:3px solid var(--accent);border-radius:var(--r-md);box-shadow:var(--shadow-3);font-size:var(--fs-sm);animation:toast-in var(--dur-mid) var(--ease-out) both;display:flex}.toast.success{border-left-color:var(--up)}.toast.error{border-left-color:var(--down)}.toast-body{flex:1;min-width:0}.toast-title{font-weight:var(--fw-semi)}.skeleton{background:linear-gradient(90deg, var(--surface) 0%, var(--surface-3) 50%, var(--surface) 100%);border-radius:var(--r-sm);background-size:200% 100%;animation:1.4s linear infinite shimmer}.empty{justify-items:center;gap:var(--sp-3);padding:var(--sp-7) var(--sp-4);text-align:center;color:var(--text-2);display:grid}.empty-icon{border-radius:var(--r-full);background:var(--surface-2);border:1px solid var(--border);width:52px;height:52px;color:var(--text-3);place-items:center;display:grid}.auth-wrap{padding:var(--sp-7) 0;place-items:center;display:grid}.auth-card{width:min(420px,100%);padding:var(--sp-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-3)}.auth-card h1{font-size:var(--fs-xl);margin-bottom:var(--sp-2)}.auth-form{gap:var(--sp-4);margin-top:var(--sp-5);display:grid}footer{padding:var(--sp-5) var(--sp-4);border-top:1px solid var(--border);background:var(--bg-1);text-align:center}footer p{max-width:64ch;font-size:var(--fs-xs);color:var(--text-3);margin:0 auto}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translate(16px)scale(.98)}to{opacity:1;transform:none}}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes row-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes nav-slide{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes draw{0%{stroke-dashoffset:var(--len,1000)}to{stroke-dashoffset:0}}@keyframes flash-up{50%{background-color:var(--up-soft)}}@keyframes flash-down{50%{background-color:var(--down-soft)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.35}}.page{animation:page-in var(--dur-mid) var(--ease-out) both}tbody.stagger>tr{animation:row-in var(--dur-mid) var(--ease-out) both;animation-delay:calc(var(--i,0) * 18ms)}.flash-up{animation:flash-up var(--dur-slower) var(--ease)}.flash-down{animation:flash-down var(--dur-slower) var(--ease)}.draw-in{stroke-dasharray:var(--len,1000);animation:draw var(--dur-slower) var(--ease-out) both}.spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:var(--r-full);width:15px;height:15px;animation:.7s linear infinite spin}.live-dot{border-radius:var(--r-full);background:var(--up);width:7px;height:7px;animation:pulse-dot 2s var(--ease) infinite}.live-dot.stale{background:var(--warn)}html[data-motion=off] *,html[data-motion=off] :before,html[data-motion=off] :after{transition-property:opacity,color,background-color,border-color,box-shadow,fill,stroke,outline-color!important;transition-duration:var(--dur-fast)!important;animation-name:none!important}html[data-motion=off] .modal-backdrop,html[data-motion=off] .modal,html[data-motion=off] .toast,html[data-motion=off] .page,html[data-motion=off] tbody.stagger>tr{animation-name:fade-in!important;animation-duration:var(--dur-fast)!important;animation-delay:0s!important;transform:none!important}html[data-motion=off] .draw-in{stroke-dasharray:none}html[data-motion=off] .spinner{animation-name:spin!important}html[data-motion=off] .skeleton{animation-name:shimmer!important}html[data-motion=off] .live-dot{animation-name:pulse-dot!important}html[data-motion=off] .btn:hover:not(:disabled),html[data-motion=off] .stat:hover,html[data-motion=off] .icon-btn:active{transform:none!important}@media (max-width:1080px){.detail-grid{grid-template-columns:1fr}}@media (max-width:780px){:root{--topbar-h:54px}main{padding:var(--sp-4) 0 var(--sp-7)}.page-head h1,.big-price{font-size:var(--fs-2xl)}.topbar{gap:var(--sp-2)}.brand{font-size:var(--fs-md);min-width:0}.brand-mark{width:26px;height:26px}.topbar-right{gap:var(--sp-1);min-width:0}.nav-toggle{display:grid}.topnav{inset:var(--topbar-h) 0 auto 0;z-index:var(--z-drawer);gap:var(--sp-1);padding:var(--sp-3);background:var(--bg-1);border-bottom:1px solid var(--border);box-shadow:var(--shadow-3);flex-direction:column;display:none;position:fixed}.topnav.open{animation:page-in var(--dur-fast) var(--ease-out) both;display:flex}.nav-link{padding:var(--sp-3);font-size:var(--fs-md)}.nav-link.active:after,.user-chip,.desktop-only{display:none}.drawer-auth{gap:var(--sp-1);margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--border);display:grid}.search,.search .input{width:100%}.toolbar{padding:var(--sp-3)}table.data.stackable thead{display:none}table.data.stackable tbody tr{gap:var(--sp-1) var(--sp-3);margin-bottom:var(--sp-2);padding:var(--sp-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);grid-template-columns:1fr auto;display:grid}table.data.stackable tbody td{border:none;padding:0}table.data.stackable tbody td[data-label]:before{content:attr(data-label);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);display:block}table.data.stackable td.full{grid-column:1/-1}table.data.stackable td.right{text-align:left}}@media (max-width:420px){.stat-grid{grid-template-columns:1fr 1fr}.stat{padding:var(--sp-3)}.stat-value{font-size:var(--fs-lg)}}@media print{.topbar,.toolbar,footer,.trade-btns{display:none}}
