:root { --page: #f7f7f8; --paper: #fff; --ink: #151719; --muted: #858688; --line: #dedfe1; --purple: #5438d7; --green: #109a6d; } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; color: var(--ink); background: var(--page); font-family: Arial, Helvetica, sans-serif; transition: color .25s, background .25s; } a { color: inherit; text-decoration: none; } button, input, textarea { font: inherit; } .route-header { display: flex; min-height: 78px; padding: 0 clamp(24px, 6vw, 88px); align-items: center; gap: 32px; border-bottom: 1px solid var(--line); background: var(--paper); } .route-brand { display: inline-flex; align-items: center; gap: 11px; font-size: 26px; font-weight: 800; letter-spacing: -1.7px; white-space: nowrap; } .route-mark { width: 29px; height: 27px; background: url('brand-mark.svg') center / contain no-repeat; } .route-nav { display: flex; margin-left: auto; gap: clamp(16px, 2.5vw, 34px); color: #525457; font-size: 13px; font-weight: 600; } .route-nav a:hover { color: var(--ink); } .route-main { width: min(1240px, calc(100% - 48px)); margin: 0 auto; padding: clamp(54px, 8vw, 118px) 0 86px; } .route-hero { max-width: 925px; } .eyebrow { margin: 0 0 17px; color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; } h1 { max-width: 950px; margin: 0; font-size: clamp(47px, 7.5vw, 100px); letter-spacing: -.08em; line-height: .88; } .route-intro { max-width: 770px; margin: 31px 0 0; color: #55585a; font-size: clamp(17px, 2vw, 23px); line-height: 1.4; } .route-actions { display: flex; flex-wrap: wrap; margin-top: 31px; gap: 12px; } .route-button { display: inline-flex; padding: 13px 17px; align-items: center; gap: 30px; color: var(--paper); background: var(--ink); font-size: 13px; font-weight: 700; } .route-button.secondary { color: var(--ink); border: 1px solid var(--ink); background: transparent; } .route-grid { display: grid; margin-top: 65px; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; } .route-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); } .route-card { min-height: 200px; padding: 23px; border: 1px solid var(--line); background: var(--paper); } .route-card .card-tag { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .13em; } .route-card h2 { margin: 34px 0 13px; font-size: clamp(26px, 3vw, 42px); letter-spacing: -.06em; line-height: .94; } .route-card p { margin: 0; color: #686a6d; font-size: 15px; line-height: 1.42; } .route-card a { display: inline-block; margin-top: 23px; padding-bottom: 5px; border-bottom: 1px solid var(--ink); font-size: 12px; font-weight: 700; } .data-panel { display: grid; margin-top: 64px; grid-template-columns: 245px minmax(0, 1fr); overflow: hidden; border: 1px solid var(--line); background: var(--paper); } .data-panel aside { padding: 26px; border-right: 1px solid var(--line); } .data-panel aside p { margin: 0 0 19px; color: var(--muted); font-size: 12px; font-weight: 700; } .data-panel aside a { display: block; padding: 11px 0; color: #626467; border-top: 1px solid var(--line); font-size: 13px; } .data-content { padding: 28px; } .metric-row { display: grid; padding: 19px 0; grid-template-columns: 2fr 1fr 1fr; border-bottom: 1px solid var(--line); } .metric-row b { font-size: 15px; } .metric-row span { color: var(--muted); text-align: right; } .metric-row strong { color: var(--green); text-align: right; } .stack { display: grid; margin-top: 64px; gap: 14px; } .stack article { padding: 27px; border: 1px solid var(--line); background: var(--paper); } .stack h2 { margin: 0 0 13px; font-size: clamp(28px, 3vw, 48px); letter-spacing: -.06em; line-height: .95; } .stack p { max-width: 830px; margin: 0; color: #55585a; font-size: 16px; line-height: 1.52; } .form-card { display: grid; max-width: 770px; margin-top: 57px; padding: 27px; gap: 13px; border: 1px solid var(--line); background: var(--paper); } .form-card input, .form-card textarea { width: 100%; padding: 14px; color: var(--ink); border: 1px solid var(--line); border-radius: 0; background: #fbfbfb; } .form-card textarea { min-height: 125px; resize: vertical; } .form-card button { justify-self: start; padding: 13px 19px; color: var(--paper); border: 0; background: var(--ink); font-size: 13px; font-weight: 700; } .form-note { color: var(--green); font-size: 13px; } .alphabet { display: flex; flex-wrap: wrap; margin-top: 55px; gap: 8px; } .alphabet a { display: grid; width: 31px; height: 31px; place-items: center; border: 1px solid var(--line); font-size: 12px; font-weight: 700; } .glossary-list { margin-top: 38px; } .glossary-list article { padding: 26px 0; border-top: 1px solid var(--line); } .glossary-list h2 { margin: 0 0 9px; font-size: 26px; letter-spacing: -.04em; } .glossary-list p { max-width: 760px; margin: 0; color: #5a5c5e; line-height: 1.48; } .route-footer { display: grid; padding: 42px max(24px, calc((100% - 1240px) / 2)); grid-template-columns: 2fr 1fr 1fr 1fr; gap: 34px; color: var(--ink); border-top: 1px solid var(--line); background: var(--paper); } .route-footer .footer-lockup { display: inline-flex; align-items: center; gap: 10px; font-size: 23px; font-weight: 800; letter-spacing: -1.35px; } .route-footer .footer-lockup i { width: 25px; height: 24px; background: url('brand-mark.svg') center / contain no-repeat; } .route-footer h3 { margin: 0 0 13px; font-size: 12px; } .route-footer a { display: block; margin: 0 0 9px; color: var(--muted); font-size: 12px; } @media (max-width: 800px) { .route-nav { display: none; } .route-grid, .route-grid.two { grid-template-columns: 1fr; } .data-panel { grid-template-columns: 1fr; } .data-panel aside { border-right: 0; border-bottom: 1px solid var(--line); } .route-footer { grid-template-columns: 2fr 1fr 1fr; } } @media (max-width: 540px) { .route-header { min-height: 61px; padding-inline: 20px; } .route-brand { font-size: 22px; } .route-mark { width: 25px; height: 23px; } .route-main { width: calc(100% - 40px); padding-top: 49px; } h1 { font-size: 48px; } .route-intro { font-size: 17px; } .route-grid, .stack, .data-panel { margin-top: 43px; } .route-footer { padding: 35px 20px; grid-template-columns: 1fr 1fr; } .route-footer .footer-lockup { grid-column: 1 / -1; } }

/* Theme values are shared by all locally copied destination pages. */
body.route-dark { --page: #141719; --paper: #1d2022; --ink: #f1f2ef; --muted: #a7aaa7; --line: #3d4142; --green: #5bdba6; }
body.route-dark .route-nav, body.route-dark .route-intro, body.route-dark .route-card p, body.route-dark .stack p, body.route-dark .glossary-list p, body.route-dark .data-panel aside a { color: #b7babc; }
body.route-dark .route-control, body.route-dark .route-menu-toggle { color: #f1f2ef; background: #303336; }
body.route-dark .route-mark, body.route-dark .route-menu-brand i, body.route-dark .site-footer .brand-mark { background: #f1f2ef !important; -webkit-mask: url('brand-mark.svg') center / contain no-repeat; mask: url('brand-mark.svg') center / contain no-repeat; }
body.route-dark .route-search-drawer { border-color: var(--line); background: var(--paper); box-shadow: 0 18px 35px rgba(0,0,0,.35); }
body.route-dark .route-search-drawer input { color: var(--ink); border-color: var(--line); background: #25282a; }
body.route-dark .form-card input, body.route-dark .form-card textarea { background: #25282a; }
body.route-dark .site-footer { color: var(--ink); background: #111315; }
body.route-dark .site-footer .footer-brand, body.route-dark .site-footer .footer-brand b, body.route-dark .site-footer .footer-links h3, body.route-dark .footer-social a { color: var(--ink); }
body.route-dark .site-footer .footer-identity p, body.route-dark .site-footer .footer-links a { color: var(--muted); }
body.route-dark .route-menu-panel { color: var(--ink); background: var(--paper); }
body.route-dark .route-menu-head, body.route-dark .route-menu-group, body.route-dark .route-menu-direct { border-color: var(--line); }
body.route-dark .route-menu-brand, body.route-dark .route-menu-close, body.route-dark .route-menu-group button, body.route-dark .route-menu-direct { color: var(--ink); }
body.route-dark .route-menu-icon { background: #303336; }

.security-brief { display: grid; max-width: 900px; margin-top: 64px; gap: 14px; }
.security-brief > article, .security-note { padding: 30px; border: 1px solid var(--line); background: var(--paper); }
.security-brief-lead { border-color: #d8c850 !important; background: #fffcdd !important; }
.security-brief-lead > span { color: #7f7100; font-size: 11px; font-weight: 800; letter-spacing: .14em; }
.security-brief h2 { margin: 12px 0 14px; font-size: clamp(27px, 3vw, 43px); letter-spacing: -.06em; line-height: .94; }
.security-brief p { max-width: 760px; margin: 0; color: #55585a; font-size: 16px; line-height: 1.55; }
.security-note { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 15px 20px; }
.security-note b { color: #a54a30; font-size: 12px; letter-spacing: .13em; text-transform: uppercase; }
.security-note p { flex: 1 1 560px; }
.security-note .route-button { margin-left: auto; }
body.route-dark .security-brief-lead { border-color: #716816 !important; background: #26261e !important; }
body.route-dark .security-brief-lead > span { color: #e5d964; }
body.route-dark .security-brief p { color: #b7babc; }
body.route-dark .security-note b { color: #ff997d; }
@media (max-width: 540px) { .security-brief { margin-top: 43px; }.security-brief > article, .security-note { padding: 21px; }.security-note .route-button { margin-left: 0; } }

.vault-article { max-width: 900px; }
.vault-article-head { padding-bottom: 39px; border-bottom: 1px solid var(--line); }
.vault-article-head > p { margin: 0 0 9px; color: var(--muted); font-size: 13px; letter-spacing: .1em; }
.vault-article-head > span, .vault-article-head > small { display: block; color: var(--muted); font-size: 13px; font-weight: 700; letter-spacing: .08em; }
.vault-article-head > small { margin-top: 28px; color: var(--green); }
.vault-article-head h1 { max-width: 820px; margin: 19px 0 24px; font-size: clamp(42px, 6vw, 76px); letter-spacing: -.075em; line-height: .93; }
.vault-article-head > strong { display: block; max-width: 725px; color: #55585a; font-size: 20px; font-weight: 500; line-height: 1.45; }
.vault-article-head > div { margin-top: 31px; color: var(--muted); font-size: 13px; }
.vault-article-head > div i { margin: 0 13px; font-style: normal; }
.vault-article-copy { max-width: 760px; padding-top: 38px; }
.vault-article-copy > p { margin: 0 0 24px; color: #4f5255; font-size: 18px; line-height: 1.7; }
.vault-article-copy h2 { margin: 44px 0 17px; font-size: clamp(27px, 3vw, 38px); letter-spacing: -.055em; line-height: 1; }
.vault-article-copy blockquote { margin: 34px 0 39px; padding: 21px 25px; color: #4c4f52; border-left: 3px solid #c6b529; background: #f5f3df; font-family: Georgia, serif; font-size: 19px; font-style: italic; line-height: 1.55; }
.vault-article-copy cite { display: block; margin-top: 8px; color: #777a7d; font-family: Arial, Helvetica, sans-serif; font-size: 13px; font-style: normal; }
.vault-alert { margin: 40px 0 30px; padding: 26px 29px; border: 1px solid #e5d36a; background: #fffde9; }
.vault-alert h2 { margin: 0 0 20px; color: #4b4210; font-size: 22px; }
.vault-alert ul { display: grid; margin: 0; padding: 0; gap: 13px; list-style: none; }
.vault-alert li { position: relative; padding-left: 22px; color: #4f5255; font-size: 16px; line-height: 1.45; }
.vault-alert li::before { position: absolute; top: .33em; left: 0; width: 8px; height: 8px; border-radius: 50%; background: #bd9e27; content: ''; }
.vault-tool { display: grid; margin-top: 35px; padding: 25px; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 17px; align-items: center; border: 1px solid var(--line); background: var(--paper); }
.vault-tool > i { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 50%; background: #e8f7ee; font-size: 24px; font-style: normal; }
.vault-tool h2 { margin: 0 0 5px; font-size: 22px; }
.vault-tool p { margin: 0; color: #65686b; font-size: 14px; line-height: 1.4; }
.vault-tool button { padding: 12px 16px; color: #96999b; border: 1px solid #d6d7d8; background: #f3f3f4; font-size: 13px; font-weight: 700; cursor: not-allowed; }
.vault-tags { margin-top: 29px !important; color: var(--green) !important; font-size: 14px !important; font-weight: 700; }
.vault-disclaimer { padding-top: 20px; color: var(--muted) !important; border-top: 1px solid var(--line); font-size: 13px !important; }
body.route-dark .vault-article-head > strong, body.route-dark .vault-article-copy > p, body.route-dark .vault-alert li, body.route-dark .vault-tool p { color: #b7babc; }
body.route-dark .vault-article-copy blockquote { color: #d3d4d0; background: #2c2c20; }
body.route-dark .vault-alert { border-color: #716816; background: #29291f; }
body.route-dark .vault-alert h2 { color: #e6db7c; }
body.route-dark .vault-tool > i { background: #20372e; }
body.route-dark .vault-tool button { color: #85888b; border-color: #44484b; background: #2b2e31; }
@media (max-width: 540px) { .vault-article-head { padding-bottom: 29px; }.vault-article-head > strong { font-size: 17px; }.vault-article-copy { padding-top: 29px; }.vault-article-copy > p { font-size: 16px; }.vault-article-copy blockquote, .vault-alert { margin-block: 27px; padding: 19px; font-size: 16px; }.vault-tool { padding: 19px; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; }.vault-tool > i { width: 40px; height: 40px; }.vault-tool button { grid-column: 1 / -1; width: 100%; }.vault-tool h2 { font-size: 18px; } }

/* VaultGuard security brief: editorial reading layout. */
body[data-route="vaultguard"] { background: #edf0ed; }
body[data-route="vaultguard"] .route-main { width: min(1120px, calc(100% - 48px)); padding-top: clamp(42px, 6vw, 78px); }
.vault-article { position: relative; max-width: none; padding-bottom: 34px; }
.vault-article-head { position: relative; isolation: isolate; min-height: 500px; padding: clamp(31px, 5.6vw, 70px); overflow: hidden; color: #f7f7f1; border: 1px solid #202624; background: #15221e; box-shadow: 0 20px 50px rgba(20, 33, 28, .16); }
.vault-article-head::before { position: absolute; z-index: -1; top: -190px; right: -105px; width: 540px; height: 540px; border: 1px solid rgba(218, 234, 130, .28); border-radius: 50%; box-shadow: 0 0 0 60px rgba(218, 234, 130, .04), 0 0 0 120px rgba(218, 234, 130, .025); content: ''; }
.vault-article-head::after { position: absolute; z-index: -1; right: clamp(20px, 5vw, 68px); bottom: -54px; color: rgba(220, 235, 141, .13); content: '47'; font-size: clamp(210px, 32vw, 390px); font-weight: 800; letter-spacing: -.15em; line-height: .8; }
.vault-article-head > p { display: inline-flex; width: max-content; margin: 0 0 14px; padding: 8px 11px; color: #17221e; background: #ddeb4d; font-size: 11px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.vault-article-head > p b { margin-left: 4px; font-weight: 800; }
.vault-article-head > span { color: #a9b7ae; font-size: 13px; font-weight: 700; letter-spacing: .14em; }
.vault-article-head > small { margin-top: 43px; color: #ddeb4d; font-size: 12px; font-weight: 800; letter-spacing: .13em; }
.vault-article-head h1 { max-width: 745px; margin: 19px 0 25px; color: #f7f7f1; font-size: clamp(45px, 6.2vw, 82px); letter-spacing: -.085em; line-height: .88; }
.vault-article-head > strong { max-width: 635px; color: #c7d2cc; font-size: clamp(17px, 1.8vw, 22px); font-weight: 500; line-height: 1.43; }
.vault-article-head > div { position: absolute; bottom: 31px; left: clamp(31px, 5.6vw, 70px); color: #a9b7ae; font-size: 12px; letter-spacing: .04em; }
.vault-article-copy { position: relative; max-width: 910px; margin: -1px auto 0; padding: clamp(30px, 6vw, 70px); border: 1px solid var(--line); background: var(--paper); box-shadow: 0 20px 45px rgba(22, 29, 25, .08); }
.vault-article-copy > p { max-width: 745px; margin: 0 auto 29px; color: #3f4743; font-size: clamp(16px, 1.65vw, 19px); line-height: 1.78; }
.vault-article-copy > p:first-child { font-size: clamp(18px, 1.95vw, 22px); line-height: 1.65; }
.vault-article-copy h2 { max-width: 745px; margin: 53px auto 19px; color: #18221e; font-size: clamp(27px, 3.1vw, 42px); letter-spacing: -.065em; line-height: .98; }
.vault-article-copy blockquote { max-width: 745px; margin: 43px auto 47px; padding: 25px 30px; color: #24342c; border: 0; border-left: 3px solid #aac022; background: #f0f3df; font-size: clamp(18px, 1.7vw, 21px); line-height: 1.55; }
.vault-article-copy cite { color: #68756e; }
.vault-alert { max-width: 745px; margin: 47px auto 34px; padding: 30px 31px; border: 1px solid #dbcf79; background: linear-gradient(135deg, #fffcec, #f7f1c8); }
.vault-alert h2 { color: #514813; font-size: clamp(22px, 2.1vw, 28px); line-height: 1.15; }
.vault-alert ul { gap: 15px; }
.vault-alert li { color: #53523d; font-size: 16px; }
.vault-alert li::before { width: 9px; height: 9px; background: #b99d1f; }
.vault-tool { max-width: 745px; margin: 41px auto 0; padding: 25px 28px; border: 1px solid #b5c4b9; background: #e9f1eb; box-shadow: inset 0 0 0 4px rgba(255, 255, 255, .4); }
.vault-tool > i { background: #163f32; box-shadow: 0 5px 10px rgba(19, 57, 45, .17); }
.vault-tool h2 { color: #17251e; letter-spacing: -.03em; }
.vault-tool p { color: #506359; }
.vault-tool button { min-width: 122px; color: #283526; border: 0; background: #ddeb4d; box-shadow: none; }
.vault-tags { max-width: 745px; margin: 32px auto 27px !important; padding: 0; color: #1d7555 !important; font-size: 13px !important; letter-spacing: .04em; }
.vault-disclaimer { max-width: 745px; margin: 0 auto !important; padding-top: 23px; color: #7a817d !important; }
body.route-dark[data-route="vaultguard"] { background: #101513; }
body.route-dark .vault-article-head { border-color: #33423b; background: #0f1b17; box-shadow: 0 20px 50px rgba(0, 0, 0, .35); }
body.route-dark .vault-article-copy { box-shadow: 0 20px 45px rgba(0, 0, 0, .28); }
body.route-dark .vault-article-copy > p, body.route-dark .vault-article-copy h2 { color: #e8ece8; }
body.route-dark .vault-article-copy blockquote { color: #dce6dc; background: #26342c; }
body.route-dark .vault-alert { border-color: #716816; background: #302f20; }
body.route-dark .vault-alert h2 { color: #eee38c; }
body.route-dark .vault-alert li { color: #dbdec4; }
body.route-dark .vault-tool { border-color: #395347; background: #1b2b24; box-shadow: inset 0 0 0 4px rgba(255, 255, 255, .03); }
body.route-dark .vault-tool h2 { color: #f1f5ef; }
body.route-dark .vault-tool p { color: #c3d0c6; }
body.route-dark .vault-tool button { color: #1b261d; background: #ddeb4d; }
@media (max-width: 540px) { body[data-route="vaultguard"] .route-main { width: calc(100% - 32px); padding-top: 25px; }.vault-article-head { min-height: 448px; padding: 27px 23px; }.vault-article-head::after { right: 20px; bottom: -22px; font-size: 235px; }.vault-article-head > small { margin-top: 35px; }.vault-article-head h1 { font-size: 44px; }.vault-article-head > div { right: 23px; bottom: 24px; left: 23px; font-size: 10px; line-height: 1.5; }.vault-article-head > div i { margin-inline: 8px; }.vault-article-copy { padding: 28px 21px; }.vault-article-copy > p { font-size: 16px; }.vault-article-copy > p:first-child { font-size: 18px; }.vault-article-copy h2 { margin-top: 38px; font-size: 29px; }.vault-article-copy blockquote { padding: 20px; font-size: 17px; }.vault-alert { padding: 22px 20px; }.vault-tool { padding: 20px; }.vault-tags { line-height: 1.65; } }

/* Local article page: follow the Blockworks news reading structure. */
body[data-route="vaultguard"] { background: #f7f7f8; }
body[data-route="vaultguard"] .route-main { width: min(760px, calc(100% - 44px)); padding-top: 34px; }
.vault-ticker { overflow: hidden; color: #3e4245; border-bottom: 1px solid var(--line); background: var(--paper); }
.vault-price-ticker { display: flex; width: 100%; height: 63px; padding: 0 30px; overflow: hidden; align-items: center; justify-content: center; gap: 14px; font-size: 15px; font-weight: 700; white-space: nowrap; }
.vault-data-ticker { width: 100%; overflow: hidden; white-space: nowrap; }
.vault-price-ticker span:nth-child(1) { color: #ee8718; }.vault-price-ticker span:nth-child(2) { color: #65739b; }.vault-price-ticker span:nth-child(3) { color: #d69b05; }.vault-price-ticker span:nth-child(4) { color: #13b98b; }.vault-price-ticker span:nth-child(5) { color: #294c47; }
.vault-data-ticker { height: 63px; border-top: 1px solid var(--line); color: #74777a; font-size: 15px; }
.route-ticker-track { display: flex; width: max-content; min-width: 200%; height: 100%; align-items: center; animation: route-market-marquee 10s linear infinite; will-change: transform; }
.route-ticker-group { display: flex; height: 100%; flex: none; padding-right: 43px; align-items: center; gap: 43px; }
.vault-price-ticker .route-ticker-group { padding-right: 14px; gap: 14px; }
.vault-ticker:hover .route-ticker-track, .vault-ticker:focus-within .route-ticker-track { animation-play-state: paused; }
@keyframes route-market-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.vault-data-ticker b { color: #34383b; }.vault-data-ticker .is-negative { color: #eb5666; }
.vault-article { max-width: none; padding-bottom: 70px; }
.vault-breadcrumbs { display: flex; margin-bottom: 28px; gap: 17px; align-items: center; color: #6138ff; font-size: 15px; font-weight: 600; }
.vault-breadcrumbs i { display: block; width: 8px; height: 8px; color: transparent; border-bottom: 1.5px solid #6138ff; border-left: 1.5px solid #6138ff; font-size: 0; font-style: normal; transform: rotate(45deg); }.vault-breadcrumbs a:hover { text-decoration: underline; }
.vault-article-head { position: static; display: block; min-height: 0; padding: 0 0 29px; overflow: visible; color: #17191b; border: 0; border-bottom: 1px solid var(--line); background: transparent; box-shadow: none; }
.vault-article-head::before, .vault-article-head::after { display: none; }
.vault-article-head > p { display: block; width: auto; margin: 0 0 17px; padding: 0; color: #8a8e91; background: transparent; font-size: 12px; font-weight: 600; letter-spacing: .09em; }
.vault-article-head > p span { margin-left: 10px; color: #9b9ea1; font-weight: 500; }
.vault-article-head > small { display: block; margin: 0 0 14px; color: #1c9870; font-size: 12px; font-weight: 700; letter-spacing: .09em; }
.vault-article-head h1 { max-width: 720px; margin: 0 0 21px; color: #1b1d1f; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(37px, 5vw, 55px); font-weight: 700; letter-spacing: -.065em; line-height: 1.05; }
.vault-article-head > strong { display: block; max-width: 700px; color: #26292c; font-size: clamp(18px, 2.4vw, 23px); font-weight: 500; line-height: 1.5; }
.vault-article-head > div { position: static; margin-top: 24px; color: #25282b; font-size: 13px; font-weight: 600; letter-spacing: .015em; }.vault-article-head > div i { margin: 0 8px; color: #7c8083; }
.vault-cover { display: block; margin: 29px 0 0; }.vault-cover video { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; background: #111; }.vault-cover figcaption { margin-top: 9px; color: #777b7e; font-size: 12px; text-align: right; }
.vault-share { display: flex; margin: 35px 0 48px; gap: 20px; align-items: center; color: #73787c; }.vault-share b { margin-right: 3px; color: #623cff; font-size: 15px; font-weight: 600; }.vault-share a, .vault-share button { display: grid; width: 24px; height: 24px; padding: 0; place-items: center; color: #73787c; border: 0; background: transparent; font-size: 19px; font-weight: 700; line-height: 1; }.vault-share a:nth-of-type(2) { color: #747b84; border: 1px solid #747b84; border-radius: 2px; font-family: Arial, sans-serif; font-size: 14px; }.vault-share a:hover, .vault-share button:hover { color: #623cff; }
.vault-article-copy { max-width: none; margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
.vault-article-copy > p, .vault-article-copy > p:first-child { max-width: none; margin: 0 0 31px; color: #3c4655; font-size: clamp(18px, 2.3vw, 23px); font-weight: 400; line-height: 1.82; }
.vault-article-copy h2 { max-width: none; margin: 49px 0 18px; color: #1d2228; font-size: clamp(25px, 3.1vw, 34px); letter-spacing: -.045em; line-height: 1.1; }
.vault-article-copy blockquote { max-width: none; margin: 40px 0; padding: 0 0 0 23px; color: #535d6a; border: 0; border-left: 2px solid #6b43ff; background: transparent; font-size: clamp(18px, 2.2vw, 22px); }.vault-article-copy cite { color: #858b92; }
.vault-alert { max-width: none; margin: 39px 0 32px; padding: 25px; border: 1px solid #e5d36a; background: #fffde9; }.vault-alert h2 { color: #4a4314; font-size: 24px; }.vault-alert li { color: #4d5358; }
.vault-tool { max-width: none; margin-top: 37px; border-color: #dfe2e4; background: #fff; box-shadow: none; }.vault-tool h2 { color: #202429; }.vault-tool p { color: #666c72; }.vault-tool button { color: #fff; background: #17191b; }
.vault-tags { max-width: none; color: #623cff !important; }.vault-disclaimer { max-width: none; }
body.route-dark[data-route="vaultguard"] { background: #151719; }
body.route-dark .vault-ticker { background: #1d2022; }.route-dark .vault-data-ticker { border-color: var(--line); }
body.route-dark .vault-article-head { border-color: var(--line); }.route-dark .vault-article-head h1, .route-dark .vault-article-head > strong, .route-dark .vault-article-head > div { color: #f0f2ef; }.route-dark .vault-article-head > p, .route-dark .vault-article-head > p span { color: #a7aaa7; }
body.route-dark .vault-article-copy > p, body.route-dark .vault-article-copy h2 { color: #dfe3df; }.route-dark .vault-article-copy blockquote { color: #bdc5bd; }.route-dark .vault-tool { background: #1d2022; }.route-dark .vault-tool h2 { color: #f0f2ef; }.route-dark .vault-tool p { color: #b4b9b5; }.route-dark .vault-tool button { color: #17191b; background: #ddeb4d; }
@media (max-width: 540px) { body[data-route="vaultguard"] .route-main { width: calc(100% - 40px); padding-top: 24px; }.vault-price-ticker { height: 40px; padding-inline: 20px; gap: 9px; font-size: 10px; }.vault-data-ticker { height: 40px; font-size: 11px; }.route-ticker-group { padding-right: 26px; gap: 26px; }.vault-breadcrumbs { margin-bottom: 20px; gap: 9px; font-size: 12px; }.vault-article-head { padding-bottom: 23px; }.vault-article-head h1 { font-size: 34px; }.vault-article-head > strong { font-size: 17px; }.vault-article-head > div { font-size: 10px; }.vault-cover { margin-top: 22px; }.vault-cover figcaption { font-size: 9px; }.vault-share { margin: 25px 0 35px; gap: 15px; }.vault-share b { font-size: 12px; }.vault-article-copy > p, .vault-article-copy > p:first-child { margin-bottom: 25px; font-size: 17px; line-height: 1.76; }.vault-article-copy h2 { margin-top: 38px; font-size: 27px; }.vault-alert { padding: 20px; }.vault-alert h2 { font-size: 20px; }.vault-tool { padding: 18px; }.vault-tags { font-size: 12px !important; } }

/* Precise local SVG treatment for the article share controls. */
.vault-share .share-icon { display: grid; width: 24px; height: 24px; padding: 0; place-items: center; color: #707882; border: 0 !important; border-radius: 0 !important; background: transparent; }
.vault-share .share-icon svg { display: block; width: 21px; height: 21px; }
.vault-share .share-icon:nth-of-type(2) svg { width: 20px; height: 20px; }
.vault-share .share-icon:hover { color: #623cff; }
.vault-share button.share-icon { cursor: pointer; }
.vault-share button.share-icon.is-copied svg { display: none; }.vault-share button.share-icon.is-copied::after { color: #1c9870; content: '✓'; font-size: 19px; font-weight: 800; }
body.route-dark .vault-share .share-icon { color: #aeb5be; }

/* This article ends at the disclaimer; no footer spacing is required. */
body[data-route="vaultguard"] .route-main { padding-bottom: 30px; }
body[data-route="vaultguard"] .vault-article { padding-bottom: 0; }

/* Security brief redesign: a high-contrast onchain intelligence reading experience. */
body[data-route="vaultguard"] {
  background:
    radial-gradient(circle at 88% 8%, rgba(111, 156, 130, .16), transparent 25rem),
    linear-gradient(90deg, rgba(25, 35, 31, .035) 1px, transparent 1px),
    linear-gradient(rgba(25, 35, 31, .035) 1px, transparent 1px),
    #edf0ed;
  background-size: auto, 28px 28px, 28px 28px, auto;
}
body[data-route="vaultguard"] .route-main {
  width: min(1120px, calc(100% - 48px));
  padding-top: clamp(36px, 5vw, 76px);
}
body[data-route="vaultguard"] .vault-article {
  display: grid;
  grid-template-columns: minmax(0, 790px) 118px;
  justify-content: center;
  column-gap: 30px;
}
.vault-breadcrumbs,
.vault-article-head,
.vault-cover { grid-column: 1 / -1; }
.vault-breadcrumbs {
  width: 100%;
  margin-bottom: 17px;
  color: #31483d;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .11em;
}
.vault-breadcrumbs i { border-color: #759487; }
.vault-breadcrumbs a:hover { color: #1c9870; text-decoration: none; }
.vault-article-head {
  position: relative;
  min-height: 514px;
  padding: clamp(34px, 5vw, 68px);
  overflow: hidden;
  isolation: isolate;
  color: #f4f8f2;
  border: 1px solid #172a22;
  border-radius: 3px;
  background:
    linear-gradient(115deg, rgba(15, 29, 24, .99) 0 51%, rgba(20, 48, 38, .94) 100%),
    #14251f;
  box-shadow: 0 28px 56px rgba(27, 48, 39, .17);
}
.vault-article-head::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: .3;
  background-image:
    linear-gradient(90deg, transparent 0 49.8%, rgba(220, 235, 141, .46) 49.8% 50%, transparent 50%),
    repeating-linear-gradient(0deg, transparent 0 31px, rgba(220, 235, 141, .12) 31px 32px),
    repeating-linear-gradient(90deg, transparent 0 31px, rgba(220, 235, 141, .12) 31px 32px);
  content: '';
}
.vault-article-head::after {
  position: absolute;
  z-index: -1;
  right: clamp(18px, 4vw, 60px);
  bottom: -46px;
  color: rgba(221, 235, 141, .12);
  content: '047';
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(180px, 25vw, 350px);
  font-weight: 900;
  letter-spacing: -.15em;
  line-height: .78;
}
.vault-article-head > p {
  display: inline-flex;
  width: max-content;
  margin: 0 0 18px;
  padding: 8px 11px;
  color: #15231d;
  border: 1px solid rgba(221, 235, 141, .45);
  background: #ddeb4d;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.vault-article-head > p span { margin-left: 10px; color: #31433a; font-weight: 800; }
.vault-article-head > small {
  display: block;
  margin: 0 0 17px;
  color: #ddeb4d;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
}
.vault-article-head h1 {
  max-width: 770px;
  margin: 0 0 22px;
  color: #f7f9f3;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(42px, 6vw, 76px);
  letter-spacing: -.075em;
  line-height: .94;
}
.vault-article-head > strong {
  display: block;
  max-width: 625px;
  color: #c8d5cf;
  font-size: clamp(17px, 1.85vw, 22px);
  font-weight: 500;
  line-height: 1.48;
}
.vault-article-head > div {
  position: absolute;
  right: clamp(34px, 5vw, 68px);
  bottom: 29px;
  left: clamp(34px, 5vw, 68px);
  padding-top: 15px;
  color: #aebeb6;
  border-top: 1px solid rgba(212, 231, 220, .23);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .05em;
}
.vault-article-head > div i { color: #ddeb4d; }
.vault-cover {
  position: relative;
  margin: -1px 0 0;
  padding: clamp(14px, 2.3vw, 24px);
  background: #192c24;
  box-shadow: 0 24px 45px rgba(27, 48, 39, .14);
}
.vault-cover::before {
  position: absolute;
  z-index: 2;
  top: clamp(20px, 3.5vw, 38px);
  left: clamp(20px, 3.5vw, 38px);
  padding: 7px 9px;
  color: #17251e;
  background: #ddeb4d;
  content: 'ONCHAIN SECURITY MONITOR';
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
}
.vault-cover video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 8.1;
  object-fit: cover;
  border: 1px solid rgba(221, 235, 141, .34);
  background: #101815;
}
.vault-share {
  position: sticky;
  top: 25px;
  grid-column: 2;
  grid-row: 4;
  display: flex;
  flex-direction: column;
  margin: 48px 0 0;
  padding: 17px 0 0;
  align-items: flex-start;
  gap: 13px;
  color: #52675c;
  border-top: 1px solid #b9c7bf;
}
.vault-share b {
  margin: 0 0 5px;
  color: #1c9870;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
}
.vault-share .share-icon {
  width: 31px;
  height: 31px;
  color: #355247;
  border: 1px solid #c4d0ca !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, .55);
  transition: transform .16s ease, color .16s ease, background .16s ease;
}
.vault-share .share-icon:hover { color: #17251e; background: #ddeb4d; transform: translateX(3px); }
.vault-share .share-icon svg { width: 16px; height: 16px; }
.vault-article-copy {
  grid-column: 1;
  grid-row: 4;
  max-width: none;
  margin: 48px 0 0;
  padding: clamp(25px, 4.6vw, 52px);
  border: 1px solid #d2dad5;
  border-radius: 2px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 22px 44px rgba(41, 62, 52, .08);
}
.vault-article-copy > p,
.vault-article-copy > p:first-child {
  max-width: 670px;
  margin: 0 auto 29px;
  color: #37463f;
  font-size: clamp(17px, 1.8vw, 20px);
  line-height: 1.82;
}
.vault-article-copy > p:first-child {
  padding-bottom: 30px;
  color: #25362e;
  border-bottom: 1px solid #d7e0da;
  font-size: clamp(19px, 2vw, 23px);
  line-height: 1.62;
}
.vault-article-copy h2 {
  max-width: 670px;
  margin: 55px auto 19px;
  padding-left: 17px;
  color: #192720;
  border-left: 4px solid #ddeb4d;
  font-size: clamp(26px, 3vw, 37px);
  letter-spacing: -.055em;
  line-height: 1.06;
}
.vault-article-copy blockquote {
  max-width: 670px;
  margin: 41px auto 44px;
  padding: 27px 29px;
  color: #234437;
  border: 1px solid #bad0c1;
  border-left: 4px solid #1c9870;
  background: linear-gradient(135deg, #e5f0e9, #f5f8e8);
  font-size: clamp(18px, 1.8vw, 21px);
  line-height: 1.58;
}
.vault-article-copy cite { display: block; margin-top: 13px; color: #60756b; font-size: .76em; font-style: normal; }
.vault-alert {
  max-width: 670px;
  margin: 46px auto 35px;
  padding: clamp(24px, 3.4vw, 34px);
  border: 1px solid #d8c45f;
  border-radius: 2px;
  background: linear-gradient(135deg, #fff9da, #f6edbc);
  box-shadow: inset 0 0 0 4px rgba(255, 255, 255, .35);
}
.vault-alert h2 { color: #4d4313; font-size: clamp(22px, 2.1vw, 29px); }
.vault-alert ul { gap: 15px; }
.vault-alert li { color: #4b514a; font-size: 16px; }
.vault-alert li::before { background: #bf9f16; }
.vault-tool {
  max-width: 670px;
  margin: 42px auto 0;
  padding: 25px 28px;
  border: 1px solid #80aa91;
  background: linear-gradient(110deg, #123529, #23553d);
  box-shadow: 0 12px 24px rgba(20, 57, 43, .16);
}
.vault-tool > i { background: #ddeb4d; box-shadow: none; }
.vault-tool h2 { color: #f2f8ef; }
.vault-tool p { color: #c6d8cd; }
.vault-tool button { min-width: 132px; color: #17251e; background: #ddeb4d; }
.vault-tags { max-width: 670px; margin: 32px auto 26px !important; color: #16835f !important; font-size: 12px !important; font-weight: 800 !important; letter-spacing: .06em; }
.vault-disclaimer { max-width: 670px; margin: 0 auto !important; padding-top: 23px; color: #77857d !important; }
body.route-dark[data-route="vaultguard"] {
  background:
    radial-gradient(circle at 88% 8%, rgba(80, 139, 103, .16), transparent 25rem),
    linear-gradient(90deg, rgba(215, 232, 220, .035) 1px, transparent 1px),
    linear-gradient(rgba(215, 232, 220, .035) 1px, transparent 1px),
    #111715;
  background-size: auto, 28px 28px, 28px 28px, auto;
}
body.route-dark .vault-article-copy { border-color: #394941; background: #1a211e; box-shadow: 0 22px 44px rgba(0, 0, 0, .24); }
body.route-dark .vault-article-copy > p,
body.route-dark .vault-article-copy > p:first-child { color: #d3ddd6; border-color: #3b4b43; }
body.route-dark .vault-article-copy h2 { color: #f1f6f1; }
body.route-dark .vault-article-copy blockquote { color: #d8e6db; border-color: #4b876c; background: #23352d; }
body.route-dark .vault-article-copy cite { color: #a8bbae; }
body.route-dark .vault-alert { border-color: #796c2c; background: linear-gradient(135deg, #322f1d, #29271b); box-shadow: inset 0 0 0 4px rgba(255, 255, 255, .025); }
body.route-dark .vault-alert h2 { color: #f0e48a; }
body.route-dark .vault-alert li { color: #d7dcc4; }
body.route-dark .vault-cover { background: #10241b; }
body.route-dark .vault-share { border-color: #3f5649; }
body.route-dark .vault-share .share-icon { color: #bdd0c3; border-color: #3f584a !important; background: #1d2923; }
body.route-dark .vault-share .share-icon:hover { color: #17251e; background: #ddeb4d; }
body.route-dark .vault-tool { border-color: #477a5b; background: linear-gradient(110deg, #102a20, #1b4532); }
@media (max-width: 760px) {
  body[data-route="vaultguard"] .route-main { width: min(100% - 32px, 650px); padding-top: 24px; }
  body[data-route="vaultguard"] .vault-article { display: block; }
  .vault-breadcrumbs { margin-bottom: 15px; font-size: 10px; }
  .vault-article-head { min-height: 448px; padding: 27px 23px; }
  .vault-article-head::after { right: 16px; bottom: -25px; font-size: 210px; }
  .vault-article-head > p { white-space: normal; }
  .vault-article-head h1 { font-size: clamp(35px, 10vw, 51px); }
  .vault-article-head > strong { font-size: 17px; }
  .vault-article-head > div { position: static; margin-top: 24px; padding-top: 14px; font-size: 10px; line-height: 1.55; }
  .vault-cover { padding: 10px; }
  .vault-cover::before { top: 20px; left: 20px; font-size: 7px; }
  .vault-cover video { aspect-ratio: 16 / 9; }
  .vault-share { position: static; flex-direction: row; margin: 25px 0 28px; padding: 14px 0 0; align-items: center; gap: 10px; }
  .vault-share b { margin: 0 5px 0 0; }
  .vault-share .share-icon:hover { transform: translateY(-2px); }
  .vault-article-copy { margin: 0; padding: 27px 21px; }
  .vault-article-copy > p,
  .vault-article-copy > p:first-child { margin-bottom: 25px; font-size: 16.5px; }
  .vault-article-copy > p:first-child { padding-bottom: 24px; font-size: 18px; }
  .vault-article-copy h2 { margin-top: 39px; padding-left: 13px; font-size: 27px; }
  .vault-article-copy blockquote { margin-block: 30px; padding: 21px; font-size: 17px; }
  .vault-alert { margin-block: 34px; padding: 22px 20px; }
  .vault-alert h2 { font-size: 20px; }
  .vault-tool { padding: 20px; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; }
  .vault-tool > i { width: 40px; height: 40px; }
  .vault-tool button { grid-column: 1 / -1; width: 100%; }
}

/* Cyber signal skin: deliberately more futuristic than the editorial defaults above. */
body[data-route="vaultguard"] {
  color: #eaf5f7;
  background:
    radial-gradient(ellipse 55% 35% at 82% 8%, rgba(81, 55, 255, .34), transparent 72%),
    radial-gradient(ellipse 45% 30% at 5% 32%, rgba(0, 226, 201, .18), transparent 70%),
    linear-gradient(rgba(105, 229, 255, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(105, 229, 255, .055) 1px, transparent 1px),
    #070b11;
  background-size: auto, auto, 26px 26px, 26px 26px, auto;
}
body[data-route="vaultguard"] .route-main { position: relative; }
body[data-route="vaultguard"] .route-header { color: #17191b; }
body.route-dark[data-route="vaultguard"] .route-header { color: #f1f6f3; }
body[data-route="vaultguard"] .route-main::before {
  position: absolute;
  top: 113px;
  bottom: 50px;
  left: -28px;
  width: 1px;
  opacity: .62;
  background: linear-gradient(transparent, #21e4cf 9%, #7164ff 55%, transparent);
  box-shadow: 0 0 12px #27ddcd;
  content: '';
}
.vault-breadcrumbs { color: #79efe0; text-shadow: 0 0 14px rgba(54, 238, 216, .35); }
.vault-breadcrumbs i { border-color: #a2d9ff; }
.vault-article-head {
  min-height: 540px;
  border: 1px solid rgba(105, 229, 255, .55);
  border-radius: 0;
  background:
    linear-gradient(105deg, rgba(4, 12, 20, .98) 0 50%, rgba(15, 15, 43, .97) 100%),
    #070b11;
  box-shadow: 0 0 0 1px rgba(113, 100, 255, .18), 0 0 46px rgba(64, 69, 255, .22), inset 0 0 70px rgba(0, 225, 202, .06);
}
.vault-article-head::before {
  opacity: .58;
  background-image:
    linear-gradient(120deg, transparent 0 37%, rgba(45, 236, 212, .32) 37.1% 37.25%, transparent 37.35% 100%),
    linear-gradient(90deg, transparent 0 67%, rgba(130, 108, 255, .4) 67.1% 67.25%, transparent 67.35% 100%),
    repeating-linear-gradient(0deg, transparent 0 25px, rgba(111, 218, 255, .11) 25px 26px),
    repeating-linear-gradient(90deg, transparent 0 25px, rgba(111, 218, 255, .11) 25px 26px);
}
.vault-article-head::after {
  right: clamp(14px, 4vw, 55px);
  bottom: -52px;
  color: transparent;
  -webkit-text-stroke: 1px rgba(95, 244, 224, .27);
  text-shadow: 0 0 30px rgba(55, 221, 204, .16);
}
.vault-article-head > p {
  color: #041014;
  border-color: rgba(93, 255, 234, .9);
  background: #51f1dd;
  box-shadow: 0 0 22px rgba(63, 243, 218, .38);
}
.vault-article-head > p span { color: #182144; }
.vault-article-head > small { color: #9e94ff; text-shadow: 0 0 15px rgba(132, 112, 255, .6); }
.vault-article-head h1 {
  max-width: 790px;
  color: #f5fbff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(39px, 5.65vw, 72px);
  font-weight: 900;
  letter-spacing: -.08em;
  line-height: .92;
  text-shadow: 0 0 1px #fff, 0 0 26px rgba(113, 199, 255, .15);
}
.vault-article-head > strong { color: #aac6ce; }
.vault-article-head > div { color: #86a6af; border-color: rgba(109, 236, 220, .27); }
.vault-article-head > div i { color: #51f1dd; }
.vault-cover {
  padding: 12px;
  border: 1px solid rgba(92, 232, 222, .55);
  background: linear-gradient(135deg, rgba(12, 31, 38, .97), rgba(25, 17, 54, .98));
  box-shadow: 0 0 35px rgba(35, 211, 194, .13), 0 26px 48px rgba(0, 0, 0, .37);
}
.vault-cover::before {
  padding: 7px 10px;
  color: #061119;
  background: #51f1dd;
  box-shadow: 0 0 16px rgba(73, 238, 217, .7);
  content: '◈  047  /  LIVE SIGNAL';
}
.vault-cover::after {
  position: absolute;
  right: 12px;
  bottom: 12px;
  width: 68px;
  height: 68px;
  border-right: 2px solid #8c7cff;
  border-bottom: 2px solid #8c7cff;
  box-shadow: 8px 8px 0 -7px #51f1dd;
  content: '';
}
.vault-cover video { border-color: rgba(131, 235, 255, .32); filter: saturate(1.08) contrast(1.05); }
.vault-share { border-color: rgba(80, 233, 219, .36); }
.vault-share b { color: #51f1dd; text-shadow: 0 0 12px rgba(81, 241, 221, .5); }
.vault-share .share-icon {
  color: #a8f8ed;
  border-color: rgba(91, 230, 218, .47) !important;
  border-radius: 2px !important;
  background: rgba(16, 35, 42, .78);
  box-shadow: inset 0 0 13px rgba(66, 231, 210, .08);
}
.vault-share .share-icon:hover { color: #071318; background: #51f1dd; box-shadow: 0 0 16px rgba(81, 241, 221, .6); }
.vault-article-copy {
  border-color: rgba(103, 227, 234, .31);
  border-radius: 0;
  background:
    linear-gradient(135deg, rgba(14, 24, 32, .96), rgba(10, 16, 26, .96)),
    #0d151d;
  box-shadow: 0 0 0 1px rgba(122, 100, 255, .07), 0 28px 54px rgba(0, 0, 0, .31);
}
.vault-article-copy > p,
.vault-article-copy > p:first-child { color: #c5d7dc; }
.vault-article-copy > p:first-child { color: #eff9fb; border-color: rgba(99, 206, 207, .24); }
.vault-article-copy h2 { color: #f2fbff; border-color: #51f1dd; text-shadow: 0 0 18px rgba(77, 242, 218, .15); }
.vault-article-copy blockquote {
  color: #d5f8f1;
  border-color: #51f1dd;
  background: linear-gradient(115deg, rgba(17, 69, 71, .55), rgba(27, 22, 68, .55));
  box-shadow: inset 0 0 26px rgba(77, 242, 218, .06);
}
.vault-article-copy cite { color: #88b7b2; }
.vault-alert {
  border-color: rgba(255, 101, 129, .69);
  background: linear-gradient(120deg, rgba(69, 20, 34, .9), rgba(37, 20, 49, .92));
  box-shadow: inset 0 0 0 4px rgba(255, 106, 131, .04), 0 0 26px rgba(255, 79, 116, .06);
}
.vault-alert h2 { color: #ffb2be; }
.vault-alert li { color: #e8c8cc; }
.vault-alert li::before { background: #ff6681; box-shadow: 0 0 8px #ff6681; }
.vault-tool {
  border-color: rgba(101, 238, 221, .63);
  background: linear-gradient(105deg, #092f32, #191146 70%, #24205b);
  box-shadow: 0 0 30px rgba(73, 238, 217, .13), inset 0 0 38px rgba(96, 108, 255, .12);
}
.vault-tool > i { background: #51f1dd; box-shadow: 0 0 18px rgba(81, 241, 221, .62); }
.vault-tool h2 { color: #f2fcff; }
.vault-tool p { color: #a9c9cb; }
.vault-tool button { color: #071116; background: #51f1dd; box-shadow: 0 0 18px rgba(81, 241, 221, .46); }
.vault-tags { color: #8f86ff !important; text-shadow: 0 0 14px rgba(143, 134, 255, .34); }
.vault-disclaimer { color: #78919b !important; border-color: rgba(101, 231, 218, .2); }
body.route-dark[data-route="vaultguard"] { background-color: #070b11; }
body.route-dark[data-route="vaultguard"] .vault-article-head {
  border-color: rgba(105, 229, 255, .55);
  background: linear-gradient(105deg, rgba(4, 12, 20, .98) 0 50%, rgba(15, 15, 43, .97) 100%);
  box-shadow: 0 0 0 1px rgba(113, 100, 255, .18), 0 0 46px rgba(64, 69, 255, .22), inset 0 0 70px rgba(0, 225, 202, .06);
}
body.route-dark .vault-article-copy { border-color: rgba(103, 227, 234, .31); background: linear-gradient(135deg, rgba(14, 24, 32, .96), rgba(10, 16, 26, .96)); }
body.route-dark .vault-article-copy > p,
body.route-dark .vault-article-copy > p:first-child { color: #c5d7dc; border-color: rgba(99, 206, 207, .24); }
body.route-dark .vault-article-copy h2 { color: #f2fbff; }
body.route-dark .vault-article-copy blockquote { color: #d5f8f1; background: linear-gradient(115deg, rgba(17, 69, 71, .55), rgba(27, 22, 68, .55)); }
body.route-dark .vault-alert { border-color: rgba(255, 101, 129, .69); background: linear-gradient(120deg, rgba(69, 20, 34, .9), rgba(37, 20, 49, .92)); }
body.route-dark .vault-alert h2 { color: #ffb2be; }
body.route-dark .vault-alert li { color: #e8c8cc; }
body.route-dark .vault-cover { background: linear-gradient(135deg, rgba(12, 31, 38, .97), rgba(25, 17, 54, .98)); }
body.route-dark .vault-share { border-color: rgba(80, 233, 219, .36); }
body.route-dark .vault-share .share-icon { color: #a8f8ed; border-color: rgba(91, 230, 218, .47) !important; background: rgba(16, 35, 42, .78); }
body.route-dark .vault-tool { border-color: rgba(101, 238, 221, .63); background: linear-gradient(105deg, #092f32, #191146 70%, #24205b); }
@media (max-width: 760px) {
  body[data-route="vaultguard"] .route-main::before { display: none; }
  .vault-article-head { min-height: 0; }
  .vault-cover::before { content: '◈  047  /  LIVE'; }
}

/* Daylight mode keeps the security interface but returns the article to a bright surface. */
body:not(.route-dark)[data-route="vaultguard"] {
  color: #172535;
  background:
    radial-gradient(ellipse 50% 30% at 84% 6%, rgba(119, 94, 255, .15), transparent 72%),
    radial-gradient(ellipse 40% 28% at 5% 30%, rgba(49, 205, 218, .15), transparent 70%),
    linear-gradient(rgba(64, 163, 210, .08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(64, 163, 210, .08) 1px, transparent 1px),
    #f4f8fb;
  background-size: auto, auto, 26px 26px, 26px 26px, auto;
}
body:not(.route-dark)[data-route="vaultguard"] .route-main::before { background: linear-gradient(transparent, #38bed3 9%, #8170ff 55%, transparent); box-shadow: 0 0 12px rgba(48, 182, 210, .45); }
body:not(.route-dark) .vault-breadcrumbs { color: #168aa2; text-shadow: none; }
body:not(.route-dark) .vault-breadcrumbs i { border-color: #6993ab; }
body:not(.route-dark) .vault-article-head {
  color: #12253a;
  border-color: #8cd7ec;
  background: linear-gradient(112deg, rgba(247, 253, 255, .98) 0 52%, rgba(239, 240, 255, .98) 100%);
  box-shadow: 0 0 0 1px rgba(113, 100, 255, .08), 0 25px 54px rgba(47, 99, 128, .12), inset 0 0 70px rgba(0, 180, 200, .05);
}
body:not(.route-dark) .vault-article-head::before { opacity: .5; }
body:not(.route-dark) .vault-article-head::after { color: transparent; -webkit-text-stroke: 1px rgba(71, 157, 200, .2); text-shadow: none; }
body:not(.route-dark) .vault-article-head > p { color: #07252d; border-color: #50cfdb; background: #78f0e3; box-shadow: 0 0 18px rgba(71, 218, 209, .24); }
body:not(.route-dark) .vault-article-head > p span { color: #254066; }
body:not(.route-dark) .vault-article-head > small { color: #705eff; text-shadow: none; }
body:not(.route-dark) .vault-article-head h1 { color: #142236; text-shadow: none; }
body:not(.route-dark) .vault-article-head > strong { color: #53677b; }
body:not(.route-dark) .vault-article-head > div { color: #657b8c; border-color: rgba(64, 143, 185, .24); }
body:not(.route-dark) .vault-cover { border-color: #91d9eb; background: linear-gradient(135deg, #effdff, #f2f0ff); box-shadow: 0 22px 43px rgba(48, 93, 120, .13); }
body:not(.route-dark) .vault-cover::before { color: #082e38; background: #78f0e3; box-shadow: 0 0 15px rgba(64, 207, 199, .35); }
body:not(.route-dark) .vault-cover::after { border-color: #7663fb; }
body:not(.route-dark) .vault-share { border-color: #bcd8e2; }
body:not(.route-dark) .vault-share b { color: #138b9d; text-shadow: none; }
body:not(.route-dark) .vault-share .share-icon { color: #286072; border-color: #b8dce5 !important; background: rgba(255, 255, 255, .82); box-shadow: none; }
body:not(.route-dark) .vault-share .share-icon:hover { color: #08262d; background: #78f0e3; box-shadow: 0 0 14px rgba(75, 218, 207, .4); }
body:not(.route-dark) .vault-article-copy { border-color: #c6e0e8; background: rgba(255, 255, 255, .92); box-shadow: 0 28px 54px rgba(47, 94, 119, .1); }
body:not(.route-dark) .vault-article-copy > p, body:not(.route-dark) .vault-article-copy > p:first-child { color: #3e5265; }
body:not(.route-dark) .vault-article-copy > p:first-child { color: #20384e; border-color: #d4e7eb; }
body:not(.route-dark) .vault-article-copy h2 { color: #192b40; border-color: #3bd3d3; text-shadow: none; }
body:not(.route-dark) .vault-article-copy blockquote { color: #285a67; border-color: #3dc8bf; background: linear-gradient(115deg, #e8fbfa, #f1efff); box-shadow: none; }
body:not(.route-dark) .vault-article-copy cite { color: #6d8992; }
body:not(.route-dark) .vault-alert { border-color: #f0a3b0; background: linear-gradient(120deg, #fff3f5, #f8f1ff); box-shadow: inset 0 0 0 4px rgba(255, 255, 255, .45); }
body:not(.route-dark) .vault-alert h2 { color: #8b3547; }
body:not(.route-dark) .vault-alert li { color: #6f4954; }
body:not(.route-dark) .vault-tool { border-color: #91d8e7; background: linear-gradient(105deg, #e1fbfb, #eae6ff 70%, #e0efff); box-shadow: 0 16px 26px rgba(55, 105, 139, .12); }
body:not(.route-dark) .vault-tool > i { background: #5fe7d9; box-shadow: 0 0 16px rgba(71, 214, 201, .32); }
body:not(.route-dark) .vault-tool h2 { color: #19354a; }
body:not(.route-dark) .vault-tool p { color: #567284; }
body:not(.route-dark) .vault-tool button { color: #0a2832; background: #5fe7d9; box-shadow: 0 0 16px rgba(71, 214, 201, .28); }
body:not(.route-dark) .vault-tags { color: #6c5eff !important; text-shadow: none; }
body:not(.route-dark) .vault-disclaimer { color: #718898 !important; border-color: #d2e5ea; }

/* Static flows make the front-end feel complete before a backend is connected. */
.static-flow { max-width: 880px; }
.static-flow h1 { max-width: 760px; }
.static-search-form { display: flex; max-width: 690px; margin-top: 37px; gap: 10px; }
.static-search-form input { width: 100%; min-width: 0; height: 55px; padding: 0 17px; color: var(--ink); border: 1px solid var(--line); background: var(--paper); font-size: 16px; }
.static-search-form button, .request-form button { padding: 0 21px; color: var(--paper); border: 0; background: var(--ink); font-size: 13px; font-weight: 800; white-space: nowrap; }
.static-search-form button b, .request-form button b { padding-left: 12px; font-size: 17px; }
.search-summary { margin: 30px 0 13px; color: var(--muted); font-size: 13px; font-weight: 700; }
.search-results-page { display: grid; gap: 10px; }
.search-results-page > a { display: block; padding: 24px 26px; color: var(--ink); border: 1px solid var(--line); background: var(--paper); transition: transform .16s ease, box-shadow .16s ease; }
.search-results-page > a:hover { transform: translateY(-2px); box-shadow: 0 12px 23px rgba(17, 21, 24, .08); }
.search-results-page span { color: var(--green); font-size: 10px; font-weight: 800; letter-spacing: .13em; }
.search-results-page h2 { margin: 12px 0 8px; font-size: clamp(24px, 3vw, 34px); letter-spacing: -.05em; line-height: 1; }
.search-results-page p { max-width: 650px; margin: 0; color: #62676a; line-height: 1.5; }
.search-results-page b { display: inline-block; margin-top: 17px; color: #623cff; font-size: 13px; }
.empty-search { padding: 35px 26px; color: var(--muted); border: 1px dashed var(--line); background: rgba(255,255,255,.48); }
.empty-search b { display: block; color: var(--ink); font-size: 20px; }.empty-search p { margin: 9px 0 0; }
.request-flow { max-width: 760px; }
.request-form { display: grid; max-width: 650px; margin-top: 39px; padding: clamp(23px, 4vw, 38px); gap: 18px; border: 1px solid var(--line); background: var(--paper); }
.request-form label { display: grid; gap: 8px; color: #555a5d; font-size: 12px; font-weight: 800; }
.request-form input, .request-form textarea { width: 100%; padding: 13px; color: var(--ink); border: 1px solid var(--line); border-radius: 0; background: #fbfbfb; font: inherit; font-size: 15px; font-weight: 400; }
.request-form textarea { min-height: 118px; resize: vertical; }
.request-form button { height: 49px; justify-self: start; }
.request-form .form-note { min-height: 19px; margin: 0; color: var(--green); font-size: 13px; font-weight: 700; line-height: 1.4; }
.return-home { display: inline-block; margin-top: 23px; padding-bottom: 4px; color: #623cff; border-bottom: 1px solid currentColor; font-size: 13px; font-weight: 800; }
.story-detail { max-width: 820px; }
.story-detail h1 { max-width: 790px; margin-bottom: 27px; }
.story-meta { display: flex; flex-wrap: wrap; margin-top: 31px; padding: 16px 0; gap: 15px 23px; color: var(--muted); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.story-body { max-width: 720px; margin-top: 42px; }
.story-body p { margin: 0 0 27px; color: #40474d; font-size: clamp(18px, 2vw, 22px); line-height: 1.78; }
body.route-dark .static-search-form input, body.route-dark .request-form { border-color: var(--line); background: #1d2022; }
body.route-dark .search-results-page > a { border-color: var(--line); background: #1d2022; }.route-dark .search-results-page p, .route-dark .request-form label { color: #b7babc; }.route-dark .request-form input, .route-dark .request-form textarea { color: var(--ink); border-color: var(--line); background: #25282a; }.route-dark .empty-search { background: #1d2022; }
body.route-dark .story-body p { color: #c5c9ca; }
@media (max-width: 540px) { .static-search-form { flex-direction: column; }.static-search-form input, .static-search-form button { height: 49px; }.static-search-form button { padding: 0 17px; }.search-results-page > a { padding: 20px; }.request-form { padding: 21px; }.request-form button { width: 100%; }.route-main:has(.static-flow) { padding-top: 42px; } }
