/* Miucci Whitepaper — all selectors are scoped to .mc-wp-container. */
.mc-wp-container {
    --mc-wp-bg-base: #0B0C10;
    --mc-wp-bg-surface: #121418;
    --mc-wp-bg-raised: #171A20;
    --mc-wp-text-main: #C5C8CE;
    --mc-wp-text-muted: #969BA5;
    --mc-wp-text-title: #F7F9FB;
    --mc-wp-accent: #00EBA1;
    --mc-wp-border: #2A2E36;
    --mc-wp-warning: #E8B65C;
    color: var(--mc-wp-text-main);
    background: var(--mc-wp-bg-base);
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 1px 0 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
    font-size: 16px;
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    box-sizing: border-box;
    color-scheme: dark;
}

.mc-wp-container *,
.mc-wp-container *::before,
.mc-wp-container *::after { box-sizing: border-box; }

.mc-wp-container a { color: var(--mc-wp-accent); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.mc-wp-container a:hover { color: #7CFFD5; }
.mc-wp-container a:focus-visible,
.mc-wp-container button:focus-visible,
.mc-wp-container [tabindex="0"]:focus-visible {
    outline: 2px solid var(--mc-wp-accent);
    outline-offset: 4px;
}

.mc-wp-container .mc-wp-layout {
    width: min(1200px, 100%);
    margin: 0 auto;
    padding: clamp(28px, 4vw, 56px) clamp(20px, 3.5vw, 40px) 64px;
    display: grid;
    grid-template-columns: minmax(210px, 250px) minmax(0, 1fr);
    gap: clamp(32px, 5vw, 66px);
    align-items: start;
}

.mc-wp-container .mc-wp-sidebar {
    min-width: 0;
    position: sticky;
    align-self: start;
    top: 96px;
    /* Keep one document scroll. A nested scroll box here can make the main article
       appear frozen when the pointer/wheel is over the table of contents. */
    max-height: none;
    overflow: visible;
    border-right: 1px solid var(--mc-wp-border);
    padding: 5px 20px 18px 0;
}
/* The article and hero always participate in normal document flow; only the TOC sticks. */
.mc-wp-container .mc-wp-content,
.mc-wp-container .mc-wp-hero,
.mc-wp-container .mc-wp-meta-grid,
.mc-wp-container .mc-wp-content section {
    position: static !important;
    top: auto !important;
    bottom: auto !important;
    align-self: start;
}
.mc-wp-container .mc-wp-toc-title {
    color: var(--mc-wp-text-muted);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .16em;
    margin: 0 0 18px;
}
.mc-wp-container .mc-wp-toc-toggle {
    display: none;
    width: 100%;
    border: 1px solid var(--mc-wp-border);
    border-radius: 8px;
    background: var(--mc-wp-bg-surface);
    color: var(--mc-wp-text-title);
    padding: 11px 13px;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    font: inherit;
    font-size: 14px;
    text-align: left;
}
.mc-wp-container .mc-wp-toggle-icon { color: var(--mc-wp-accent); font-size: 18px; line-height: 1; }
.mc-wp-container .mc-wp-toc { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.mc-wp-container .mc-wp-toc li { margin: 0 0 7px !important; padding: 0 !important; }
.mc-wp-container .mc-wp-toc li::marker { content: ""; }
.mc-wp-container .mc-wp-toc a {
    display: block;
    margin: 0;
    border-left: 2px solid transparent;
    padding: 7px 9px 7px 12px;
    border-radius: 0 5px 5px 0;
    color: var(--mc-wp-text-muted);
    text-decoration: none;
    font-size: 13px;
    line-height: 1.55;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}
.mc-wp-container .mc-wp-toc a:hover,
.mc-wp-container .mc-wp-toc a.active {
    color: var(--mc-wp-accent);
    border-left-color: var(--mc-wp-accent);
    background: rgba(0, 235, 161, .055);
}

.mc-wp-container .mc-wp-content { min-width: 0; max-width: 850px; }
.mc-wp-container .mc-wp-content > *:first-child { margin-top: 0; }
.mc-wp-container .mc-wp-content section { margin: 0 0 clamp(46px, 6vw, 70px); scroll-margin-top: 100px; }
.mc-wp-container .mc-wp-content section[id] { scroll-margin-block-start: 100px; }
.mc-wp-container .mc-wp-content p { margin: 0 0 17px; color: var(--mc-wp-text-main); font-size: 15px; line-height: 1.95; text-align: left; overflow-wrap: anywhere; }
.mc-wp-container .mc-wp-content p:last-child { margin-bottom: 0; }
.mc-wp-container .mc-wp-content strong { color: var(--mc-wp-text-title); font-weight: 650; }
.mc-wp-container .mc-wp-content em { color: var(--mc-wp-text-title); }
.mc-wp-container .mc-wp-content var { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: #E8F8F2; font-style: normal; }
.mc-wp-container .mc-wp-content ul,
.mc-wp-container .mc-wp-content ol { margin: 0 0 24px; padding-left: 1.45em; }
.mc-wp-container .mc-wp-content li { margin: 0 0 9px; padding-left: 3px; color: var(--mc-wp-text-main); font-size: 15px; line-height: 1.85; }
.mc-wp-container .mc-wp-content li::marker { color: var(--mc-wp-accent); }
.mc-wp-container .mc-wp-content h1,
.mc-wp-container .mc-wp-content h2,
.mc-wp-container .mc-wp-content h3 { color: var(--mc-wp-text-title); font-family: inherit; letter-spacing: -.025em; text-align: left; overflow-wrap: anywhere; }
.mc-wp-container .mc-wp-content h1 { margin: 0 0 16px; font-size: clamp(30px, 3.3vw, 43px); line-height: 1.25; font-weight: 620; }
.mc-wp-container .mc-wp-content h2 { margin: 0 0 24px; padding: 0 0 14px; border-bottom: 1px solid var(--mc-wp-border); font-size: clamp(23px, 2.2vw, 28px); line-height: 1.4; font-weight: 580; }
.mc-wp-container .mc-wp-content h3 { margin: 34px 0 14px; font-size: clamp(17px, 1.5vw, 19px); line-height: 1.55; font-weight: 650; }
.mc-wp-container .mc-wp-content section h3:first-of-type { margin-top: 27px; }

.mc-wp-container .mc-wp-hero { margin: 0 0 42px; padding: 0 0 36px; border-bottom: 1px solid var(--mc-wp-border); }
.mc-wp-container .mc-wp-hero-brand { display: inline-block; color: var(--mc-wp-accent); margin: 0 0 10px; font-size: 12px; font-weight: 700; letter-spacing: .13em; }
.mc-wp-container .mc-wp-hero-brand span { color: var(--mc-wp-text-muted); padding: 0 4px; }
.mc-wp-container .mc-wp-kicker { color: var(--mc-wp-text-muted) !important; margin: 0 0 13px !important; font: 700 10px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important; letter-spacing: .12em; }
.mc-wp-container .mc-wp-content .mc-wp-hero h1 { max-width: 780px; }
.mc-wp-container .mc-wp-content .mc-wp-subtitle { margin: 0 0 25px; color: var(--mc-wp-text-muted); font-size: clamp(16px, 1.7vw, 19px); line-height: 1.65; }
.mc-wp-container .mc-wp-meta-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; border: 1px solid var(--mc-wp-border); border-radius: 10px; background: linear-gradient(145deg, rgba(255,255,255,.025), rgba(255,255,255,.006)); overflow: hidden; }
.mc-wp-container .mc-wp-meta-item { min-width: 0; padding: 17px 18px; border-bottom: 1px solid var(--mc-wp-border); }
.mc-wp-container .mc-wp-meta-item:nth-child(odd) { border-right: 1px solid var(--mc-wp-border); }
.mc-wp-container .mc-wp-meta-item:nth-last-child(-n+2) { border-bottom: 0; }
.mc-wp-container .mc-wp-meta-item strong { display: block; margin: 0 0 5px; color: var(--mc-wp-text-muted); text-transform: uppercase; font-size: 10px; font-weight: 700; letter-spacing: .1em; }
.mc-wp-container .mc-wp-meta-item span { display: block; color: var(--mc-wp-text-title); font-size: 13px; line-height: 1.65; }
.mc-wp-container .mc-wp-section-index { margin: 0 0 9px !important; color: var(--mc-wp-accent) !important; font: 700 10px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important; letter-spacing: .12em; }

.mc-wp-container .mc-wp-box { margin: 25px 0; padding: 18px 21px; border: 1px solid rgba(0, 235, 161, .15); border-left: 3px solid var(--mc-wp-accent); border-radius: 0 8px 8px 0; background: rgba(0, 235, 161, .045); }
.mc-wp-container .mc-wp-box p { margin-bottom: 10px; }
.mc-wp-container .mc-wp-box p:last-child { margin-bottom: 0; }
.mc-wp-container .mc-wp-box-muted { border-left-color: #7C8797; border-color: rgba(124, 135, 151, .23); background: rgba(124, 135, 151, .055); }
.mc-wp-container .mc-wp-box-warning { border-left-color: var(--mc-wp-warning); border-color: rgba(232, 182, 92, .22); background: rgba(232, 182, 92, .055); }
.mc-wp-container .mc-wp-box-warning strong { color: #F4D28D; }
.mc-wp-container .mc-wp-formula { display: block; width: 100%; max-width: 100%; margin: 13px 0; padding: 15px 17px; overflow-wrap: anywhere; white-space: normal; border: 1px solid var(--mc-wp-border); border-radius: 7px; background: #151820; color: var(--mc-wp-accent); font: 600 14px/1.7 ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; }
.mc-wp-container .mc-wp-english-subtitle { display: block; margin-top: 5px; color: var(--mc-wp-text-muted); font-size: 11px; line-height: 1.7; font-weight: 500; letter-spacing: .065em; }
.mc-wp-container .mc-wp-rule { height: 0; border: 0; border-top: 1px solid var(--mc-wp-border); margin: 38px 0; }

.mc-wp-container .mc-wp-table-wrapper { width: 100%; max-width: 100%; margin: 24px 0; overflow-x: auto; border: 1px solid var(--mc-wp-border); border-radius: 8px; scrollbar-width: thin; scrollbar-color: var(--mc-wp-border) transparent; }
.mc-wp-container .mc-wp-table { width: 100%; min-width: 650px; margin: 0; border: 0; border-collapse: separate; border-spacing: 0; text-align: left; font-size: 13px; background: transparent; }
.mc-wp-container .mc-wp-table th { background: #171A20; color: var(--mc-wp-text-title); padding: 14px 15px; font-size: 12px; font-weight: 650; line-height: 1.5; border: 0; border-bottom: 1px solid var(--mc-wp-border); }
.mc-wp-container .mc-wp-table td { padding: 14px 15px; border: 0; border-bottom: 1px solid var(--mc-wp-border); vertical-align: top; color: var(--mc-wp-text-main); line-height: 1.75; }
.mc-wp-container .mc-wp-table tr:last-child td { border-bottom: 0; }
.mc-wp-container .mc-wp-table tbody tr:hover td { background: rgba(255,255,255,.02); }
.mc-wp-container .mc-wp-table td strong { color: var(--mc-wp-text-title); }
.mc-wp-container .mc-wp-faq-item { padding: 0 0 19px; margin: 0 0 20px; border-bottom: 1px solid var(--mc-wp-border); }
.mc-wp-container .mc-wp-content .mc-wp-faq-item h3 { margin: 0 0 8px; font-size: 16px; }
.mc-wp-container .mc-wp-doc-footer { margin: 12px 0 0; padding: 23px 0 0; border-top: 1px solid var(--mc-wp-border); }
.mc-wp-container .mc-wp-doc-footer p { color: var(--mc-wp-text-muted); font-size: 12px; line-height: 1.8; }
.mc-wp-container .mc-wp-back-to-top { display: inline-flex; align-items: center; margin-top: 12px; padding: 8px 0; color: var(--mc-wp-accent); font-size: 13px; font-weight: 650; text-decoration: none; }

@media (max-width: 940px) {
    .mc-wp-container .mc-wp-layout { grid-template-columns: minmax(0, 1fr); gap: 27px; padding: 30px clamp(18px, 4.5vw, 32px) 48px; }
    .mc-wp-container .mc-wp-sidebar { position: static; max-height: none; overflow: visible; border-right: 0; border-bottom: 1px solid var(--mc-wp-border); padding: 0 0 18px; }
    .mc-wp-container .mc-wp-toc-title { margin-bottom: 10px; }
    .mc-wp-container .mc-wp-toc-toggle { display: none; }
    .mc-wp-container .mc-wp-toc-panel[hidden] { display: none; }
    .mc-wp-container .mc-wp-toc { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3px 12px; }
    .mc-wp-container .mc-wp-toc li { margin-bottom: 2px !important; }
    .mc-wp-container .mc-wp-toc a { padding: 7px 8px 7px 11px; }
    .mc-wp-container .mc-wp-content { max-width: none; }
}

@media (max-width: 600px) {
    .mc-wp-container .mc-wp-layout { padding: 24px 16px 38px; gap: 22px; }
    .mc-wp-container { font-size: 15px; line-height: 1.75; }
    .mc-wp-container .mc-wp-content p, .mc-wp-container .mc-wp-content li { font-size: 14px; line-height: 1.85; }
    .mc-wp-container .mc-wp-content h1 { font-size: clamp(27px, 8vw, 34px); line-height: 1.28; }
    .mc-wp-container .mc-wp-content h2 { font-size: 22px; margin-bottom: 18px; padding-bottom: 10px; }
    .mc-wp-container .mc-wp-content h3 { font-size: 17px; margin-top: 27px; }
    .mc-wp-container .mc-wp-hero { margin-bottom: 32px; padding-bottom: 25px; }
    .mc-wp-container .mc-wp-meta-grid { grid-template-columns: minmax(0, 1fr); }
    .mc-wp-container .mc-wp-meta-item,
    .mc-wp-container .mc-wp-meta-item:nth-child(odd),
    .mc-wp-container .mc-wp-meta-item:nth-last-child(-n+2) { border-right: 0; border-bottom: 1px solid var(--mc-wp-border); padding: 13px 15px; }
    .mc-wp-container .mc-wp-meta-item:last-child { border-bottom: 0; }
    .mc-wp-container .mc-wp-toc-toggle { display: flex; }
    .mc-wp-container.mc-wp-js .mc-wp-toc-panel { margin-top: 8px; }
    .mc-wp-container.mc-wp-js .mc-wp-toc-panel[hidden] { display: none; }
    .mc-wp-container.mc-wp-js .mc-wp-toc { display: block; }
    .mc-wp-container .mc-wp-toc li { margin-bottom: 2px !important; }
    .mc-wp-container .mc-wp-toc a { font-size: 13px; }
    .mc-wp-container .mc-wp-box { padding: 15px 15px; }
    .mc-wp-container .mc-wp-formula { padding: 12px; font-size: 12px; }
    .mc-wp-container .mc-wp-table { min-width: 620px; font-size: 12px; }
    .mc-wp-container .mc-wp-table th, .mc-wp-container .mc-wp-table td { padding: 11px 12px; }
    .mc-wp-container .mc-wp-rule { margin: 29px 0; }
}

@media (prefers-reduced-motion: reduce) {
    .mc-wp-container *, .mc-wp-container *::before, .mc-wp-container *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
