:root{--bg:#0a0b0e;--bg2:#101218;--panel:#14161d;--panel-2:#191c25;--line:#232732;--line-2:#2e3340;--text:#e9eaee;--muted:#8a90a0;--accent:#d8b46b;--accent-2:#f2dda9;--accent-deep:#a8823f;--up:#3ecf8e;--down:#f2637f;--warn:#f2994a;--side:#0c0e13;--glow:#d8b46b33;--surface-soft:#d8b46b12;color:var(--text);background:var(--bg);font-family:Prompt,Kanit,system-ui,sans-serif;font-size:15px;line-height:1.45}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bg);overflow:hidden}*{scrollbar-width:thin;scrollbar-color:#3b3f4d var(--bg2)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg2);border-radius:8px}::-webkit-scrollbar-thumb{border:2px solid var(--bg2);background:linear-gradient(#3e4250,#2a2e39);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg, var(--accent), #a8823f)}::-webkit-scrollbar-corner{background:var(--bg2)}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}.mono{font-family:IBM Plex Mono,ui-monospace,monospace}.app-root{flex-direction:column;height:100%;display:flex;overflow:hidden}.app-top{background:var(--bg2);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:.75rem;height:58px;padding:0 .85rem;display:flex}.top-left{flex-shrink:0;align-items:center;gap:.65rem;display:flex}.top-brand{align-items:center;gap:.45rem;display:flex}.brand-name{color:#f1f4f9;letter-spacing:.02em;font-size:1.05rem;font-weight:700}.brand-name span{color:var(--accent-2)}.top-search{width:min(300px,30vw);position:relative}.top-search input{background:var(--panel-2);border:1px solid var(--line-2);border-radius:9px;width:100%;padding:.45rem .7rem .45rem 1.95rem;font-size:.84rem}.top-search input::placeholder{color:#64748b}.top-search input:focus{border-color:var(--accent);outline:none}.search-ico{color:#64748b;pointer-events:none;display:flex;position:absolute;top:50%;left:.55rem;transform:translateY(-50%)}.search-drop{z-index:50;border:1px solid var(--line-2);background:#12151d;border-radius:10px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 12px 30px #00000073}.search-hit{cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #1f2337d9;grid-template-columns:auto 1fr auto;align-items:center;gap:.4rem;width:100%;padding:.45rem .6rem;font-size:.78rem;display:grid}.search-hit:hover{background:#d8b46b1a}.search-hit .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.top-tape{scrollbar-width:none;flex:1;align-items:center;gap:.35rem;min-width:0;display:flex;overflow-x:auto}.top-tape::-webkit-scrollbar{display:none}.tape-btn{color:var(--accent-2);white-space:nowrap;background:#1f2533;border:1px solid #3a4258;border-radius:7px;flex-shrink:0;align-items:center;gap:.3rem;padding:.22rem .55rem;font-size:.7rem;font-weight:600;display:inline-flex}.tape-chip{background:var(--panel-2);cursor:pointer;color:#cbd5e1;border:1px solid #303647;border-radius:7px;flex-shrink:0;align-items:center;gap:.35rem;padding:.18rem .45rem;font-size:.7rem;display:flex}.tape-chip strong{color:#fff;font-weight:600}.tape-chip.on{border-color:#d8b46b8c}.top-right{flex-shrink:0;margin-left:auto;position:relative}.top-meta{color:var(--muted);white-space:nowrap;font-size:.68rem}.user-menu{position:relative}.user-avatar{border:1px solid var(--line-2);width:34px;height:34px;color:var(--accent-2);cursor:pointer;background:linear-gradient(145deg,#2c2519,#17150f);border-radius:50%;place-items:center;font-size:.95rem;font-weight:700;display:grid}.user-avatar:hover{border-color:var(--accent)}.user-drop{background:var(--panel);border:1px solid var(--line-2);z-index:60;border-radius:10px;min-width:160px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 12px 28px #00000073}.user-drop-name{color:var(--muted);border-bottom:1px solid var(--line);padding:.55rem .75rem;font-size:.78rem}.user-drop-item{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:.55rem .75rem;font-size:.82rem;display:flex}.user-drop-item:hover{background:#d8b46b1f}.auth-boot{place-items:center;height:100%;display:grid}.login-page{background:radial-gradient(900px 500px at 20% 0%, #d8b46b1f, transparent 60%), var(--bg);place-items:center;min-height:100%;padding:1.5rem;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:.75rem;width:min(380px,100%);padding:1.4rem 1.35rem 1.5rem;display:flex}.login-brand{letter-spacing:.02em;margin-bottom:.35rem;font-size:1.6rem;font-weight:800}.login-brand span{color:var(--accent-2)}.login-card label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.75rem;display:flex}.login-card input,.modal-body input,.port-form-card .field input{background:var(--panel-2);border:1px solid var(--line-2);color:var(--text);border-radius:9px;padding:.55rem .7rem}.login-card input:focus,.modal-body input:focus{border-color:var(--accent);outline:none}.login-btn{background:var(--accent);color:#0b0d12;cursor:pointer;border:0;border-radius:9px;margin-top:.35rem;padding:.6rem .9rem;font-weight:700}.login-btn:disabled{opacity:.6;cursor:default}.login-err{color:var(--down);margin:0;font-size:.82rem}.users-ok{color:var(--up);margin:0 0 .75rem;font-size:.82rem}.users-page{max-width:720px;margin:0 auto;padding:.25rem 0 1.5rem}.users-page h1,.portfolio-page h1{margin:0 0 .25rem;font-size:1.25rem}.users-head{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem;display:flex}.users-head .muted{margin:0;font-size:.82rem}.users-add-btn{background:var(--accent);color:#0b0d12;cursor:pointer;border:0;border-radius:10px;flex-shrink:0;padding:.55rem .95rem;font-weight:700}.users-add-btn:hover{filter:brightness(1.06)}.users-list-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.user-row{border-bottom:1px solid var(--line);align-items:center;gap:.85rem;padding:.85rem 1rem;display:flex}.user-row:last-child{border-bottom:0}.user-row:hover{background:#d8b46b0a}.user-row-avatar{border:1px solid var(--line-2);color:#e8eaef;background:linear-gradient(145deg,#2a3a55,#1a2233);border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:.95rem;font-weight:700;display:grid}.user-row-avatar.master{border-color:#d8b46b8c;box-shadow:0 0 0 3px #d8b46b1f}.user-row-meta{flex-wrap:wrap;flex:1;align-items:center;gap:.55rem;min-width:0;display:flex}.user-row-meta strong{font-size:.95rem}.user-role-pill{letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--muted);border-radius:999px;padding:.18rem .5rem;font-size:.68rem;font-weight:600}.user-role-pill.master{color:var(--accent-2);background:#d8b46b1a;border-color:#d8b46b66}.user-row-actions{flex-shrink:0;gap:.35rem;display:flex}.btn.ghost.danger{color:var(--down)}.btn.ghost.danger:hover{color:#fda4af;border-color:#fb718573}.users-empty{text-align:center;margin:0;padding:1.5rem 1rem}.modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#06080eb8;place-items:center;padding:1rem;animation:.16s ease-out modal-fade;display:grid;position:fixed;inset:0}.modal-sheet{background:linear-gradient(180deg, #1a2030 0%, var(--panel) 40%);border:1px solid var(--line-2);border-radius:16px;width:min(420px,100%);animation:.2s ease-out modal-rise;box-shadow:0 24px 64px #0000008c,0 0 0 1px #d8b46b0f}.modal-head{justify-content:space-between;align-items:center;padding:1rem 1.1rem .65rem;display:flex}.modal-head h2{margin:0;font-size:1.05rem;font-weight:700}.modal-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;line-height:1;display:grid}.modal-close:hover{color:var(--text);background:#ffffff0f}.modal-body{flex-direction:column;gap:.75rem;padding:.35rem 1.1rem 1.15rem;display:flex}.modal-body label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.75rem;display:flex}.role-seg{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.role-seg button{background:var(--panel-2);border:1px solid var(--line-2);cursor:pointer;color:var(--muted);border-radius:9px;padding:.5rem .6rem;font-size:.82rem}.role-seg button.on{color:var(--text);background:#d8b46b24;border-color:#d8b46b8c}.modal-foot{justify-content:flex-end;gap:.5rem;margin-top:.35rem;display:flex}.modal-foot .login-btn{margin-top:0}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-rise{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.port-form-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;margin-top:1rem;padding:1rem 1.1rem}.port-form-title{margin:0 0 .85rem;font-size:1rem}.port-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;display:grid}.port-form-card .field{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.78rem;display:flex}.port-form-card .field span{color:var(--text);font-weight:600}.port-form-card .field input{background:var(--panel-2);border:1px solid var(--line-2);color:var(--text);border-radius:9px;padding:.55rem .7rem;font-size:.95rem}.port-form-card .field input:focus{border-color:var(--accent);outline:none}.field-hint{color:var(--muted);opacity:.9;font-size:.68rem;font-style:normal}.port-form-actions{margin-top:.9rem}.port-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:.85rem 0 0;display:grid}.port-summary .metric{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:.7rem .85rem}.port-summary .k{color:var(--muted);font-size:.72rem}.port-summary .v{margin-top:.2rem;font-size:1.05rem;font-weight:700}.users-table{border-collapse:collapse;width:100%;font-size:.82rem}.users-table th,.users-table td{text-align:left;border-bottom:1px solid var(--line);padding:.45rem .4rem}.app-body{flex:1;min-height:0;display:flex;overflow:hidden}.app-nav{background:var(--side);border-bottom:1px solid var(--line);scrollbar-width:none;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;padding:.4rem .85rem;display:flex;overflow-x:auto}.app-nav::-webkit-scrollbar{display:none}.nav-group{flex:1 1 0;align-items:center;gap:.15rem;min-width:max-content;display:flex}.app-nav>.nav-group:first-of-type{justify-content:flex-end}.app-nav>.nav-group:last-of-type{justify-content:flex-start}.nav-item{color:var(--muted);white-space:nowrap;border:1px solid #0000;border-radius:8px;align-items:center;gap:.35rem;padding:.34rem .7rem;font-size:.76rem;font-weight:500;transition:color .12s,background .12s;display:inline-flex}.nav-item:hover{color:var(--text);background:#ffffff0a}.nav-item.router-link-active{color:var(--accent-2);background:var(--surface-soft);border-color:#d8b46b47}.nav-item .ico{opacity:.85;transition:transform .18s,opacity .18s}.nav-item:hover .ico{opacity:1;transform:translateY(-1px)}.nav-item.router-link-active .ico{opacity:1}.nav-primary{color:#14110a;background:linear-gradient(180deg, var(--accent-2), var(--accent));border-color:var(--accent);margin:0 .6rem;padding:.4rem 1.15rem;font-size:.82rem;font-weight:700;box-shadow:0 2px 12px #d8b46b38}.nav-primary:hover{color:#14110a;background:linear-gradient(180deg, #f7e6bf, var(--accent-2))}.nav-primary.router-link-active{color:#14110a;background:linear-gradient(180deg, var(--accent-2), var(--accent));border-color:var(--accent-2)}.nav-primary .ico{opacity:1}.app-main{flex:1;min-width:0;padding:.75rem .9rem 1.25rem;overflow:auto}.app-main.stock,.app-main.scanner{flex-direction:column;padding:0;display:flex;overflow:hidden}.layout,.sidebar,.shell,.topnav{display:contents}.side-brand,.side-link,.brand,.nav,.meta{display:none}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:1rem 1.05rem 1.1rem}.rocket-scan{background:#0b0d12;border:0;border-radius:0;flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.scan-ctrl{background:#0f1219;border-bottom:1px solid #222836;flex-direction:column;flex-shrink:0;gap:.7rem;padding:.85rem 1rem .75rem;display:flex}.scan-ctrl-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.scan-title-row{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.scan-emoji{font-size:1rem;line-height:1}.scan-title{color:#fff;margin:0;font-size:1.1rem;font-weight:700}.scan-search{z-index:5;width:min(280px,42vw);max-width:100%;position:relative}.scan-search .search-ico{color:#64748b;pointer-events:none;font-size:.85rem;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.scan-search input{color:#e2e8f0;background:#191e28;border:1px solid #303647;border-radius:8px;width:100%;padding:.35rem .65rem .35rem 1.75rem;font-size:.75rem}.scan-search input:focus{border-color:#5b8fd4;outline:none}.scan-search input::placeholder{color:#64748b}.scan-search .search-drop{z-index:40;position:absolute;top:calc(100% + 4px);left:0;right:0}.mode-tabs{background:#191e28;border:1px solid #303647;border-radius:8px;padding:.15rem;display:inline-flex}.mode-tabs button{color:#94a3b8;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.28rem .7rem;font-size:.7rem;font-weight:500}.mode-tabs button.on{background:linear-gradient(180deg, var(--accent-2), var(--accent));color:#14110a;box-shadow:0 1px 4px #d8b46b4d}.group-bar{align-items:center;gap:.4rem;min-width:0;display:flex}.group-bar-label{color:#94a3b8;flex-shrink:0;font-size:.7rem}.group-nav{color:#94a3b8;cursor:pointer;background:#191e28;border:1px solid #303647;border-radius:6px;flex-shrink:0;place-items:center;width:1.5rem;height:1.5rem;font-size:.85rem;line-height:1;display:grid}.group-nav:hover{color:#fff}.group-rail{cursor:grab;scrollbar-width:none;-ms-overflow-style:none;flex:1;align-items:center;gap:.35rem;min-width:0;padding:.15rem 0;display:flex;overflow-x:auto}.group-rail.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.group-rail::-webkit-scrollbar{display:none}.group-pill{color:#cbd5e1;cursor:pointer;white-space:nowrap;background:#191e28;border:1px solid #303647;border-radius:999px;flex-shrink:0;align-items:center;gap:.35rem;padding:.28rem .65rem;font-size:.72rem;font-weight:500;display:inline-flex}.group-pill:hover{background:#262d3d}.group-pill em{color:#94a3b8;background:#303647;border-radius:999px;padding:.05rem .35rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.62rem;font-style:normal}.group-pill.on{background:linear-gradient(180deg, var(--accent-2), var(--accent));border-color:var(--accent);color:#14110a}.group-pill.on em{color:#14110a;background:#14110a24}.filter-bar{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;font-size:.7rem;display:flex}.filter-cluster{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.filter-cluster.split{border-left:1px solid #303647;padding-left:.85rem}.filter-k{color:#94a3b8;flex-shrink:0;margin-right:.15rem}.fchip{cursor:pointer;color:#cbd5e1;background:#191e28;border:1px solid #303647;border-radius:999px;align-items:center;gap:.35rem;padding:.28rem .65rem;font-size:.7rem;font-weight:500;display:inline-flex}.fchip:hover{background:#262d3d}.fchip em{color:#94a3b8;background:#303647;border-radius:999px;padding:.05rem .35rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.62rem;font-style:normal}.fchip.on{background:var(--surface-soft);color:var(--accent-2);border-color:#d8b46b8c}.fchip.on em{color:#c5e6d4;background:#ffffff1f}.scan-help{max-width:52rem;margin:.15rem 0 .55rem;font-size:.75rem;line-height:1.4}.scan-asof{margin-left:.35rem;font-size:.7rem}.scan-table-wrap{flex:1;min-height:0;overflow:auto}.scan-table{border-collapse:collapse;width:100%;min-width:720px;font-size:.84rem}.scan-table th,.scan-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #1a1f29;padding:.65rem .95rem}.scan-table th{color:#94a3b8;text-transform:none;letter-spacing:0;z-index:2;background:#10131a;border-bottom:1px solid #262b38;font-size:.78rem;font-weight:500;position:sticky;top:0}.scan-table th.num,.scan-table td.num{text-align:right}.scan-table th.ctr,.scan-table td.ctr{text-align:center}.scan-table .muted-num{color:#94a3b8}.scan-table .click-row:hover td{background:#171b24}.scan-table .t-cell{gap:.45rem}.scan-table .avatar,.scan-table .avatar-img{border-radius:6px;width:24px;height:24px;font-size:.58rem}.scan-table .ticker{color:#fff;font-family:inherit;font-size:.84rem;font-weight:700}.scan-table .name-sub{text-overflow:ellipsis;max-width:260px;font-size:.74rem;overflow:hidden}.scan-table .star{opacity:.35;width:auto;height:auto;color:var(--muted);background:0 0;border:0;padding:0;font-size:.85rem;line-height:1}.scan-table .star.on{opacity:1;color:var(--warn)}.scan-table .click-row:hover .star{opacity:.9}.scan-table .click-row:hover .star.on,.scan-table .star.on{opacity:1}.scan-table .sig{letter-spacing:.01em;white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;min-width:5.6rem;padding:.28rem .55rem;font-size:.68rem;font-weight:700;line-height:1.2;display:inline-flex}.scan-table .sig-near_s{color:#6ee7b7;background:#10b98138;border-color:#10b981;box-shadow:inset 0 0 0 1px #10b98140}.scan-table .sig-below_s{color:#fda4af;background:#f43f5e38;border-color:#f43f5e;box-shadow:inset 0 0 0 1px #f43f5e40}.scan-table .sig-near_r{color:#fdba74;background:#f9731638;border-color:#f97316;box-shadow:inset 0 0 0 1px #f9731647}.scan-table .sig-broke_r{color:#67e8f9;background:#06b6d438;border-color:#06b6d4;box-shadow:inset 0 0 0 1px #06b6d447}.scan-table .sig-rsi_hi{color:#fde047;background:#eab30838;border-color:#eab308;box-shadow:inset 0 0 0 1px #eab30847}.scan-table .sig-rsi_lo{color:#cbd5e1;background:#94a3b833;border-color:#8b97ab;box-shadow:inset 0 0 0 1px #94a3b847}.scan-table .sig-range{color:#94a3b8;background:#64748b29;border-color:#64748b;font-weight:600}.sig-legend{border-bottom:1px solid var(--line);background:#11141ba6;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.45rem .75rem;padding:.45rem 1rem .55rem;display:flex}.sig-legend-label{color:var(--muted);margin-right:.15rem;font-size:.7rem}.sig-legend-item{color:#cbd5e1;align-items:center;gap:.35rem;font-size:.68rem;display:inline-flex}.sig-legend-item .sig{min-width:0;padding:.18rem .45rem;font-size:.62rem}.scan-foot{color:#94a3b8;background:#10131a;border-top:1px solid #222836;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;height:2rem;padding:0 1rem;font-size:.7rem;display:flex}.scan-foot strong{color:#e2e8f0;font-weight:600}.scan-foot .pager-btns{align-items:center;gap:.45rem;display:flex}.scan-foot .btn.ghost{border-radius:6px;padding:.15rem .5rem;font-size:.68rem}.btn{background:var(--accent);color:#0d1a14;cursor:pointer;border:0;border-radius:10px;padding:.45rem .85rem;font-weight:700}.btn.ghost{color:var(--text);border:1px solid var(--line);background:0 0}.btn:disabled{opacity:.45;cursor:default}.table-wrap{max-height:calc(100vh - 340px);overflow:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:.62rem .45rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;z-index:2;background:#141821;font-size:.72rem;position:sticky;top:0}.click-row{cursor:pointer}.click-row:hover td{background:#d8b46b0f}.t-cell{align-items:center;gap:.55rem;display:flex}.avatar{color:#e8eaef;background:linear-gradient(145deg,#d8b46b59,#3a5f9a47);border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:.68rem;font-weight:800;display:grid}.avatar.lg{border-radius:12px;width:48px;height:48px;font-size:.85rem}.avatar-img,.stock-logo{object-fit:cover;background:#171b24;border-radius:10px;flex-shrink:0;width:34px;height:34px}.stock-logo{border-radius:12px;width:48px;height:48px}.chart-blurb{color:var(--muted);margin:0 0 .75rem;font-size:.92rem;line-height:1.45}.sr-title{margin-bottom:.55rem;font-size:.88rem;font-weight:800}.sr-item{border:1px solid var(--line);cursor:pointer;width:100%;color:var(--text);background:0 0;border-radius:10px;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.4rem;padding:.45rem .55rem;display:flex}.sr-item.support.on{background:#34d3991a;border-color:#34d3998c}.sr-item.resist.on{background:#f871711a;border-color:#f871718c}.ema-legend{flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.55rem;font-size:.75rem;display:flex}.dot{border-radius:99px;width:8px;height:8px;display:inline-block}.dot.ema50{background:#fbbf24}.dot.ema200{background:#94a3b8}.range-select{background:var(--bg);border:1px solid var(--line);border-radius:8px;margin-left:auto;padding:.4rem}.ticker{color:#c5e6d4;font-weight:800}.name-sub{color:var(--muted);text-overflow:ellipsis;max-width:220px;font-size:.72rem;overflow:hidden}.price-cell{line-height:1.25}.ah-line{opacity:.9;white-space:nowrap;margin-top:.12rem;font-size:.72rem}.star{color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:.15rem;display:inline-grid}.star .ico{transition:transform .18s cubic-bezier(.34,1.4,.5,1),fill .15s}.star:hover{color:var(--warn)}.star:hover .ico{transform:scale(1.15)}.star:active .ico{transform:scale(.85)}.star.on{color:var(--warn);opacity:1}.star.on .ico{fill:currentColor}.sector-cell{text-overflow:ellipsis;max-width:160px;overflow:hidden}.up{color:var(--up)}.down{color:var(--down)}.muted{color:var(--muted)}.empty{color:var(--muted);text-align:center!important;padding:2rem!important}.sig{color:#cbd5e1;background:#94a3b81f;border:1px solid #0000;border-radius:999px;align-items:center;padding:.18rem .55rem;font-size:.78rem;font-weight:700;display:inline-flex}.sig-near_s{color:#6ee7b7;background:#10b98133;border-color:#10b9818c}.sig-below_s{color:#fda4af;background:#f43f5e33;border-color:#f43f5e8c}.sig-near_r{color:#fdba74;background:#f9731633;border-color:#f973168c}.sig-broke_r{color:#5eead4;background:#2dd4bf2e;border-color:#2dd4bf80}.sig-rsi_hi{color:#fde047;background:#eab30833;border-color:#eab3088c}.sig-rsi_lo{color:#cbd5e1;background:#94a3b82e;border-color:#94a3b880}.sig-range{color:#94a3b8;background:#64748b24;border-color:#64748b73;font-weight:600}.pager{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.85rem;font-size:.9rem;display:flex}.pager-btns{align-items:center;gap:.55rem;display:flex}.stock-head{flex-wrap:wrap;align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.stock-head h1{margin:0;font-size:1.75rem}.metrics{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.65rem;margin:1rem 0;display:grid}.metric{background:var(--bg2);border:1px solid var(--line);border-radius:12px;min-width:0;padding:.7rem .85rem}.metric .k{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.metric .v{word-break:normal;overflow-wrap:anywhere;margin-top:.25rem;font-size:1.02rem;font-weight:700;line-height:1.35}.chart{border:1px solid var(--line);border-radius:12px;width:100%;height:380px;overflow:hidden}.chart.tall{background:linear-gradient(#141821 0%,#0a0c11 100%);height:520px}.chart-page{flex-direction:column;height:100%;min-height:0;display:flex}.rk-stock{background:var(--bg);flex-direction:column;height:100%;min-height:0;display:flex}.rk-subhead{background:var(--side);border-bottom:1px solid var(--line);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.55rem;height:auto;min-height:48px;padding:.45rem .85rem;display:flex}.rk-back{border:1px solid var(--line);background:var(--surface-soft);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:8px;flex-shrink:0;padding:.28rem .65rem;font-size:.78rem;font-weight:600}.rk-back:hover{border-color:color-mix(in srgb, var(--up) 45%, var(--line));color:var(--up)}.rk-back-fallback{padding:.75rem 1rem}.rk-sub-left{align-items:center;gap:.5rem;min-width:0;display:flex}.rk-logo-sm{object-fit:cover;border-radius:6px;width:24px;height:24px}.rk-logo-fallback{background:var(--surface-soft);border:1px solid color-mix(in srgb, var(--up) 35%, transparent);width:24px;height:24px;color:var(--up);border-radius:6px;place-items:center;font-size:.62rem;font-weight:700;display:grid}.rk-sub-id{flex-wrap:wrap;align-items:center;gap:.45rem;font-size:.78rem;display:flex}.rk-sub-id strong{color:var(--text);font-size:.88rem}.rk-name-sm{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.rk-price-inline{color:var(--text);font-size:.88rem;font-weight:700}.eod-live{color:var(--up);background:color-mix(in srgb, var(--up) 12%, transparent);border:1px solid color-mix(in srgb, var(--up) 30%, transparent);border-radius:4px;padding:.1rem .4rem;font-size:.62rem;font-weight:600}.eod-live.live{color:var(--accent);background:var(--surface-soft);border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.rk-chips{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.rk-chip{border:1px solid var(--line);background:var(--panel);border-radius:6px;flex-direction:column;gap:.05rem;min-width:5.6rem;padding:.25rem .55rem;display:flex}.rk-chip-k{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;font-size:.58rem}.rk-chip-v{color:var(--text);white-space:nowrap;font-size:.74rem;font-weight:650}.rk-head-actions{flex-shrink:0;align-items:center;gap:.4rem;margin-left:auto;display:flex}.rk-watch{white-space:nowrap;align-items:center;gap:.3rem;padding:.3rem .55rem;font-size:.75rem;display:inline-flex}.rk-tv{white-space:nowrap;color:var(--accent);border-color:color-mix(in srgb, var(--accent) 35%, transparent);padding:.3rem .55rem;font-size:.72rem;font-weight:600}.rk-tv:hover{border-color:var(--accent);color:var(--text)}.rk-tabs{flex-wrap:wrap;gap:.2rem;margin-left:.25rem;display:flex}.rk-tabs button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:6px;padding:.28rem .55rem;font-size:.72rem;font-weight:500}.rk-tabs button:hover{background:var(--panel);color:var(--text)}.rk-tabs button.on{background:var(--surface-soft);border-color:color-mix(in srgb, var(--accent) 45%, transparent);color:var(--text)}.rk-rail-sum .rk-rail-meta{flex-wrap:wrap;gap:.75rem;margin:.55rem 0;font-size:.75rem;display:flex}.rk-rail-sum .rk-rail-meta>div{flex-direction:column;gap:.15rem;display:flex}.rk-rail-foot{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.65rem;display:flex}.rk-rail-link{white-space:nowrap;font-size:.78rem}.rec-list{flex-direction:column;gap:.45rem;display:flex}.rec-row{grid-template-columns:4.5rem 1fr auto;align-items:center;gap:.5rem;display:grid}.rec-period{color:var(--muted);font-size:.72rem}.rec-bar{background:var(--panel);border:1px solid var(--line);border-radius:3px;height:10px;display:flex;overflow:hidden}.rec-bar i{height:100%;display:block}.rec-bar .buy{background:var(--up)}.rec-bar .hold{background:var(--warn)}.rec-bar .sell{background:var(--down)}.rec-n{white-space:nowrap;font-size:.68rem}.rk-body{flex:1;grid-template-columns:minmax(0,1fr) 288px;align-items:stretch;gap:0;min-height:0;display:grid}.rk-main{background:var(--bg);flex-direction:column;min-width:0;min-height:0;padding:.45rem .55rem .35rem;display:flex}.rk-chart-wrap{border:1px solid var(--line);background:var(--bg);border-radius:10px;flex:1;min-height:0;position:relative;overflow:hidden}.rk-chart{width:100%;height:100%;min-height:360px}.ema-overlay{z-index:5;pointer-events:none;flex-direction:column;gap:.25rem;max-width:85%;display:flex;position:absolute;top:.45rem;left:.65rem}.ohlc-line{color:#cbd5e1;font-size:.72rem;font-weight:500}.ohlc-line b{font-weight:600}.ohlc-line .muted{color:#94a3b8}.ohlc-date{color:#6b7280;margin:0 .15rem;transition:color .15s}.ohlc-line.hovering .ohlc-date{color:var(--accent)}@media (width<=640px){.ema-overlay{background:linear-gradient(#0a0b0ee6,#0a0b0e9e);border-radius:7px;gap:.15rem;max-width:calc(100% - 1.3rem);padding:.28rem .4rem}.ohlc-line{font-size:.66rem;line-height:1.5}.ema-chip{font-size:.6rem}}.ema-row{pointer-events:auto;flex-wrap:wrap;gap:.3rem;display:flex}.ema-chip{color:#94a3b8;cursor:pointer;background:0 0;border:0;align-items:center;gap:.25rem;padding:0;font-size:.65rem;display:inline-flex}.ema-chip strong{color:#e2e8f0;font-weight:600}.ema-chip.off{opacity:.35}.ema-chip .dot{border-radius:2px;width:7px;height:7px;display:inline-block}.rk-tf{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.45rem .7rem;padding:.45rem .15rem .2rem;display:flex}.rk-rail{background:#10131a;border-left:1px solid #222836;flex-direction:column;gap:.65rem;padding:.65rem;display:flex;overflow:auto}.rk-card{background:#151922;border:1px solid #2c3345;border-radius:10px;padding:.75rem .8rem}.rk-card-k{color:#e2e8f0;margin-bottom:.4rem;font-size:.75rem;font-weight:600}.rk-card-sub{color:#94a3b8;margin-bottom:.4rem;font-size:.65rem}.rk-muted-line{color:#64748b;margin:0;font-size:.72rem}.linkish{color:#f2dda9;cursor:pointer;background:0 0;border:0;padding:0}.linkish:hover{text-decoration:underline}.rk-bot{align-items:center;gap:.5rem;margin-bottom:.55rem;display:flex}.bot-avatar{background:var(--surface-soft);border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);width:24px;height:24px;color:var(--accent-2);border-radius:999px;place-items:center;font-size:.7rem;font-weight:700;display:grid}.bot-title{color:#e2e8f0;font-size:.72rem;font-weight:600}.bot-sub{color:#f2dda9;font-size:.58rem}.rk-insight{color:#cbd5e1;margin:0 0 .55rem;font-size:.72rem;line-height:1.55}.rk-level{width:100%;color:var(--text);cursor:pointer;background:#1d2330;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.3rem;padding:.4rem .5rem;font-size:.72rem;display:flex}.rk-level:hover{filter:brightness(1.08)}.rk-level.on{outline:1px solid #d8b46b73}.lvl-left{color:#cbd5e1;align-items:center;gap:.4rem;display:inline-flex}.lvl-right{align-items:center;gap:.4rem;display:inline-flex}.lvl-right strong{color:#fff;font-weight:600}.use-px{color:#f2dda9;font-size:.62rem;font-style:normal}.lvl-dot{background:#94a3b8;border-radius:99px;width:7px;height:7px;display:inline-block}.rk-level.support .lvl-dot{background:#34d399}.rk-level.resist .lvl-dot{background:#fb7185}.rk-hint{border-top:1px solid #303647;margin-top:.4rem;padding-top:.4rem;font-size:.62rem;line-height:1.4}.rk-fund{background:#151922;border:1px solid #2c3345;border-radius:12px;margin:.75rem;padding:1rem;overflow:auto}.rk-panel{background:#12151d;border:1px solid #2c3345;border-radius:12px;flex:1;min-height:0;margin:.75rem 1rem 1rem;padding:.85rem 1rem 1.1rem;overflow:auto}.rk-panel-status{margin:.5rem 0;font-size:.85rem}.rk-panel-h{color:#cbd5e1;margin:0 0 .55rem;font-size:.85rem;font-weight:600}.rk-sec{margin-top:1rem}.rk-story{background:#151922;border:1px solid #2a3140;border-radius:12px;margin-bottom:.85rem;padding:.85rem .95rem}.rk-story .rk-insight{margin:.55rem 0 .45rem}.rk-story .doi-sum{color:#e8eaef;font-size:.95rem;font-weight:600;line-height:1.45}.rk-nar{color:#a8b0c2;margin:.35rem 0 0;font-size:.8rem;line-height:1.5}.rk-desc{color:#9aa3b5;-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:0 0 .35rem;font-size:.78rem;line-height:1.55;display:-webkit-box;overflow:hidden}.rk-desc.open{-webkit-line-clamp:unset;display:block}.rk-fact-grid .metric .v{word-break:break-word;font-size:.82rem}.mini-yoy{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.58rem}.duel-row{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem;margin-top:.45rem;display:grid}.duel-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:0;padding:.65rem .75rem}.duel-card.good{border-color:#34d39959}.duel-card.warn{border-color:#fbbf2459}.duel-card .k{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.2rem;font-size:.65rem;display:block;overflow:hidden}.duel-card strong{color:var(--text);overflow-wrap:anywhere;font-size:.92rem;line-height:1.3;display:block}.watch-list{color:#c5ccd8;margin:0;padding-left:1.1rem;font-size:.8rem;line-height:1.55}.watch-list li{margin-bottom:.35rem}.streak-box{padding-top:.15rem}.streak-row{align-items:center;gap:.65rem;margin-bottom:.45rem;font-size:.8rem;display:flex}.streak-k{color:#94a3b8;flex-shrink:0;width:3.2rem}.streak-dots{gap:.28rem;display:inline-flex}.streak-dots i{border-radius:999px;width:1rem;height:1rem;display:inline-block}.streak-dots i.ok{background:#34d399;box-shadow:inset 0 0 0 2px #064e3b59}.streak-dots i.no{background:#3a4258}.stats-banner{background:linear-gradient(135deg, var(--surface-soft), var(--panel));border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);color:var(--text);border-radius:12px;padding:.75rem .9rem;font-size:.8rem;line-height:1.45}.beat-tag{border-radius:999px;padding:.12rem .45rem;font-size:.68rem;font-weight:650;display:inline-block}.beat-tag.yes{color:#6ee7b7;background:#34d3992e}.beat-tag.no{color:#fda4af;background:#fb71852e}.rk-cta{border:1px dashed #303647;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.1rem;padding:.85rem .95rem;display:flex}.rk-cta p{color:#a8b0c2;margin:0;font-size:.8rem}.finance-split{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.grade-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.55rem;display:flex}.decide-check-head{margin-bottom:.65rem}.decide-check-head .rk-panel-h{margin-bottom:.25rem}.decide-check-disclaimer{margin:.45rem 0 0;font-size:.72rem}.decide-check-sum{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.decide-check-sum.mini{margin-top:.65rem}.ck-pill{border:1px solid var(--line);background:var(--surface-soft);border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:650}.ck-pill.pass{color:#6ee7b7;border-color:#34d39959}.ck-pill.caution{color:#fcd34d;border-color:#fbbf2459}.ck-pill.fail{color:#fda4af;border-color:#fb718566}.ck-pill.hot{color:#fda4af;background:#fb71851f;border-color:#fb718573}.decide-check-group{margin-top:.85rem}.decide-check-g{color:var(--muted);letter-spacing:.02em;margin:0 0 .4rem;font-size:.78rem;font-weight:700}.decide-check-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.decide-check-item{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-soft) 80%, transparent);border-radius:10px;grid-template-columns:1.5rem 1fr auto;align-items:start;gap:.55rem;padding:.55rem .65rem;display:grid}.decide-check-item.st-pass{border-color:#34d39947}.decide-check-item.st-caution{border-color:#fbbf2447}.decide-check-item.st-fail{border-color:#fb718559}.ck-mark{background:var(--surface-soft);border-radius:999px;place-items:center;width:1.25rem;height:1.25rem;margin-top:.1rem;font-size:.72rem;font-weight:800;display:grid}.st-pass .ck-mark{color:#6ee7b7;background:#34d3991f}.st-caution .ck-mark{color:#fcd34d;background:#fbbf241f}.st-fail .ck-mark{color:#fda4af;background:#fb71851f}.st-na .ck-mark{color:var(--muted)}.ck-top{flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem;display:flex}.ck-top strong{font-size:.84rem}.ck-val{color:var(--muted);font-size:.78rem}.ck-note{color:var(--muted);margin-top:.2rem;font-size:.74rem;line-height:1.35}.ck-status{white-space:nowrap;color:var(--muted);margin-top:.15rem;font-size:.68rem;font-weight:650}.st-pass .ck-status{color:#6ee7b7}.st-caution .ck-status{color:#fcd34d}.st-fail .ck-status{color:#fda4af}.mini-chart{border-bottom:1px solid #222836;align-items:flex-end;gap:.45rem;min-height:140px;padding:.5rem .25rem .15rem;display:flex}.mini-col{flex-direction:column;flex:1;align-items:center;gap:.35rem;min-width:0;display:flex}.mini-bars{justify-content:center;align-items:flex-end;gap:3px;width:100%;height:110px;display:flex}.mini-bars.single{gap:0}.mini-bar{border-radius:4px 4px 2px 2px;width:42%;max-width:18px;min-height:4px}.mini-bars.single .mini-bar{width:70%;max-width:28px}.mini-bar.est{background:#3b3f4d}.mini-bar.act{background:#34d399}.mini-bar.act.down{background:#fb7185}.mini-bar.rev{background:linear-gradient(#d8b46b,#3d6fa8)}.mini-lbl{color:#8b93a7;white-space:nowrap;font-size:.62rem}.mini-legend{color:#94a3b8;gap:.85rem;margin-top:.45rem;font-size:.68rem;display:flex}.mini-legend .lg{vertical-align:middle;border-radius:2px;width:.55rem;height:.55rem;margin-right:.25rem;display:inline-block}.mini-legend .lg.est{background:#3b3f4d}.mini-legend .lg.act{background:#34d399}.health-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.55rem;display:grid}.health-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:0;padding:.75rem .85rem}.health-card.good{border-color:#34d39959}.health-card.warn{border-color:#fbbf2459}.health-card.bad{border-color:#fb718566}.health-k{color:#94a3b8;min-height:1.1em;margin-bottom:.2rem;font-size:.68rem}.health-k .term{color:inherit}.health-v{color:#e8eaef;font-size:1.05rem;font-weight:650}.health-chip{color:#a8b0c2;margin-top:.4rem;font-size:.68rem;line-height:1.35}.health-card.good .health-chip{color:#6ee7b7}.health-card.warn .health-chip{color:#fcd34d}.health-card.bad .health-chip{color:#fda4af}.rk-level-row{flex-wrap:wrap;gap:.4rem;display:flex}.rk-level-row .rk-level{flex:140px;justify-content:space-between}.rk-table-wrap{overflow-x:auto}.rk-data-table{border-collapse:collapse;width:100%;font-size:.8rem}.rk-data-table th,.rk-data-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #1e2430;padding:.55rem .65rem}.rk-data-table th{color:#94a3b8;font-size:.72rem;font-weight:500}.rk-news-list{flex-direction:column;gap:.55rem;display:flex}.rk-news-item{background:#151922;border:1px solid #2a3140;border-radius:10px;padding:.7rem .75rem;transition:border-color .15s,background .15s;display:block}.rk-news-item:hover{background:#191e28;border-color:#d8b46b73}.rk-news-meta{gap:.35rem;margin-bottom:.25rem;font-size:.68rem;display:flex}.rk-news-title{color:#e8eaef;font-size:.88rem;font-weight:600;line-height:1.35;display:block}.rk-news-sum{color:#8b93a7;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:.35rem 0 0;font-size:.75rem;line-height:1.45;display:-webkit-box;overflow:hidden}.btn{background:var(--surface-soft);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);cursor:pointer;color:var(--text);border-radius:8px;padding:.35rem .7rem;font-weight:600}.btn.ghost{color:#94a3b8;background:0 0;border-color:#3a4258}.btn.ghost:hover{color:#fff;border-color:#5a6478}.pill-group{flex-wrap:wrap;gap:.25rem;display:flex}.pill{cursor:pointer;color:#94a3b8;background:0 0;border:0;border-radius:6px;padding:.2rem .5rem;font-size:.68rem;font-weight:500}.pill:hover{color:#e2e8f0;background:#1f2533}.pill.on{color:#fff;background:#8a6a33;font-weight:600}.error{color:var(--down);margin:.5rem .75rem}@media (width<=980px){.rk-body{grid-template-columns:1fr}.rk-rail{border-top:1px solid #222836;border-left:0;max-height:40vh}.rk-chart{min-height:320px}.app-top{flex-wrap:wrap;height:auto;padding:.4rem}.top-tape{order:3;width:100%}}@media (width<=860px){.table-wrap{max-height:none}body{overflow:auto}.app-root{height:auto;min-height:100%}}.home-page{flex-direction:column;gap:1.1rem;max-width:1180px;margin:0 auto;padding-bottom:1.5rem;display:flex}.home-loading{margin:0}.home-card{background:#12151d;border:1px solid #2a3142;border-radius:14px;padding:.95rem 1rem}.home-section{flex-direction:column;gap:.55rem;display:flex}.home-card-head,.home-sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.home-sec-head.tight{margin-bottom:.55rem}.home-title-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.home-title-row h2{color:#fff;margin:0;font-size:.92rem;font-weight:700}.home-emoji{font-size:.95rem}.home-sub,.home-desc,.home-sec-note{color:#94a3b8;margin:.2rem 0 0;font-size:.72rem}.pill-tag{color:#cbd5e1;background:#242b3a;border:1px solid #3a4258;border-radius:999px;padding:.12rem .45rem;font-size:.62rem;font-weight:600}.pill-tag.soft{background:var(--surface-soft);border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--accent-2)}.risk-meter{margin-top:.75rem}.risk-labels{color:#f2dda9;justify-content:space-between;margin-bottom:.35rem;font-size:.7rem;display:flex}.risk-track{background:linear-gradient(90deg, var(--up), #6b7280, var(--down));border-radius:999px;height:10px;position:relative}.risk-pin{background:#fff;border:2px solid #2a5c45;border-radius:99px;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0006}.risk-meta{margin-top:.4rem;font-size:.68rem}.macro-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;margin-top:.85rem;display:grid}.macro-stat{background:#1b202b;border:1px solid #303647;border-radius:10px;padding:.55rem .6rem}.macro-stat .k{color:#94a3b8;font-size:.65rem}.macro-stat .v{color:#fff;margin-top:.15rem;font-size:.95rem;font-weight:700}.sector-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.sector-col{padding-top:.75rem}.sector-col-h{border-bottom:1px solid #262b38;margin-bottom:.35rem;padding-bottom:.45rem;font-size:.72rem;font-weight:600}.sector-col-h.in{color:#34d399}.sector-col-h.out{color:#fb7185}.sector-row{cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:0;border-radius:8px;grid-template-columns:1fr auto auto;align-items:center;gap:.55rem;padding:.4rem .45rem;font-size:.75rem;display:grid}.sector-row:hover{background:#1b202b}.sec-name{color:#e2e8f0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.theme-rail{scrollbar-width:thin;gap:.65rem;padding-bottom:.35rem;display:flex;overflow-x:auto}.theme-rail::-webkit-scrollbar{height:8px}.theme-card{text-align:left;cursor:pointer;min-width:200px;color:inherit;background:#12151d;border:1px solid #2c3345;border-radius:12px;flex-shrink:0;padding:.75rem .8rem}.theme-card:hover{border-color:#d8b46b73}.theme-title{color:#fff;font-size:.78rem;font-weight:600}.theme-chg{margin:.35rem 0;font-size:1.05rem;font-weight:700}.theme-tags{flex-wrap:wrap;gap:.25rem;display:flex}.mini-tag{color:#94a3b8;background:#1d2330;border-radius:5px;padding:.12rem .35rem;font-size:.62rem}.home-split{grid-template-columns:1fr 1.4fr;gap:.75rem;display:grid}.extreme-list{flex-direction:column;gap:.45rem;display:flex}.extreme-row{grid-template-columns:72px 1fr;gap:.45rem;font-size:.72rem;display:grid}.extreme-row .accent{color:var(--accent-2)}.today-grid{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.today-box{background:#1a1f29;border:1px solid #303647;border-radius:10px;padding:.65rem}.today-k{color:#cbd5e1;margin-bottom:.4rem;font-size:.72rem;font-weight:600}.today-link{text-align:left;color:#f2dda9;cursor:pointer;background:0 0;border:0;width:100%;padding:.25rem 0;font-size:.72rem;display:block}.today-link:hover{text-decoration:underline}.empty-mini{margin:.35rem 0 0;font-size:.68rem}.watch-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;display:grid}.watch-card{text-align:left;cursor:pointer;color:inherit;background:#12151d;border:1px solid #2c3345;border-radius:12px;flex-direction:column;gap:.35rem;padding:.65rem;display:flex}.watch-card:hover{border-color:#d8b46b66}.watch-top{justify-content:space-between;gap:.25rem;font-size:.75rem;display:flex}.watch-px{color:#fff;font-size:.88rem;font-weight:700}.watch-meta{font-size:.62rem;line-height:1.35}.near-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.near-card{text-align:left;cursor:pointer;color:inherit;background:#12151d;border:1px solid #d8b46b4d;border-radius:12px;padding:.8rem}.near-card:hover{border-color:#d8b46b99}.near-top{justify-content:space-between;gap:.5rem;display:flex}.near-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.65rem;overflow:hidden}.near-right{text-align:right}.near-px{color:#fff;font-size:.95rem;font-weight:700}.near-dist{font-size:.65rem}.near-blurb{color:#cbd5e1;margin:.55rem 0 0;font-size:.72rem;line-height:1.45}.home-earn-rail{flex-wrap:wrap;gap:.5rem;display:flex}.home-earn-chip{text-align:left;background:var(--panel);border:1px solid var(--line);color:inherit;cursor:pointer;border-radius:10px;flex-direction:column;gap:.15rem;min-width:110px;padding:.55rem .75rem;display:flex}.home-earn-chip:hover{border-color:var(--accent)}.earn-when{color:var(--accent-2,var(--accent));font-size:.68rem}.home-news-list{flex-direction:column;gap:.35rem;display:flex}.home-news-row{background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:.55rem;padding:.55rem .7rem;text-decoration:none;display:grid}.home-news-row:hover{border-color:var(--accent)}.home-news-title{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.page-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.page-head h1{margin:0 0 .25rem;font-size:1.25rem}.page-head .muted{margin:0;font-size:.82rem}.compare-form{flex-wrap:wrap;align-items:flex-end;gap:.65rem;margin-bottom:1rem;display:flex}.compare-form .field{color:var(--muted);flex-direction:column;gap:.25rem;font-size:.75rem;display:flex}.compare-form .field span{color:var(--text);font-weight:600}.compare-form input{background:var(--panel-2);border:1px solid var(--line-2);color:var(--text);border-radius:9px;min-width:120px;padding:.5rem .65rem}.swap-btn{align-self:flex-end}.compare-heads{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;margin-bottom:.85rem;display:grid}.cmp-side{background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:12px;flex-direction:column;gap:.15rem;padding:.7rem .85rem;text-decoration:none;display:flex}.cmp-side:hover{border-color:var(--accent)}.cmp-vs{text-align:center;font-size:.8rem}.compare-table th:nth-child(2),.compare-table th:nth-child(3),.compare-table td:nth-child(2),.compare-table td:nth-child(3){text-align:right}.art-lang{color:var(--accent);font-size:.68rem;font-weight:700}@media (width<=1100px){.watch-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.macro-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.sector-grid,.home-split,.near-grid,.today-grid{grid-template-columns:1fr}.watch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.port-fields,.port-summary,.compare-heads{grid-template-columns:1fr}}.rk-data-table th.num,.rk-data-table td.num{text-align:right}.rk-data-table th.ctr,.rk-data-table td.ctr{text-align:center}.rk-data-table tr.click-row{cursor:pointer}.rk-data-table tr.click-row:hover td{background:#d8b46b0f}.btn.btn-sm{padding:.28rem .6rem;font-size:.72rem}.watch-summary{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.6rem;margin-bottom:1rem;display:grid}.watch-summary .metric{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:.6rem .75rem}.watch-summary .k{color:var(--muted);font-size:.72rem}.watch-summary .v{margin-top:.2rem;font-size:1.05rem;font-weight:700}.watch-table td{vertical-align:middle}.watch-table .t-cell{align-items:center;gap:.55rem;display:flex}.watch-table .name-sub{color:var(--muted);text-overflow:ellipsis;max-width:min(18rem,28vw);font-size:.72rem;overflow:hidden}.watch-empty{text-align:center;flex-direction:column;align-items:center;gap:.5rem;max-width:26rem;margin:2.5rem auto;display:flex}.watch-empty-ico{color:var(--accent);opacity:.7;font-size:2rem;line-height:1}.watch-empty h2{margin:0;font-size:1.05rem}.watch-empty p{margin:0 0 .4rem;font-size:.85rem;line-height:1.6}.sector-bar{flex-wrap:wrap;align-items:center;gap:.75rem 1.1rem;display:flex}.sector-select{background:var(--bg2);border:1px solid var(--line);color:var(--text);cursor:pointer;border-radius:999px;max-width:16rem;padding:.28rem .7rem;font-family:inherit;font-size:.75rem}.sector-select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.active-filters{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.active-chip{color:var(--text);cursor:pointer;background:#d8b46b29;border:1px solid #d8b46b73;border-radius:999px;align-items:center;gap:.35rem;padding:.22rem .55rem;font-size:.72rem;display:inline-flex}.active-chip:hover{background:#d8b46b42}.active-chip em{opacity:.75;font-size:.85rem;font-style:normal;line-height:1}.clear-all{font-size:.72rem}.scan-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.scan-table th.sortable:hover{color:#cbd5e1}.scan-table th.sorted{color:var(--accent)}.scan-table .sort-ind{min-width:.6em;margin-left:.15rem;font-size:.6rem;font-style:normal;display:inline-block}.scan-table .industry-sub{color:#6b7690;text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-size:.66rem;overflow:hidden}.q-src{color:var(--muted);background:#94a3b829;border-radius:4px;margin-left:.35rem;padding:.05rem .3rem;font-size:.6rem;display:inline-block}.coverage-badge{color:#cfe4ff;background:#d8b46b29;border:1px solid #d8b46b73;border-radius:12px;place-items:center;min-width:44px;height:44px;padding:0 .5rem;font-size:.95rem;font-weight:700;display:grid}.coverage-badge.thin{color:var(--muted);background:#94a3b824;border-color:#94a3b866}.duel-card.muted-card{opacity:.6;border-style:dashed}.ck-pill.neutral{color:var(--muted);background:#94a3b829;border-color:#94a3b866}.ck-mark.neutral{color:var(--muted)}.biz-summary{white-space:pre-line;line-height:1.75}.biz-facts{color:var(--muted);flex-wrap:wrap;gap:.4rem 1rem;margin-top:.6rem;font-size:.78rem;display:flex}.biz-facts a{color:var(--accent)}.biz-src{font-size:.68rem}.biz-note{margin:.5rem 0 0;font-size:.72rem;line-height:1.6}.rk-data-table tr.biz-self td{background:#d8b46b14}.rk-list{margin:0;padding-left:1.1rem;font-size:.82rem;line-height:1.8}.streak-note{margin:.4rem 0 0;font-size:.74rem;line-height:1.7}.streak-note code{background:#94a3b829;border-radius:4px;padding:.05rem .3rem;font-size:.72rem}@media (width<=720px){.app-nav{justify-content:flex-start;gap:.3rem;padding:.35rem .5rem}.nav-item{padding:.3rem .55rem;font-size:.72rem}.nav-primary{margin:0 .35rem;padding:.34rem .85rem}.rk-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;margin-left:0;padding-bottom:.15rem;overflow-x:auto}.rk-tabs::-webkit-scrollbar{display:none}.rk-tabs button{white-space:nowrap;flex:none}.rk-chips{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.rk-chips::-webkit-scrollbar{display:none}.rk-chip{flex:none}.app-main{padding:.5rem .6rem 1rem}.rk-panel{padding:.6rem}}.seg-split{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem 1.5rem;display:grid}.seg-head{color:var(--muted);margin-bottom:.4rem;font-size:.72rem}.seg-row{grid-template-columns:minmax(84px,1.4fr) 3fr auto auto;align-items:center;gap:.5rem;padding:.22rem 0;font-size:.76rem;display:grid}.seg-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.seg-bar{background:#94a3b829;border-radius:3px;height:6px;overflow:hidden}.seg-bar i{background:var(--accent);border-radius:3px;height:100%;display:block}.seg-val{color:var(--muted)}.seg-pct{text-align:right;min-width:3.2rem}.app-tabbar,.sheet-back{display:none}@media (width<=860px){.app-nav{display:none}.app-tabbar{z-index:80;padding:.3rem .35rem calc(.3rem + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);background:#0c0e13f0;justify-content:space-around;align-items:stretch;gap:.1rem;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 22px #00000073}.tab-item{min-width:0;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1 1 0;justify-content:flex-end;align-items:center;gap:.14rem;padding:.3rem .1rem .22rem;font-size:.63rem;font-weight:500;transition:color .15s;display:flex}.tab-item span{white-space:nowrap}.tab-item .ico{transition:transform .2s cubic-bezier(.34,1.4,.5,1)}.tab-item:active .ico{transform:scale(.86)}.tab-item.on{color:var(--accent-2)}.tab-item.on .ico{transform:translateY(-1px)}.tab-primary{position:relative}.tab-primary-disc{color:#14110a;background:linear-gradient(180deg, var(--accent-2), var(--accent));border:3px solid var(--side);border-radius:50%;place-items:center;width:42px;height:42px;margin-top:-18px;transition:transform .2s cubic-bezier(.34,1.4,.5,1);display:grid;box-shadow:0 4px 16px #d8b46b59}.tab-primary:active .tab-primary-disc{transform:scale(.92)}.tab-primary .ico{transition:none}.app-body{padding-bottom:calc(4.6rem + env(safe-area-inset-bottom,0px))}.sheet-back{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#04050899;display:block;position:fixed;inset:0}.sheet{padding:.4rem .6rem calc(1rem + env(safe-area-inset-bottom,0px));background:var(--panel);border-top:1px solid var(--line-2);border-radius:18px 18px 0 0;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -12px 40px #0000008c}.sheet-grip{background:var(--line-2);border-radius:2px;width:38px;height:4px;margin:.35rem auto .6rem}.sheet-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:.7rem;padding:.72rem .65rem;font-size:.9rem;display:flex}.sheet-item:active{background:var(--surface-soft)}.sheet-item .ico{color:var(--accent)}.sheet-item.danger{color:var(--down);border-top:1px solid var(--line);border-radius:0;margin-top:.2rem}.sheet-item.danger .ico{color:var(--down)}}.page-enter-active{transition:opacity .2s,transform .2s}.page-leave-active{transition:opacity .12s}.page-enter-from{opacity:0;transform:translateY(6px)}.page-leave-to{opacity:0}.drop-enter-active{transition:opacity .14s,transform .14s}.drop-leave-active{transition:opacity .1s}.drop-enter-from{opacity:0;transform:translateY(-5px)scale(.98)}.drop-leave-to{opacity:0}.tip-enter-active{transition:opacity .13s,transform .13s}.tip-leave-active{transition:opacity .1s}.tip-enter-from{opacity:0;transform:translateY(-4px)}.tip-leave-to{opacity:0}.sheet-enter-active,.sheet-leave-active{transition:opacity .2s}.sheet-enter-active .sheet,.sheet-leave-active .sheet{transition:transform .24s cubic-bezier(.22,1,.36,1)}.sheet-enter-from,.sheet-leave-to{opacity:0}.sheet-enter-from .sheet,.sheet-leave-to .sheet{transform:translateY(100%)}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.fade-in{animation:.28s both fade-up}.fade-in-list>*{animation:.3s both fade-up}.fade-in-list>:first-child{animation-delay:20ms}.fade-in-list>:nth-child(2){animation-delay:50ms}.fade-in-list>:nth-child(3){animation-delay:80ms}.fade-in-list>:nth-child(4){animation-delay:.11s}.fade-in-list>:nth-child(5){animation-delay:.14s}.fade-in-list>:nth-child(n+6){animation-delay:.17s}.lift{transition:transform .18s,border-color .18s,box-shadow .18s}.lift:hover{border-color:var(--line-2);transform:translateY(-2px);box-shadow:0 8px 22px #0000004d}button:not(:disabled):active,.btn:not(:disabled):active{transform:translateY(1px)}.btn{transition:background .15s,border-color .15s,color .15s,transform 80ms}@keyframes shimmer{0%{background-position:-220px 0}to{background-position:220px 0}}.skel{background:linear-gradient(90deg, var(--panel-2) 25%, #22252e 50%, var(--panel-2) 75%);background-size:440px 100%;border-radius:6px;animation:1.3s linear infinite shimmer}@keyframes boot-bounce{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.boot-dots{gap:4px;margin-right:.5rem;display:inline-flex}.boot-dots i{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite boot-bounce}.boot-dots i:nth-child(2){animation-delay:.14s}.boot-dots i:nth-child(3){animation-delay:.28s}@keyframes tick{0%{background-color:var(--surface-soft)}to{background-color:#0000}}.ticked{border-radius:4px;animation:.7s both tick}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.lift:hover{transform:none}}.term{cursor:help;border-bottom:1px dotted #d8b46b73;align-items:center;gap:.22rem;transition:color .15s,border-color .15s;display:inline-flex}.term:hover,.term:focus-visible,.term.on{color:var(--accent-2);border-bottom-color:var(--accent);outline:none}.term-badge{width:13px;height:13px;color:var(--accent);background:var(--surface-soft);border:1px solid #d8b46b4d;border-radius:50%;place-items:center;font-size:.56rem;font-weight:700;line-height:1;transition:color .15s,background .15s;display:inline-grid}.term-icon{border-bottom:0}.term.on .term-badge,.term:hover .term-badge{color:#14110a;background:var(--accent);border-color:var(--accent)}.term-card{z-index:200;border:1px solid var(--line-2);background:#171a22;border-radius:12px;width:290px;padding:.65rem .75rem .6rem;font-size:.76rem;line-height:1.5;position:fixed;box-shadow:0 16px 38px #0000008c}.term-card-h{align-items:baseline;gap:.4rem;margin-bottom:.25rem;display:flex}.term-card-h strong{color:var(--accent-2);font-size:.86rem}.term-card-h .muted{font-size:.66rem}.term-card-short{color:var(--text);margin-bottom:.35rem}.term-card-formula{color:var(--muted);border-left:2px solid var(--accent-deep);background:#ffffff08;border-radius:0 5px 5px 0;margin-bottom:.4rem;padding:.3rem .4rem;font-size:.68rem}.term-card-read{color:#c8ccd6}.term-card-rule{border-top:1px solid var(--line);color:var(--muted);margin-top:.4rem;padding-top:.4rem;font-size:.7rem}.term-card-more{color:var(--accent);margin-top:.45rem;font-size:.68rem;display:inline-block}.term-card-more:hover{color:var(--accent-2)}.glossary{max-width:1180px;margin:0 auto}.gl-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:.9rem;display:flex}.gl-title{margin:0;font-size:1.3rem}.gl-sub{max-width:56ch;margin:.25rem 0 0;font-size:.8rem}.gl-search{background:var(--panel-2);border:1px solid var(--line-2);color:var(--muted);border-radius:10px;align-items:center;gap:.45rem;padding:.4rem .7rem;transition:border-color .15s;display:flex;position:relative}.gl-search:focus-within{border-color:var(--accent)}.gl-search input{width:min(260px,46vw);color:var(--text);background:0 0;border:0;outline:none;font-size:.83rem}.gl-filters{flex-wrap:wrap;gap:.35rem;margin-bottom:1.1rem;display:flex}.gl-pill{border:1px solid var(--line-2);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .7rem;font-size:.76rem;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.gl-pill:hover{color:var(--text);border-color:var(--accent-deep)}.gl-pill.on{color:var(--accent-2);border-color:var(--accent);background:var(--surface-soft)}.gl-count{opacity:.7;font-size:.66rem}.gl-section{margin-bottom:1.6rem}.gl-section-h{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:.6rem;margin-bottom:.6rem;padding-bottom:.4rem;display:flex}.gl-section-h h2{color:var(--accent-2);margin:0;font-size:.98rem}.gl-section-h .muted{font-size:.74rem}.gl-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.7rem;display:grid}.gl-card{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:.75rem .85rem .8rem}.gl-card-h{flex-wrap:wrap;align-items:baseline;gap:.45rem;display:flex}.gl-card-h strong{color:var(--text);font-size:.95rem}.gl-card-h .muted{font-size:.68rem}.gl-short{color:var(--accent-2);margin:.3rem 0 .45rem;font-size:.82rem}.gl-formula{color:var(--muted);border-left:2px solid var(--accent-deep);background:#ffffff08;border-radius:0 5px 5px 0;margin:0 0 .5rem;padding:.32rem .45rem;font-size:.7rem}.gl-read{color:#c8ccd6;margin:0;font-size:.79rem;line-height:1.6}.gl-rule{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:.4rem;margin:.55rem 0 0;padding-top:.5rem;font-size:.72rem;display:flex}.gl-rule .ico{color:var(--accent-deep);flex-shrink:0;margin-top:.15rem}.gl-empty{text-align:center;padding:2rem 0}.gl-foot{border-top:1px solid var(--line);max-width:74ch;margin-top:1.4rem;padding-top:.8rem;font-size:.74rem}@media (width<=860px){.gl-head{flex-direction:column;align-items:stretch}.gl-search input{width:100%}.gl-grid{grid-template-columns:1fr}}.ico{vertical-align:-.14em;flex-shrink:0;display:inline-block}.active-chip em{align-items:center;display:inline-flex}.watch-empty-ico{justify-content:center;display:flex}.health-card,.watch-card,.near-card,.home-news-row,.extreme-row{transition:transform .18s,border-color .18s,box-shadow .18s}.watch-card:hover,.near-card:hover,.home-news-row:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0000004d}.health-card:hover{border-color:var(--line-2)}.skel-chip{border-radius:10px;width:92px;height:46px;display:inline-block}.skel-row{border-radius:8px;height:34px;display:block}.articles-page{max-width:1180px;margin:0 auto}.news-head{margin-bottom:.8rem}.news-head h1{margin:0;font-size:1.3rem}.news-head p{max-width:62ch;margin:.25rem 0 0;font-size:.8rem}.news-head .btn{align-items:center;gap:.35rem;display:inline-flex}.art-filters{flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:1rem;display:flex}.art-src{margin-left:auto;font-size:.7rem}.news-tile{background:radial-gradient(120% 120% at 30% 20%, hsl(var(--h) 34% 26%), hsl(var(--h) 30% 13%));color:#ffffffd1;letter-spacing:.02em;place-items:center;width:100%;height:100%;font-size:1.6rem;font-weight:700;display:grid}.news-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.68rem;display:flex}.news-meta strong{color:#b9bfcd;font-weight:600}.news-flag{border:1px solid var(--line-2);border-radius:4px;padding:.06rem .34rem;font-size:.6rem;font-weight:700}.news-flag.th{color:var(--accent-2);background:var(--surface-soft);border-color:#d8b46b66}.news-flag.en{color:#9aa2b4}.news-top-badge{color:#14110a;background:linear-gradient(180deg, var(--accent-2), var(--accent));border-radius:999px;margin-left:auto;padding:.06rem .4rem;font-size:.6rem;font-weight:700}.news-sum{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:.35rem 0 0;font-size:.76rem;line-height:1.55;display:-webkit-box;overflow:hidden}.news-tickers{flex-wrap:wrap;gap:.28rem;margin-top:.5rem;display:flex}.news-tk{background:var(--surface-soft);color:var(--accent-2);cursor:pointer;border:1px solid #d8b46b52;border-radius:5px;padding:.1rem .42rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.66rem;font-weight:600;transition:background .15s,color .15s}.news-tk:hover{background:var(--accent);color:#14110a;border-color:var(--accent)}.news-lead{background:var(--panel);border:1px solid var(--line-2);border-left:3px solid var(--accent);color:inherit;border-radius:16px;margin-bottom:1.1rem;padding:.9rem 1.05rem;transition:transform .18s,border-color .18s,box-shadow .18s;display:block}.news-lead.has-photo{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:1.05rem;padding:.7rem;display:grid}.news-lead-media{aspect-ratio:16/9;background:var(--panel-2);border-radius:12px;overflow:hidden}.news-lead-media img{object-fit:cover;width:100%;height:100%;display:block}.news-lead:hover{border-color:var(--accent-deep);transform:translateY(-2px);box-shadow:0 12px 30px #00000059}.news-lead-body{flex-direction:column;display:flex}.news-lead-title{color:var(--text);margin:.45rem 0 0;font-size:1.35rem;font-weight:650;line-height:1.4}.news-lead:hover .news-lead-title{color:var(--accent-2)}.news-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.7rem;display:grid}.news-card{background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:13px;grid-template-columns:96px minmax(0,1fr);gap:.7rem;padding:.6rem;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.news-card:hover{border-color:var(--line-2);transform:translateY(-2px);box-shadow:0 8px 22px #0000004d}.news-card-media{aspect-ratio:1;background:var(--panel-2);border-radius:9px;width:96px;overflow:hidden}.news-card-media img{object-fit:cover;width:100%;height:100%;display:block}.news-card-body{flex-direction:column;min-width:0;display:flex}.news-title{color:var(--text);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;margin:.3rem 0 0;font-size:.92rem;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.news-card:hover .news-title{color:var(--accent-2)}.news-skel-thumb{border-radius:9px;width:96px;height:96px;display:block}.news-skel-line{border-radius:5px;height:13px;margin-bottom:.35rem;display:block}.news-skel-line.short{width:62%}.news-empty{text-align:center;padding:2rem 0}@media (width<=860px){.news-lead{padding:.75rem .85rem}.news-lead.has-photo{grid-template-columns:1fr;gap:.6rem;padding:.6rem}.news-lead-title{font-size:1.05rem}.news-grid{grid-template-columns:1fr}.news-card{grid-template-columns:76px minmax(0,1fr)}.news-card-media{width:76px}.art-src{width:100%;margin-left:0}}.calendar-page{max-width:1180px;margin:0 auto}.cal-head{margin-bottom:.85rem}.cal-head h1{margin:0;font-size:1.3rem}.cal-head p{max-width:60ch;margin:.25rem 0 0;font-size:.8rem}.cal-count{text-align:right;gap:1.1rem;display:flex}.cal-count>div{flex-direction:column;line-height:1.2;display:flex}.cal-count strong{font-size:1.25rem;font-weight:700}.cal-count span{font-size:.68rem}.accent-num{color:var(--accent-2)}.cal-bar{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;margin-bottom:1rem;padding:.6rem .75rem;display:flex}.cal-presets{gap:.3rem;display:flex}.cal-date{align-items:center;gap:.35rem;font-size:.75rem;display:flex}.cal-date input{background:var(--panel-2);border:1px solid var(--line-2);color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:8px;padding:.28rem .45rem;font-size:.76rem}.cal-date input:focus{border-color:var(--accent);outline:none}.cal-toggles{align-items:center;gap:.85rem;margin-left:auto;display:flex}.cal-toggle{color:var(--muted);cursor:pointer;align-items:center;gap:.35rem;font-size:.74rem;display:inline-flex}.cal-toggle span{align-items:center;gap:.25rem;display:inline-flex}.cal-toggle input{accent-color:var(--accent)}.cal-toggle:hover{color:var(--text)}.cal-days{flex-direction:column;gap:.65rem;display:flex}.cal-day-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;grid-template-columns:132px minmax(0,1fr);gap:.9rem;padding:.75rem .85rem;display:grid}.cal-day-card.weekend{background:var(--bg2)}.cal-day-card.today{box-shadow:inset 3px 0 0 var(--accent);border-color:#d8b46b73}.cal-date-col{align-items:flex-start;gap:.6rem;display:flex}.cal-date-badge{background:var(--panel-2);border:1px solid var(--line-2);border-radius:10px;flex-direction:column;flex-shrink:0;align-items:center;width:46px;padding:.3rem 0;display:flex}.cal-day-card.today .cal-date-badge{background:linear-gradient(180deg, var(--accent-2), var(--accent));border-color:var(--accent);color:#14110a}.cal-date-num{font-size:1.3rem;font-weight:700;line-height:1.05}.cal-date-mon{opacity:.8;font-size:.62rem}.cal-date-text{flex-direction:column;gap:.15rem;min-width:0;display:flex}.cal-date-text strong{font-size:.82rem}.cal-date-text .muted{font-size:.68rem}.cal-tag{color:#14110a;background:linear-gradient(180deg, var(--accent-2), var(--accent));border-radius:999px;align-self:flex-start;padding:.04rem .4rem;font-size:.6rem;font-weight:700}.cal-tiles{grid-template-columns:repeat(auto-fill,minmax(272px,1fr));align-content:start;gap:.4rem;display:grid}.cal-tile{background:var(--panel-2);text-align:left;color:inherit;cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:.55rem;padding:.45rem .55rem;transition:border-color .15s,background .15s,transform .15s;display:flex}.cal-tile:hover{border-color:var(--line-2);transform:translateY(-1px)}.cal-tile.starred{background:var(--surface-soft);border-color:#d8b46b59}.cal-logo{object-fit:contain;background:#fff;border-radius:6px;flex-shrink:0;width:26px;height:26px}.cal-logo-fallback{background:var(--line);color:var(--muted);place-items:center;font-size:.8rem;font-weight:700;display:grid}.cal-star{color:var(--accent);fill:currentColor}.cal-tile-main{flex:1;min-width:0}.cal-tile-top{align-items:center;gap:.35rem;display:flex}.cal-tile-top strong{font-size:.82rem;font-weight:700}.cal-slot{white-space:nowrap;border:1px solid var(--line-2);color:var(--muted);border-radius:4px;margin-left:auto;padding:.04rem .36rem;font-size:.58rem;font-weight:600}.cal-slot.bmo{color:#f6d08a;background:#f2994a1a;border-color:#f2994a66}.cal-slot.amc{color:#cbd5e1;background:#94a3b81a;border-color:#94a3b859}.cal-tile-name{text-overflow:ellipsis;white-space:nowrap;margin:.1rem 0 .2rem;font-size:.66rem;overflow:hidden}.cal-tile-nums{flex-wrap:wrap;align-items:baseline;gap:.15rem .55rem;font-size:.66rem;display:flex}.cal-tile-nums em{margin-left:.2rem;font-style:normal}.cal-tile-nums b{color:#c5cad6;font-weight:600}.cal-qtr{opacity:.75;margin-left:auto}.cal-skel-date{border-radius:10px;height:46px;display:block}.cal-skel-tile{border-radius:10px;height:54px;display:block}.cal-empty{text-align:center;padding:2.5rem 0}.cal-src{margin-top:.9rem;font-size:.68rem}@media (width<=860px){.cal-day-card{grid-template-columns:1fr;gap:.55rem}.cal-date-col{align-items:center}.cal-tiles{grid-template-columns:1fr}.cal-toggles{width:100%;margin-left:0}.cal-count{text-align:left}}.pie{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:.9rem 1.1rem;display:grid;container-type:inline-size}.pie-ring{width:150px;height:150px;position:relative}.pie-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.pie-track{fill:none;stroke:#94a3b81f;stroke-width:16px}.pie-arc{fill:none;stroke-width:16px;cursor:default;transition:stroke-dasharray .75s cubic-bezier(.22,1,.36,1),opacity .18s,stroke-width .18s}.pie-arc:hover{stroke-width:19px}.pie-arc.dim{opacity:.32}.pie-centre{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:0 1.9rem;display:flex;position:absolute;inset:0}.pie-centre strong{color:var(--text);font-size:1.15rem;line-height:1.1}.pie-centre span{color:var(--muted);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.15rem;font-size:.62rem;display:-webkit-box;overflow:hidden}.pie-key{gap:.1rem;margin:0;padding:0;list-style:none;display:grid}.pie-key li{border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.5rem;padding:.24rem .4rem;font-size:.76rem;transition:background-color .15s;display:grid}.pie-key li.on{background:var(--surface-soft)}.pie-key .dot{border-radius:50%;flex:none;width:9px;height:9px}.pie-label{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.pie-val{color:var(--muted);font-size:.72rem}@container (width<=400px){.pie-val{display:none}.pie-ring{width:124px;height:124px}.pie{grid-template-columns:124px minmax(0,1fr);gap:.7rem}.pie-centre{padding:0 1.5rem}.pie-centre strong{font-size:1rem}}.pie-pct{text-align:right;min-width:3.2rem}.seg-when{margin:.35rem 0 0;font-size:.66rem}.pie-key li.resid{opacity:.75}.pie-key li.resid .pie-label{font-style:italic}.pie-pair{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.2rem 1.8rem;display:grid}.sells{gap:.45rem;margin:.7rem 0 0;padding:0;list-style:none;display:grid}.sells li{border:1px solid var(--line);border-left:2px solid var(--accent);background:#94a3b80a;border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:.55rem;padding:.5rem .65rem;transition:border-color .18s,transform .18s;display:grid}.sells li:hover{border-color:var(--accent-deep);transform:translate(2px)}.sells .n{color:var(--muted);padding-top:.12rem;font-size:.66rem}.sells b{margin-bottom:.12rem;font-size:.82rem;display:block}.sells span{color:#b9bfcd;font-size:.78rem;line-height:1.55}.story-th{font-size:.88rem;line-height:1.85}.story-customers{color:var(--muted);margin-top:.7rem;font-size:.78rem;line-height:1.7}.story-src{margin-top:.6rem;font-size:.66rem}.biz-orig{border-top:1px solid var(--line);margin-top:.9rem;padding-top:.6rem}.biz-orig summary{cursor:pointer;color:var(--muted);font-size:.72rem;list-style:none}.biz-orig summary::-webkit-details-marker{display:none}.biz-orig summary:before{content:"\15 B8  "}.biz-orig[open] summary:before{content:"\15 BE  "}.biz-orig summary:hover{color:var(--accent)}.biz-orig p{margin-top:.5rem}@media (width<=560px){.pie{grid-template-columns:1fr;justify-items:center}.pie-key{width:100%}}.ins-verdict{border-left:3px solid var(--line);background:#94a3b80f;border-radius:8px;margin:0 0 .8rem;padding:.55rem .75rem;font-size:.84rem;line-height:1.7}.ins-verdict.up{border-left-color:var(--up)}.ins-verdict.down{border-left-color:var(--down)}.ins-verdict.flat{border-left-color:var(--muted)}.ins-windows{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.7rem;margin-bottom:.9rem;display:grid}.ins-win{border:1px solid var(--line);background:#94a3b808;border-radius:9px;padding:.55rem .7rem}.ins-win-h{color:var(--muted);letter-spacing:.03em;margin-bottom:.35rem;font-size:.68rem}.ins-win-row{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.4rem;padding:.12rem 0;font-size:.76rem;display:grid}.ins-win-row .k{color:var(--muted)}.ins-win-row em{color:var(--muted);text-align:right;grid-column:2;font-size:.64rem;font-style:normal}.ins-win-row.comp{border-top:1px dashed var(--line);opacity:.72;margin-top:.3rem;padding-top:.35rem}.ins-table{margin-bottom:.5rem}.ins-tag{white-space:nowrap;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.08rem .42rem;font-size:.68rem;display:inline-block}.ins-tag.buy{color:var(--up);background:#3ecf8e1a;border-color:#3ecf8e73}.ins-tag.sell{color:var(--down);background:#f2637f1a;border-color:#f2637f73}.ins-buy td{background:#3ecf8e0a}.ins-empty{padding:.7rem .2rem;font-size:.8rem}
