:root{--font-display: "Funnel Display", system-ui, sans-serif;--font-ui: "Radio Canada Big", system-ui, sans-serif;--font-figure: "Funnel Display", system-ui, sans-serif;--size-hero: 52px;--size-hero-phone: 38px;--size-row: 46px;--size-stripe: 4px;--size-stripe-card: 6px;--size-touch: 44px;--radius-button: 9px;--radius-panel: 6px;--radius-row: 10px;--radius-row-phone: 12px;--radius-chip: 999px;--radius-tag: 6px;--space-row-pad-x: 20px;--space-row-pad-x-phone: 14px;--space-edge: 24px;--space-edge-phone: 16px;--motion-arrive: .42s;--motion-arrive-ease: cubic-bezier(.2,.8,.2,1);--motion-arrive-drop: 12px;--motion-arrive-scale: .98;--motion-wash: 1.8s;--motion-digit-roll: .4s;--motion-blink: 2;--bg: #F3F4F0;--sheet: #FBFBF9;--rule: #D8DBD3;--grid: #E3E5DF;--ink: #15171A;--muted: #4F555D;--long: #006548;--short: #9C380C;--long-mark: #008C63;--short-mark: #D8531F;--hl: #FFD84D;--hl-fg: #15171A;--dusk-a: #E2EAF3;--dusk-b: #F6D6BD;--glow: rgba(255,140,60,.3);--heat: #E8962A;--heat-max: .22;--frame: #15171A;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0F1216;--sheet: #161A20;--rule: #262C34;--grid: #1A1F26;--ink: #EEF0F2;--muted: #9CA3AC;--long: #4CCB9D;--short: #FF8B5E;--long-mark: #1FA37A;--short-mark: #E4602E;--hl: #FFD84D;--hl-fg: #15171A;--dusk-a: #0F1620;--dusk-b: #24170F;--glow: rgba(255,160,80,.16);--heat: #FF9F2E;--heat-max: .25;--frame: #262C34;color-scheme:dark}}:root[data-theme=dark]{--bg: #0F1216;--sheet: #161A20;--rule: #262C34;--grid: #1A1F26;--ink: #EEF0F2;--muted: #9CA3AC;--long: #4CCB9D;--short: #FF8B5E;--long-mark: #1FA37A;--short-mark: #E4602E;--hl: #FFD84D;--hl-fg: #15171A;--dusk-a: #0F1620;--dusk-b: #24170F;--glow: rgba(255,160,80,.16);--heat: #FF9F2E;--heat-max: .25;--frame: #262C34;color-scheme:dark}@font-face{font-family:Funnel Display;src:url(/fonts/Funnel_Display.woff2) format("woff2");font-weight:300 800;font-display:swap}@font-face{font-family:Radio Canada Big;src:url(/fonts/Radio_Canada_Big.woff2) format("woff2");font-weight:400 700;font-display:swap}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}body{min-height:100dvh}a{color:inherit}.num{font-family:var(--font-figure);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.stripe{height:var(--size-stripe);background:linear-gradient(90deg,var(--long-mark),var(--hl) 50%,var(--short-mark));flex-shrink:0}.long{color:var(--long)}.short{color:var(--short)}.app{display:flex;flex-direction:column;min-height:100dvh}.top{height:64px;padding:0 var(--space-edge);display:flex;align-items:center;gap:28px;border-bottom:1px solid var(--rule)}.wordmark{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;font-size:22px;text-decoration:none}.search{display:flex;align-items:center;gap:8px;width:320px;height:40px;padding:0 12px;border:1px solid var(--rule);background:var(--sheet);border-radius:var(--radius-button);color:var(--muted)}.search input{border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:var(--ink);width:100%}.tabs{display:flex;gap:22px;font-size:14px}.tabs button{height:44px;display:flex;align-items:center;border:0;background:none;font:inherit;color:var(--muted);border-bottom:2px solid transparent;cursor:pointer;padding:0}.tabs button[aria-current=page]{font-weight:700;color:var(--ink);border-bottom-color:var(--ink)}.tabs button:disabled{cursor:default;opacity:.55}.spacer{flex-grow:1}.community{display:flex;gap:8px}.btn{height:36px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;border:1px solid var(--ink);border-radius:var(--radius-button);text-decoration:none;color:var(--ink);font-weight:700;font-size:14px;background:transparent;font-family:inherit;cursor:pointer}.btn.quiet{border-color:var(--rule);font-weight:600}.btn.solid{background:var(--ink);color:var(--bg);border-color:var(--ink)}.pulse{height:250px;padding:20px var(--space-edge);display:flex;gap:28px;background:radial-gradient(55% 95% at 100% 100%,var(--glow),transparent 70%),linear-gradient(90deg,var(--dusk-a),var(--dusk-b))}.pulse-side{width:300px;flex-shrink:0;display:flex;flex-direction:column;justify-content:space-between}.eyebrow{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.dot{width:8px;height:8px;border-radius:50%;background:var(--long-mark);display:block;animation:breathe 1.8s ease-in-out infinite}@keyframes breathe{50%{opacity:.45}}.hero{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;font-size:var(--size-hero);line-height:1}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;font-size:13px}.stats>div{display:flex;flex-direction:column}.stats .num{font-weight:600;font-size:16px}.pulse-main{flex-grow:1;min-width:0;display:flex;flex-direction:column;gap:8px}.pulse-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.pulse-head strong{font-size:14px;font-weight:600}.legend{display:flex;gap:14px;font-size:12px;color:var(--muted);flex-wrap:wrap}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:3px;display:block}.legend i.heat{width:34px;background:linear-gradient(90deg,var(--dusk-a),var(--heat));opacity:.8}.chart{position:relative;flex-grow:1;min-height:120px}.readout{position:absolute;top:4px;width:148px;padding:8px 12px;border-radius:9px;background:var(--sheet);border:1px solid var(--rule);font-family:var(--font-figure);font-size:11.5px;line-height:16px;pointer-events:none;z-index:3}.gapnote{font-size:12px;color:var(--muted)}.readout .sw{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px}main{flex-grow:1;display:flex;gap:24px;padding:16px var(--space-edge);min-height:0}.tape{flex:1 1 844px;min-width:0;padding:4px var(--space-row-pad-x);display:flex;flex-direction:column}.tape-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--rule);flex-wrap:wrap}.tape-head h2{margin:0;font-size:15px;font-weight:800}.filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.chip{height:32px;padding:0 12px;border-radius:var(--radius-chip);border:1px solid var(--rule);background:transparent;color:var(--ink);font:inherit;font-size:13px;font-weight:500;cursor:pointer}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink);font-weight:700}select.chip{padding-right:8px}.note{font-size:12px;color:var(--muted);padding:8px 0 4px}.row{display:grid;grid-template-columns:104px minmax(0,1fr) 180px 104px 116px;align-items:center;gap:12px;height:var(--size-row);padding:0 var(--space-row-pad-x);margin:0 calc(-1 * var(--space-row-pad-x));border-radius:var(--radius-row);border-bottom:1px solid var(--rule);font-size:13px;cursor:pointer;background:transparent;text-align:left;width:calc(100% + 2 * var(--space-row-pad-x));color:inherit;font-family:inherit;border-left:0;border-right:0;border-top:0}.row:hover,.row[aria-selected=true]{background:var(--sheet)}.row .t{font-size:12px;color:var(--muted)}.row .who{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .side{font-weight:700;font-size:12px;letter-spacing:.04em}.row .amt{text-align:right;font-size:15px;font-weight:700}.row.head{height:34px;cursor:default;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}.row.head:hover{background:transparent}.row .sym{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px}.row .sym .cat{font-size:11px}.pill{justify-self:start;font-weight:800;font-size:11.5px;letter-spacing:.06em;padding:4px 8px;border-radius:var(--radius-tag)}.pill.long{color:var(--long);background:color-mix(in srgb,var(--long-mark) 16%,transparent)}.pill.short{color:var(--short);background:color-mix(in srgb,var(--short-mark) 16%,transparent)}.logo{width:20px;height:20px;border-radius:50%;flex-shrink:0;object-fit:cover}.logo.mono{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:11px;color:var(--bg);background:var(--muted)}.logo.mono.stocks{background:var(--long-mark)}.logo.mono.commodities{background:var(--heat)}.logo.mono.indices{background:var(--short-mark)}.btn,.chip,.row,.tabs button{transition:transform 90ms ease-out,filter 90ms ease-out,background-color .12s}.btn:active,.chip:active,.tabs button:active{transform:scale(.96);filter:brightness(.9)}.row:not(.head):active{transform:scale(.995);background:color-mix(in srgb,var(--hl) 22%,var(--sheet))}.btn:focus-visible,.chip:focus-visible,.row:focus-visible,.tabs button:focus-visible{outline:2px solid var(--hl);outline-offset:2px}.tag{display:inline-block;background:var(--hl);color:var(--hl-fg);font-size:11px;font-weight:800;letter-spacing:.12em;padding:3px 7px;border-radius:var(--radius-tag);transform:rotate(-1deg)}.tag.blink{animation:blink .5s steps(1) 4}@keyframes blink{50%{opacity:0}}.fresh{animation:arrive var(--motion-arrive) var(--motion-arrive-ease),wash var(--motion-wash) ease-out}@keyframes arrive{0%{opacity:0;transform:translateY(calc(-1 * var(--motion-arrive-drop))) scale(var(--motion-arrive-scale))}}@keyframes wash{0%,23%{background:color-mix(in srgb,var(--hl) 90%,transparent);color:var(--hl-fg)}to{background:transparent}}.empty{padding:28px 0;color:var(--muted);font-size:14px}.more{margin:14px 0;align-self:flex-start}.panel{flex:0 1 524px;min-width:0;align-self:flex-start;display:flex;flex-direction:column;gap:16px;background:var(--sheet);border:1px solid var(--frame);border-radius:var(--radius-panel);padding:24px}.panel h2{margin:0;font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;font-size:30px;line-height:1.02;overflow-wrap:anywhere}.panel p{margin:0;font-size:14px;color:var(--muted);line-height:1.45}.legs{display:flex;flex-direction:column}.legs .h,.legs .r{display:grid;grid-template-columns:minmax(0,1fr) 96px 110px;gap:8px;align-items:center}.legs .h{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-bottom:6px;border-bottom:1px solid var(--rule)}.legs .r{height:38px;border-bottom:1px solid var(--rule);font-size:14px}.legs .r .num:last-child{text-align:right}.totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.totals>div{display:flex;flex-direction:column;gap:4px}.totals .num{font-size:22px;font-weight:700}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions .btn{height:var(--size-touch);padding:0 20px}footer{height:32px;padding:0 var(--space-edge);display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);border-top:1px solid var(--rule);gap:16px}@media(max-width:900px){.top{height:56px;padding:0 12px 0 var(--space-edge-phone);gap:8px}.top .search,.top .tabs,.top .community,.top .active{display:none}.phone-tabs{display:flex!important}.pulse{height:auto;margin:0 var(--space-edge-phone);padding:14px 14px 10px;flex-direction:column;gap:8px;border-radius:var(--radius-panel);border:1px solid var(--rule)}.pulse-side{width:auto;gap:8px}.hero{font-size:var(--size-hero-phone)}.pulse-head strong{display:none}.chart{height:130px;min-height:130px}.stripe.under{display:none}main{flex-direction:column;padding:12px var(--space-edge-phone)}.tape{padding:0 var(--space-row-pad-x-phone);flex:none}.row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who amt" "meta meta";height:auto;row-gap:4px;padding:12px var(--space-row-pad-x-phone);margin:0 calc(-1 * var(--space-row-pad-x-phone));border-radius:var(--radius-row-phone);width:calc(100% + 2 * var(--space-row-pad-x-phone))}.row .who{grid-area:who;font-size:15px;font-weight:700}.row .amt{grid-area:amt;font-size:15px;font-weight:600}.row .meta-phone{grid-area:meta;display:flex!important;gap:8px;font-size:12px;color:var(--muted)}.row .t,.row .sym,.row .side-col,.row.head{display:none}.legend{font-size:11px;gap:10px}.more{margin:12px 0}.panel{flex:none;align-self:stretch;padding:16px}.panel h2{font-size:22px}.totals .num{font-size:18px}footer{height:auto;padding:12px var(--space-edge-phone);flex-direction:column;align-items:flex-start;gap:4px}}.phone-tabs{display:none;gap:8px;padding:4px var(--space-edge-phone) 10px;overflow-x:auto}.phone-tabs .chip{height:36px;white-space:nowrap}.meta-phone{display:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
