:root { --finance-accent:#7637cc; --finance-tint:#eee5fa; }
:root.dark-mode { --finance-accent:#c698ff; --finance-tint:#49345f; }
html { scroll-behavior:smooth; }
.finance-page { width:min(100%,1420px); padding:0 36px 36px; }
.topbar { max-width:1420px; }
.finance-hero { padding:40px 0 30px; display:flex; justify-content:space-between; align-items:flex-end; gap:24px; }
.finance-hero h1 { font-size:clamp(38px,5vw,58px); margin-bottom:14px; }
.finance-hero .subtitle { margin:0; max-width:none; }
.section-nav { display:flex; gap:24px; padding-bottom:6px; font-size:13px; white-space:nowrap; }
.section-nav a { color:var(--muted); text-decoration:none; }
.section-nav a:first-child { color:var(--finance-accent); }
.section-nav a:hover { text-decoration:underline; }
.lookup-panel { margin:0 0 26px; }
.lookup-panel .search-row { max-width:none; border-radius:18px; box-shadow:none; padding:8px 10px 8px 22px; }
.lookup-panel .primary { white-space:nowrap; flex-shrink:0; border-radius:12px; background:var(--finance-accent); color:var(--panel); }
.hint { color:var(--muted); font-size:12px; line-height:1.6; margin:10px 0; }
#saveStatus:empty { display:none; }
.favourites-row { display:flex; gap:16px; align-items:center; margin-top:18px; }
.favourites-row .eyebrow { margin:0; font-size:10px; }
.favourites { display:flex; flex-wrap:wrap; gap:8px; }
.favourite { display:flex; background:var(--panel); border:1px solid var(--line); border-radius:10px; overflow:hidden; }
.favourite button { border:0; background:transparent; color:var(--text); font-size:12px; padding:8px 12px; }
.favourite button:last-child { color:var(--muted); padding:8px; border-left:1px solid var(--line); }
.favourite button:hover { background:var(--finance-tint); }
.lookup-results { margin-top:10px; padding:8px; background:var(--panel); border:1px solid var(--line); border-radius:18px; }
.lookup-result { display:flex; align-items:center; gap:8px; border-bottom:1px solid var(--line); }
.lookup-result:last-child { border:0; }
.lookup-result .choose-symbol { flex:1; min-width:0; border:0; background:transparent; text-align:left; padding:12px; color:var(--text); }
.lookup-result .choose-symbol:hover { background:var(--soft); border-radius:10px; }
.lookup-result strong { display:block; font-weight:500; font-size:14px; }
.lookup-result small { font-size:11px; color:var(--muted); }
.lookup-result .save-symbol { padding:8px 12px; font-size:12px; }
.lookup-empty { padding:8px 12px; color:var(--muted); font-size:13px; }
.dashboard { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(330px,1fr); gap:22px; }
.panel { min-width:0; background:var(--panel); border:1px solid var(--line); border-radius:24px; padding:24px; scroll-margin-top:20px; }
.panel-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.panel-heading .eyebrow { font-size:10px; margin:0 0 6px; }
.panel h2 { font-family:Montserrat,sans-serif; font-weight:400; font-size:23px; letter-spacing:-.6px; line-height:1.3; margin:0; }
.panel-note { margin:12px 0 20px; font-size:12px; color:var(--muted); }
.panel-mark { font-size:28px; color:var(--finance-accent); }
.widget { position:relative; min-width:0; }
.chart-widget,.market-widget { height:512px; }
.tradingview-widget-container { width:100%; height:100%; }
.tradingview-widget-container__widget { height:calc(100% - 32px); width:100%; }
.tradingview-widget-copyright { font-size:11px; text-align:center; line-height:28px; color:var(--muted); }
.widget-help { margin:14px 0 0; color:var(--muted); font-size:11px; line-height:1.7; }
.widget-help a { white-space:nowrap; }
.widget-error { display:grid; align-content:center; justify-items:center; gap:14px; height:100%; padding:24px; text-align:center; color:var(--muted); font-size:14px; border-radius:12px; background:var(--soft); }
.widget-error p { margin:0; }
.widget-error button { background:var(--panel); }
.currency-panel { margin-top:22px; }
.currency-badge { padding:8px 12px; background:var(--finance-tint); border-radius:12px; color:var(--finance-accent); font-size:14px; letter-spacing:.08em; }
.currency-layout { display:grid; grid-template-columns:270px minmax(0,1fr); gap:36px; margin-top:24px; }
.currency-intro { padding:20px 24px; background:var(--finance-tint); border-radius:18px; }
.currency-intro h3 { margin:0 0 14px; font-family:Montserrat,sans-serif; font-size:22px; font-weight:400; line-height:1.4; letter-spacing:-.6px; }
.currency-intro p { font-size:13px; color:var(--muted); }
.currency-intro label { display:block; font-size:11px; margin:12px 0 4px; color:var(--muted); }
.currency-intro select { width:100%; min-height:42px; padding:8px; border-radius:9px; border:1px solid var(--line); background:var(--panel); color:var(--text); font:inherit; font-size:13px; }
.currency-intro .primary { margin-top:16px; width:100%; padding:10px; border-radius:10px; font-size:12px; }
.currency-widget { height:454px; }
@media(max-width:1000px) { .finance-hero { align-items:flex-start; flex-direction:column; gap:20px; } .dashboard { grid-template-columns:minmax(0,1fr); } .market-widget { height:430px; } .currency-layout { grid-template-columns:220px minmax(0,1fr); gap:20px; } }
@media(max-width:600px) { .finance-page { padding:0 16px 28px; } .finance-hero { padding:26px 4px; } .finance-hero .subtitle { font-size:14px; } .home-link { display:none; } .topbar { padding:20px; } .section-nav { gap:22px; } .lookup-panel .search-row { padding-left:14px; gap:8px; } .lookup-panel .search-row input { font-size:16px; } .lookup-panel .primary { padding:9px 12px; font-size:12px; flex-shrink:0; } .favourites-row { align-items:flex-start; flex-direction:column; gap:8px; } .panel { border-radius:18px; padding:18px 12px; } .panel-heading,.panel-note { padding:0 4px; } .panel h2 { font-size:21px; } .panel-heading .text-button { font-size:11px; } .chart-widget { height:460px; } .currency-layout { grid-template-columns:minmax(0,1fr); gap:20px; } .currency-intro { display:grid; grid-template-columns:1fr 1fr; gap:6px 12px; padding:20px; } .currency-intro h3,.currency-intro p,.currency-intro .primary { grid-column:1/-1; } .currency-intro h3 br { display:none; } .currency-intro label[for="baseCurrency"] { grid-column:1; grid-row:3; } .currency-intro label[for="quoteCurrency"] { grid-column:2; grid-row:3; } .currency-intro select { grid-row:4; } .currency-widget { height:440px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.cad-ticker { margin:6px 0 0; padding:14px 16px 4px; border:1px solid var(--line); border-radius:18px; background:var(--panel); min-width:0; }
.cad-ticker-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 4px 12px; }
.cad-ticker-heading h2 { margin:0; font-size:12px; font-weight:500; }
.cad-ticker-heading span { font-size:11px; color:var(--muted); }
.cad-ticker-widget { min-height:78px; }
.cad-ticker-widget .tradingview-widget-container__widget { height:auto; }
/* Crop the provider's square 1px border; draw a continuous rounded border around the strip. */
.cad-ticker-widget .tradingview-widget-container { height:auto !important; }
.cad-ticker-frame { height:60px; border:1px solid var(--line); border-radius:12px; overflow:hidden; isolation:isolate; }
.cad-ticker-frame iframe { display:block; width:calc(100% + 2px) !important; height:calc(100% + 2px) !important; max-width:none; margin:-1px; }
.cad-ticker-widget .widget-error { min-height:110px; gap:8px; padding:12px; }
@media(max-width:600px) { .cad-ticker { padding:12px 8px 2px; } .cad-ticker-heading { align-items:flex-start; flex-direction:column; gap:3px; } }
