:root {
--acad-ink: #000000;
--acad-ink-muted: #555555;
--acad-bg: #FFFFFF;
--acad-border: var(--fnv-border);
--acad-border-thin: 0.5px solid #EAEAEA;
--acad-grid: #F0F0F0;
--acad-gray-100: #F9F9F9;
--acad-gray-200: #EAEAEA;
--acad-gray-400: #999999;
--acad-gray-600: #666666;
--acad-gray-800: #333333;
}
:root[data-theme="dark"] {
--acad-ink: var(--fnv-dark-text);
--acad-ink-muted: var(--fnv-on-dark-2);
--acad-bg: var(--fnv-dark-surface);
--acad-border: var(--fnv-dark-border);
--acad-border-thin: 0.5px solid var(--fnv-dark-border);
--acad-grid: #1A1A1A;
--acad-gray-100: #141414;
--acad-gray-200: #1F1F1F;
--acad-gray-400: #8A8A8A;
--acad-gray-600: #A8A8A8;
--acad-gray-800: #D6D6D6;
}
.acad-display-num {
font-family: var(--fnv-font-mono);
font-weight: 400;
font-size: clamp(3rem, 6vw, 5rem);
line-height: 1;
color: var(--acad-ink);
}
.acad-mono-data {
font-family: var(--fnv-font-body);
font-size: .85rem;
letter-spacing: normal;
}
.acad-section-line {
border-top: var(--acad-border-thin);
margin: 48px 0;
width: 100%;
}
.fnv-editorial-card {
background: var(--acad-bg);
border: var(--acad-border-thin);
padding: 32px;
transition: background-color 0.22s cubic-bezier(0.4, 0, 0.2, 1), color 0.22s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1), transform 0.22s cubic-bezier(0.4, 0, 0.2, 1);
height: 100%;
display: flex;
flex-direction: column;
text-decoration: none !important;
color: var(--acad-ink) !important;
position: relative;
overflow: hidden;
}
.fnv-editorial-card:hover {
background: var(--acad-ink);
border-color: var(--acad-ink);
color: var(--acad-bg) !important;
}
.fnv-editorial-card .card-kicker {
font-family: var(--fnv-font-body);
font-size: .85rem;
font-weight: 800;
text-transform: uppercase;
letter-spacing: normal;
margin-bottom: 24px;
display: block;
color: var(--fnv-ink);
}
.fnv-editorial-card:hover .card-kicker {
color: var(--acad-gray-400);
}
.fnv-editorial-card .card-title {
font-size: 1.5rem;
font-weight: 500;
line-height: 1.3;
margin-bottom: 16px;
}
.fnv-editorial-card .card-desc {
font-size: .95rem;
line-height: 1.7;
color: var(--acad-gray-600);
}
.fnv-editorial-card:hover .card-desc {
color: var(--acad-gray-200);
}
.acad-hero-monochrome {
background: var(--acad-bg);
padding: 120px 0 80px;
}
.acad-hero-monochrome .hero-kicker {
font-family: var(--fnv-font-body);
font-size: .85rem;
font-weight: 800;
letter-spacing: normal;
text-transform: uppercase;
margin-bottom: 32px;
display: block;
}
.acad-hero-monochrome h1 {
font-size: clamp(2.5rem, 6vw, 5rem);
font-weight: 600;
line-height: 1.45;
margin-bottom: 40px;
}
.acad-hero-monochrome .hero-desc {
font-size: 1.15rem;
line-height: 1.9;
color: var(--acad-gray-800);
max-width: 600px;
margin-bottom: 48px;
}
.editorial-grid {
display: grid;
grid-template-columns: repeat(12, 1fr);
gap: 32px;
}
.acad-tabs-editorial {
display: flex;
gap: 32px;
margin-bottom: 64px;
border-bottom: var(--acad-border-thin);
}
.acad-tab-editorial {
background: none;
border: none;
padding: 16px 0;
font-family: inherit;
font-size: .9rem;
font-weight: 500;
color: var(--acad-gray-400);
cursor: pointer;
position: relative;
transition: color 0.2s;
}
.acad-tab-editorial:hover, .acad-tab-editorial.active {
color: var(--acad-ink);
}
.acad-tab-editorial.active::after {
content: '';
position: absolute;
bottom: -0.5px;
left: 0;
width: 100%;
height: 2px;
background: var(--acad-ink);
}
.acad-article-container {
max-width: 800px;
margin: 0 auto;
padding: 80px 24px;
}
.acad-article-header {
margin-bottom: 64px;
text-align: center;
}
.acad-article-body {
font-size: 1.05rem;
line-height: 2.1;
color: var(--acad-gray-800);
}
.acad-article-body h2 {
font-size: 1.75rem;
font-weight: 600;
margin: 48px 0 24px;
}
.acad-article-body p {
margin-bottom: 32px;
}
.track-row {
border-bottom: var(--acad-border-thin);
padding: 32px 0;
transition: background-color 0.2s, color 0.2s, border-color 0.2s, transform 0.2s;
}
.track-row:hover {
padding-right: 16px;
background: var(--acad-gray-100);
}
.pattern-card {
background: var(--fnv-surface);
border: var(--acad-border-thin);
padding: 24px;
text-align: center;
}
.pattern-card .win-rate {
font-family: var(--fnv-font-body);
font-size: 2.5rem;
font-weight: 700;
margin: 16px 0;
}
.acad-accordion {
border-top: var(--acad-border-thin);
}
.acad-accordion-item {
border-bottom: var(--acad-border-thin);
}
.acad-accordion-button {
width: 100%;
padding: 24px 0;
background: none;
border: none;
display: flex;
justify-content: space-between;
align-items: center;
text-align: right;
cursor: pointer;
transition: background-color 0.2s, color 0.2s, border-color 0.2s, transform 0.2s;
}
.acad-accordion-button:hover {
padding-right: 12px;
}
.acad-accordion-button .report-title {
font-size: 1.25rem;
font-weight: 600;
}
.acad-accordion-button .report-meta {
display: flex;
align-items: center;
gap: 16px;
font-family: var(--fnv-font-body);
font-size: .82rem;
font-weight: 600;
color: var(--fnv-ink-2);
}
.acad-paywall-banner {
background: var(--acad-ink);
color: var(--acad-bg);
padding: 48px;
text-align: center;
margin-bottom: 64px;
}
.acad-paywall-banner .paywall-badge {
font-family: var(--fnv-font-body);
font-size: .8125rem;
border: 1px solid var(--acad-gray-600);
padding: 4px 12px;
display: inline-block;
margin-bottom: 24px;
}
.acad-paywall-banner h2 {
font-size: 2rem;
font-weight: 600;
margin-bottom: 24px;
}
.report-content-body {
padding: 64px 0;
max-width: 800px;
margin: 0 auto;
}
.report-content-body img {
max-width: 100%;
height: auto;
border: var(--acad-border-thin);
margin: 40px 0;
}
.report-content-body h2 {
font-size: 1.5rem;
font-weight: 600;
margin: 40px 0 20px;
border-bottom: var(--acad-border-thin);
padding-bottom: 12px;
}
@media (max-width: 991px) {
html, body { overflow-x: hidden; width: 100%; }
.chap-body-editorial,
.report-content-body,
.acad-article-body,
.maq-body-editorial {
overflow-wrap: break-word;
word-break: break-word;
overflow-x: hidden;
width: 100%;
box-sizing: border-box;
}
.chap-body-editorial *:not(pre),
.report-content-body *:not(pre),
.acad-article-body *:not(pre),
.maq-body-editorial *:not(pre) {
max-width: 100% !important;
box-sizing: border-box !important;
white-space: normal !important;
overflow-wrap: break-word !important;
word-break: break-word !important;
}
.chap-body-editorial img, .chap-body-editorial table, .chap-body-editorial pre,
.report-content-body img, .report-content-body table, .report-content-body pre,
.acad-article-body img, .acad-article-body table, .acad-article-body pre,
.maq-body-editorial img, .maq-body-editorial table, .maq-body-editorial pre {
max-width: 100% !important;
overflow-x: auto;
display: block;
}
.acad-hero-monochrome {
padding: 60px 0 40px;
}
.fnv-editorial-card {
padding: 20px;
}
}
.acad-hero-monochrome { background: var(--fnv-dark-bg) !important; color: var(--fnv-dark-text) !important; }
.acad-hero-monochrome h1, .acad-hero-monochrome h2, .acad-hero-monochrome .h1, .acad-hero-monochrome .h2 { color: var(--fnv-dark-text) !important; }
.acad-hero-monochrome p, .acad-hero-monochrome .hero-desc { color: var(--fnv-on-dark-1) !important; }
.acad-hero-monochrome .hero-kicker { color: var(--fnv-on-dark-2) !important; }
.acad-hero-monochrome .acad-mono-data { color: var(--fnv-on-dark-2) !important; }
.acad-hero-monochrome .text-muted { color: var(--fnv-on-dark-2) !important; }
.acad-hero-monochrome .acad-display-num { color: rgba(255,255,255,0.15) !important; }
.acad-hero-monochrome .breadcrumb-item a { color: var(--fnv-on-dark-2) !important; }
.acad-hero-monochrome .breadcrumb-item a:hover { color: var(--fnv-dark-text) !important; }
.acad-hero-monochrome .breadcrumb-item.active { color: var(--fnv-dark-text) !important; }
.acad-hero-monochrome .breadcrumb-item.active::before { color: var(--fnv-on-dark-2) !important; }
.pv3 *, .pv3 *::before, .pv3 *::after { box-sizing: border-box !important; }
.pv3 { background: var(--fnv-surface) !important; color: var(--fnv-ink) !important; font-family: var(--fnv-font-body, 'Readex Pro', sans-serif) !important; direction: rtl !important; min-height: 100vh; min-height: 100dvh; }
.pv3 .btn--base, .pv3 .bg--base, .pv3 .text--base { all: unset; }
.pv3 a:not([class]) { color: inherit; text-decoration: none; }
.pv3 a:not([class]):hover { color: var(--fnv-ink); text-decoration: none; }
.pv3 a.btn-dark {
color: var(--fnv-surface) !important;
background-color: var(--fnv-ink) !important;
border-color: var(--fnv-ink) !important;
}
.pv3 a.btn-dark:hover {
color: var(--fnv-ink) !important;
background-color: transparent !important;
}
.pv3 a.btn-outline-dark {
color: var(--fnv-ink) !important;
background-color: transparent !important;
border-color: var(--fnv-ink) !important;
}
.pv3 a.btn-outline-dark:hover {
color: var(--fnv-surface) !important;
background-color: var(--fnv-ink) !important;
}
:root[data-theme="dark"] [style*="#DAFF00"]:not([style*="color"]),
:root[data-theme="dark"] [style*="#daff00"]:not([style*="color"]) {
color: var(--fnv-dark-bg);
}
:root[data-theme="dark"] [style*="#DAFF00"] *:not([style*="color"]),
:root[data-theme="dark"] [style*="#daff00"] *:not([style*="color"]) {
color: inherit;
}
:root[data-theme="dark"] [style*="background:var(--fnv-acad-accent)"],
:root[data-theme="dark"] [style*="background: var(--fnv-acad-accent)"],
:root[data-theme="dark"] [style*="background:var(--accent-yellow)"],
:root[data-theme="dark"] [style*="background: var(--accent-yellow)"] {
color: var(--fnv-dark-bg) !important;
}
:root[data-theme="dark"] [style*="background:var(--fnv-acad-accent)"] *:not([style*="color:#"]),
:root[data-theme="dark"] [style*="background: var(--fnv-acad-accent)"] *:not([style*="color:#"]),
:root[data-theme="dark"] [style*="background:var(--accent-yellow)"] *:not([style*="color:#"]),
:root[data-theme="dark"] [style*="background: var(--accent-yellow)"] *:not([style*="color:#"]) {
color: inherit;
}
html .acad-filter-tabs { max-width: 100%; overflow-x: auto; scrollbar-width: none; }
html .acad-filter-tabs::-webkit-scrollbar { display: none; }
html .acad-filter-tab { flex: 0 0 auto; white-space: nowrap; }
html .acad-sort-label { white-space: nowrap; }
html .acad-section-header { flex-wrap: wrap; gap: 12px; }
html .acad-section-title { font-size: clamp(1.5rem, 7vw, 2rem); }
@media (max-width: 575.98px) {
html .acad-filter-tab { padding: 12px 18px; }
html .chapter-row { flex-wrap: wrap; gap: 6px 12px; }
html .chapter-title-text { flex: 1 1 10rem; min-width: 0; }
html .fnv-gate-live li { grid-template-columns: minmax(0, 1fr); gap: 2px; }
}
html .masarat-hero { padding: 44px 0 36px; }
html .hero-headline { font-size: clamp(1.9rem, 3.2vw, 2.6rem); line-height: 1.4; margin-bottom: 14px; text-shadow: none; }
html .chapter-list-ed { background: var(--fnv-surface); }
@media (min-width: 768px) {
html #maq-toc ul.is-flow { display: block; columns: 2; column-gap: 32px; }
html #maq-toc ul.is-flow li { break-inside: avoid; margin-bottom: 10px; }
html #maq-toc.is-short { width: fit-content; min-width: min(100%, 22rem); max-width: 100%; }
}
html #maq-toc a:hover, html #maq-toc a:focus-visible { opacity: 1; text-decoration: underline; text-underline-offset: 4px; }
.fnv-fig { margin: 28px 0; }
.fnv-fig__svg { display: block; width: 100%; max-width: 560px; height: auto; margin-inline: auto; }
.fnv-fig__pair { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }
@media (min-width: 768px) { .fnv-fig__pair { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.fnv-fig figcaption { margin-top: 12px; font-size: .9rem; line-height: 1.9; color: var(--fnv-ink-2); border-inline-start: 3px solid var(--fnv-ink); padding-inline-start: 12px; }
.fnv-fig svg text { unicode-bidi: plaintext; font-family: var(--fnv-font-body); fill: var(--fnv-ink); }
.fnv-fig .fg-t { font-size: 15px; font-weight: 600; }
.fnv-fig .fg-tm { font-size: 14px; font-weight: 600; fill: var(--fnv-ink-2); }
.fnv-fig .fg-tb { font-size: 17px; font-weight: 800; }
.fnv-fig .fg-n { font-family: var(--fnv-font-mono); font-size: 15px; font-weight: 700; }
.fnv-fig .fg-small { font-size: 13px; fill: var(--fnv-ink-3); }
.fnv-fig .fg-strong { font-weight: 800; }
.fnv-fig .fg-tag { fill: var(--fnv-ink); }
.fnv-fig .fg-mono { font-family: var(--fnv-font-mono); }
.fnv-fig .fnv-fig__svg .fg-tag-t { fill: var(--fnv-surface); font-size: 13px; font-weight: 800; }
.fnv-fig .fg-ax { stroke: var(--fnv-ink-3); stroke-width: 1.5; }
.fnv-fig .fg-ln { stroke: var(--fnv-ink); stroke-width: 3; fill: none; }
.fnv-fig .fg-dash { stroke: var(--fnv-ink-3); stroke-width: 1.5; stroke-dasharray: 5 5; }
.fnv-fig .fg-dot { fill: var(--fnv-ink); }
.fnv-fig .fg-sh { fill: var(--fnv-surface-2); }
.fnv-fig .fg-key { stroke: var(--fnv-ink-3); stroke-width: 1; }
.fnv-fig .fg-box { fill: var(--fnv-surface); stroke: var(--fnv-ink); stroke-width: 1.5; }
.fnv-fig .fg-row { fill: none; stroke: var(--fnv-ink-3); stroke-width: .75; }
html .pd-plan { margin-top: 40px; }
html .pd-plan__s { margin-bottom: 28px; }
html .pd-plan .pd-sec-title { font-size: 1.25rem; font-weight: 800; margin-bottom: 12px; }
html .pd-plan__p { color: var(--fnv-ink-2); font-weight: 400; margin: 0 0 12px; }
