.sidebar { position:fixed; inset:0 auto 0 0; width:210px; background:var(--nav); color:var(--nav-ink); z-index:20; padding:28px 18px 24px; display:flex; flex-direction:column; }
.brand { padding:0 10px 24px; color:var(--nav-ink); }
.sidebar-rule { height:1px; background:#343a3f; margin:8px 9px 22px; }
.sidebar-label { color:#9ea7ae; font-size:11px; font-weight:600; margin:0 12px 12px; letter-spacing:.7px; text-transform:uppercase; }
.nav-link { display:flex; align-items:center; gap:12px; padding:12px 11px; border-radius:4px; margin-bottom:4px; font-size:13px; }
.nav-link.active { background:#302820; color:#ff9b54; }
.nav-link:hover { background:#252c31; color:var(--nav-ink); }
.nav-link .icon { width:19px; height:19px; }
.sidebar nav { margin-bottom:18px; }
.sidebar-topics button { display:flex; justify-content:space-between; align-items:center; width:100%; border:0; background:transparent; color:#c0c7cc; padding:10px 12px; font-size:12px; }
.sidebar-topics button .icon { width:14px; height:14px; color:#8b979f; }
.sidebar-topics button:hover { color:#ff9b54; }
.sidebar-bottom { margin-top:auto; border-top:1px solid #343a3f; padding:21px 9px 0; display:flex; align-items:center; gap:12px; color:#c6cdd2; font-size:12px; }
.sidebar-bottom small { display:block; font-size:11px; margin-top:3px; color:#95a0a8; }
.site-shell { margin-left:210px; }
.topbar { position:sticky; top:0; z-index:10; background:var(--surface); border-bottom:1px solid var(--line); height:74px; padding:0 32px; display:flex; justify-content:space-between; gap:20px; align-items:center; }
.search-wrap { position:relative; display:flex; align-items:center; gap:10px; width:440px; min-width:180px; height:40px; background:var(--paper); border:1px solid var(--line); border-radius:var(--radius); padding:0 12px; color:var(--muted); }
.search-wrap input { border:0; outline:0; background:transparent; color:var(--ink); width:100%; min-width:0; font-size:12px; }
.search-wrap input::placeholder { color:var(--muted); opacity:1; }
.search-wrap .icon { width:17px; height:17px; }
.search-wrap kbd { border:1px solid var(--line); width:21px; height:23px; text-align:center; font-family:inherit; font-size:12px; border-radius:3px; }
.search-wrap:focus-within { border-color:var(--accent); }
.search-results { position:absolute; top:calc(100% + 8px); left:0; right:0; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:7px; box-shadow:var(--shadow); max-height:360px; overflow:auto; }
.search-results button { width:100%; text-align:left; padding:12px; border:0; border-radius:3px; background:transparent; line-height:1.4; font-size:13px; }
.search-results button:hover { background:var(--accent-soft); }
.search-results button span { display:block; color:var(--muted); font-size:11px; margin-top:4px; }
.search-results p { padding:12px; font-size:13px; }
.topbar-actions { display:flex; align-items:center; gap:14px; }
.language-control { display:flex; gap:8px; align-items:center; font-size:12px; }
.language-control select { max-width:110px; border:0; color:var(--ink); background:var(--surface); padding:7px 0; }
.mobile-menu,.mobile-brand,.nav-backdrop { display:none; }
main { max-width:1430px; margin:auto; padding:28px 32px 0; }
.page-intro { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:28px; }
.edition-label { font-size:11px; color:var(--accent); font-weight:700; margin-bottom:7px; }
.page-intro p { font-size:13px; margin-top:9px; color:var(--muted); }
.intro-link { font-size:12px; }
.market-section { margin-bottom:30px; }
.market-heading { margin-bottom:14px; }
.market-heading h2 { font-size:18px; }
.market-heading p { font-size:12px; }
.market-actions { display:flex; align-items:center; gap:7px; }
.currency-control select { height:34px; padding:4px 8px; border:1px solid var(--line); border-radius:var(--radius); color:var(--ink); background:var(--surface); font-size:12px; font-weight:600; }
.market-actions .icon-button { width:34px; height:34px; }
.market-actions .icon { width:17px; height:17px; }
.market-grid { display:grid; grid-template-columns:minmax(0,1.17fr) minmax(0,1fr); gap:16px; }
.market-list { min-width:0; overflow:hidden; }
.market-controls { display:flex; align-items:center; justify-content:space-between; padding:8px 13px; border-bottom:1px solid var(--line); min-height:40px; }
.market-controls select { font-size:11px; border:0; background:var(--surface); color:var(--muted); max-width:180px; }
.table-scroll { overflow:auto; }
.market-table { width:100%; border-collapse:collapse; white-space:nowrap; font-size:11px; }
.market-table th { font-size:10px; font-weight:500; color:var(--muted); text-align:right; padding:9px 13px; }
.market-table th:first-child { text-align:left; }
.market-table td { text-align:right; padding:6px 13px; height:33px; }
.market-table tbody tr { border-top:1px solid var(--line); }
.market-table tbody tr.selected { background:var(--accent-soft); }
.market-table tbody tr:hover { background:var(--paper); }
.market-table td:first-child { text-align:left; padding-right:4px; }
.coin-button { display:flex; align-items:center; gap:7px; border:0; background:transparent; padding:0; width:100%; text-align:left; }
.coin-rank { color:var(--muted); width:12px; font-size:10px; }
.coin-button img { width:20px; height:20px; object-fit:contain; }
.coin-button strong { font-size:11px; font-weight:600; }
.coin-button small { color:var(--muted); font-size:9px; margin-left:5px; }
.data-status { border-top:1px solid var(--line); padding:8px 13px; color:var(--muted); font-size:9px; min-height:31px; }
.market-error { text-align:left !important; white-space:normal; padding:30px 18px !important; height:340px !important; color:var(--muted); }
.market-error .text-button { margin-top:14px; }
.skeleton { display:block; height:10px; max-width:90px; background:var(--line); border-radius:3px; opacity:.7; }
.chart-panel { display:flex; flex-direction:column; padding:20px 20px 12px; min-width:0; }
.chart-identity { display:flex; align-items:center; gap:9px; font-size:13px; }
.chart-identity img { width:28px; height:28px; }
.chart-identity small { color:var(--muted); margin-left:4px; }
.chart-price { display:flex; gap:12px; align-items:baseline; margin-top:12px; }
.chart-price strong { font-size:28px; font-weight:600; letter-spacing:-.7px; }
.chart-price span { font-size:12px; }
.chart-period { display:flex; gap:7px; margin:18px 0 5px; }
.chart-period button { padding:4px 10px; border:0; background:transparent; border-radius:3px; color:var(--muted); font-size:11px; }
.chart-period button.active { background:var(--accent-soft); color:var(--accent); font-weight:700; }
.chart-wrap { position:relative; width:100%; flex:1; min-height:205px; }
.chart-wrap canvas { position:absolute; inset:0; display:block; width:100%; height:100%; }
.chart-empty { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--muted); padding:20px; text-align:center; }
.chart-empty:empty { display:none; }
.chart-footer { display:flex; justify-content:space-between; gap:12px; padding-top:8px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; }
.editorial-section { margin-bottom:36px; }
.editorial-top { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); gap:23px; margin-bottom:30px; }
.featured-guide { display:grid; grid-template-columns:1.05fr 1fr; min-height:270px; overflow:hidden; height:100%; }
.featured-copy { padding:24px; }
.featured-copy h2 { font-size:24px; line-height:1.2; letter-spacing:-.6px; margin-top:12px; }
.featured-copy p { margin:13px 0 20px; font-size:12px; line-height:1.6; color:var(--muted); }
.featured-copy .text-button { font-size:12px; }
.featured-guide > img { height:100%; width:100%; object-fit:cover; }
.latest-guides h2 { font-size:15px; border-bottom:2px solid var(--ink); padding-bottom:11px; }
.latest-item { display:grid; grid-template-columns:1fr 17px; gap:4px 8px; width:100%; text-align:left; padding:11px 0; border:0; border-bottom:1px solid var(--line); background:transparent; }
.latest-item span { font-size:10px; color:var(--muted); grid-column:1; }
.latest-item strong { font-size:12px; line-height:1.4; font-weight:600; grid-column:1; }
.latest-item .icon { width:16px; height:16px; grid-column:2; grid-row:1 / 3; align-self:center; color:var(--muted); }
.latest-item:hover strong { color:var(--accent); }
.section-line { flex:1; border-top:1px solid var(--line); margin-left:8px; }
.topic-tabs { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:21px; }
.topic-tabs button { border:1px solid var(--line); background:transparent; color:var(--muted); border-radius:var(--radius); padding:6px 12px; font-size:11px; }
.topic-tabs button.active { background:var(--ink); border-color:var(--ink); color:var(--surface); }
.article-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px 20px; }
.article-card { min-width:0; }
.article-image { border:0; background:transparent; padding:0; width:100%; overflow:hidden; border-radius:var(--radius); }
.article-image img { width:100%; aspect-ratio:1.95; object-fit:cover; }
.article-copy { padding-top:11px; }
.article-category { color:var(--accent); font-size:10px; font-weight:600; }
.article-copy h3 { margin:5px 0 7px; font-size:15px; line-height:1.35; }
.article-copy h3 button { padding:0; border:0; background:transparent; font:inherit; text-align:left; font-weight:600; }
.article-copy h3 button:hover { color:var(--accent); }
.article-copy p { font-size:12px; line-height:1.55; color:var(--muted); }
.article-meta { margin-top:12px; color:var(--muted); display:flex; justify-content:space-between; flex-wrap:wrap; gap:6px; font-size:10px; }
.platform-section { margin-bottom:32px; }
.platform-toolbar { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:15px; }
.platform-toolbar .topic-tabs { margin:0; }
.platform-toolbar .button { font-size:11px; }
.platform-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; }
.platform-card { padding:18px; display:flex; flex-direction:column; min-height:205px; }
.platform-card-top { display:flex; align-items:center; gap:10px; margin-bottom:13px; }
.platform-monogram { display:flex; align-items:center; justify-content:center; width:33px; height:33px; background:var(--ink); color:var(--surface); border-radius:var(--radius); font-size:18px; font-weight:700; }
.platform-card h3 { font-size:14px; }
.platform-card .platform-type { color:var(--muted); font-size:10px; }
.platform-card p { font-size:11px; line-height:1.5; margin:0 0 15px; color:var(--muted); }
.platform-card label { display:flex; align-items:center; gap:6px; font-size:10px; margin-top:auto; padding-top:4px; }
.platform-card input { accent-color:var(--accent); }
.platform-card a { display:flex; align-items:center; justify-content:space-between; gap:4px; margin-top:12px; padding-top:11px; border-top:1px solid var(--line); color:var(--accent); font-size:10px; }
.platform-card a .icon { width:14px; height:14px; }
.platform-note { color:var(--muted); font-size:11px; margin-top:12px; }
.comparison-table { width:100%; border-collapse:collapse; margin-top:24px; font-size:12px; }
.comparison-table td,.comparison-table th { padding:12px; text-align:left; border-bottom:1px solid var(--line); vertical-align:top; }
.comparison-table th { font-weight:600; }
.comparison-table a { color:var(--accent); display:inline-flex; gap:4px; align-items:center; }
.wallet-section { display:grid; grid-template-columns:1fr 1.8fr; overflow:hidden; margin-bottom:34px; }
.wallet-image img { height:100%; width:100%; object-fit:cover; }
.wallet-content { padding:25px 28px; }
.wallet-content > p { margin-top:7px; font-size:12px; }
.wallet-products { display:grid; grid-template-columns:1fr 1fr; gap:25px; margin-top:22px; }
.wallet-product-title { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; }
.wallet-product-title a { font-size:10px; color:var(--accent); display:flex; align-items:center; gap:3px; }
.wallet-product-title a .icon { width:13px; height:13px; }
.wallet-type { color:var(--muted); font-size:10px; }
.wallet-products p { font-size:12px; margin-top:10px; line-height:1.6; }
.tools-section { margin-bottom:34px; }
.tools-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.tool-card { display:flex; align-items:center; gap:12px; border:1px solid var(--line); border-radius:var(--radius); padding:17px 16px; background:var(--surface); text-align:left; }
.tool-card:hover { border-color:var(--accent); }
.tool-card strong { display:block; font-size:12px; }
.tool-card small { display:block; font-size:10px; color:var(--muted); margin-top:4px; }
.tool-card > .icon { width:15px; height:15px; margin-left:auto; align-self:flex-start; color:var(--muted); }
.tool-icon { display:flex; align-items:center; justify-content:center; background:var(--accent-soft); color:var(--accent); width:34px; height:38px; border-radius:var(--radius); flex-shrink:0; }
.local-section { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:26px 0; margin-bottom:30px; }
.local-heading { display:flex; gap:9px; align-items:center; }
.local-heading h2 { font-size:17px; }
.local-heading .icon { color:var(--accent); }
.local-section > p { font-size:12px; color:var(--muted); max-width:850px; margin-top:10px; }
.local-links { display:flex; gap:18px; flex-wrap:wrap; margin-top:13px; }
.local-links a { display:flex; align-items:center; gap:5px; color:var(--accent); font-size:11px; }
.local-links .icon { width:13px; height:13px; }
.footer { display:flex; align-items:flex-start; justify-content:space-between; gap:30px; padding-bottom:30px; }
.footer .wordmark { font-size:23px; }
.footer p { max-width:620px; font-size:10px; color:var(--muted); margin-top:10px; }
.footer-links { display:flex; gap:18px; align-items:center; padding-top:6px; }
.footer-links button { border:0; padding:0; background:transparent; color:var(--muted); font-size:11px; white-space:nowrap; }
.footer-links button:hover { color:var(--accent); }
