/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.contents{display:contents}.hidden{display:none}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--bg:#fff;--bg-2:#f6f6f7;--card:#fff;--card-2:#fafafa;--border:#0000001a;--border-2:#0000002e;--text:#111;--text-soft:#333;--muted:#666;--faint:#6b6b70;--accent:#2f5fe0;--accent-2:#1e44ad;--accent-ink:#fff;--accent-dim:#ebf1fd;--glow:#2f5fe029;--good:#1f8a4c;--bad:#c4392b;--code-bg:#0b0f14;--code-border:#94a3b826;--code-text:#d7e2ee;--shadow:0 1px 2px #0000000a, 0 6px 16px -10px #00000014;--nav-bg:#ffffffdb;--fc-fill:#fff;--fc-stroke:#0000002e;--fc-edge:#6b6b70;--fcg-fill:#1f8a4c1a;--fcg-stroke:#1f8a4c80;--fcg-text:#1b7a43;--fcr-fill:#c4392b14;--fcr-stroke:#c4392b73;--fcr-text:#a83122}@media (prefers-color-scheme:dark){:root{--bg:#0b0b0c;--bg-2:#151517;--card:#151517;--card-2:#19191c;--border:#ffffff1f;--border-2:#fff3;--text:#f2f2f3;--text-soft:#d6d6d9;--muted:#98989e;--faint:#8c8c92;--accent:#6c93f5;--accent-2:#8faef8;--accent-ink:#0b1220;--accent-dim:#16223f;--glow:#6c93f52e;--good:#39b871;--bad:#dd6656;--shadow:0 1px 2px #0006, 0 6px 20px -10px #00000080;--nav-bg:#0b0b0cdb;--fc-fill:#19191c;--fc-stroke:#ffffff38;--fc-edge:#9a9aa0;--fcg-fill:#39b8711f;--fcg-stroke:#39b87180;--fcg-text:#77d89e;--fcr-fill:#dd66561f;--fcr-stroke:#dd665680;--fcr-text:#e79284}}:root[data-theme=light]{--bg:#fff;--bg-2:#f6f6f7;--card:#fff;--card-2:#fafafa;--border:#0000001a;--border-2:#0000002e;--text:#111;--text-soft:#333;--muted:#666;--faint:#6b6b70;--accent:#2f5fe0;--accent-2:#1e44ad;--accent-ink:#fff;--accent-dim:#ebf1fd;--glow:#2f5fe029;--good:#1f8a4c;--bad:#c4392b;--shadow:0 1px 2px #0000000a, 0 6px 16px -10px #00000014;--nav-bg:#ffffffdb;--fc-fill:#fff;--fc-stroke:#0000002e;--fc-edge:#6b6b70;--fcg-fill:#1f8a4c1a;--fcg-stroke:#1f8a4c80;--fcg-text:#1b7a43;--fcr-fill:#c4392b14;--fcr-stroke:#c4392b73;--fcr-text:#a83122}:root[data-theme=dark]{--bg:#0b0b0c;--bg-2:#151517;--card:#151517;--card-2:#19191c;--border:#ffffff1f;--border-2:#fff3;--text:#f2f2f3;--text-soft:#d6d6d9;--muted:#98989e;--faint:#8c8c92;--accent:#6c93f5;--accent-2:#8faef8;--accent-ink:#0b1220;--accent-dim:#16223f;--glow:#6c93f52e;--good:#39b871;--bad:#dd6656;--shadow:0 1px 2px #0006, 0 6px 20px -10px #00000080;--nav-bg:#0b0b0cdb;--fc-fill:#19191c;--fc-stroke:#ffffff38;--fc-edge:#9a9aa0;--fcg-fill:#39b8711f;--fcg-stroke:#39b87180;--fcg-text:#77d89e;--fcr-fill:#dd66561f;--fcr-stroke:#dd665680;--fcr-text:#e79284}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--sans);margin:0;font-size:16.5px;line-height:1.7;transition:background .35s,color .35s;overflow-x:clip}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}img,svg{vertical-align:middle;max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.mono{font-family:var(--mono)}.wrap{max-width:1160px;margin:0 auto;padding:0 24px}.grad{color:var(--accent)}h1,h2,h3,h4{text-wrap:balance;margin:0}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:6px}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1!important;transform:none!important}}#readbar{z-index:80;transform-origin:0;background:linear-gradient(90deg,var(--accent),var(--accent-2));width:100%;height:3px;position:fixed;top:0;left:0;transform:scaleX(0)}.nav{z-index:60;background:var(--nav-bg);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);position:sticky;top:0}.nav-inner{align-items:center;gap:28px;max-width:1160px;height:64px;margin:0 auto;padding:0 24px;display:flex}.brand{letter-spacing:-.01em;flex-shrink:0;align-items:center;gap:10px;font-size:1.06rem;font-weight:750;display:flex}.brand svg{width:26px;height:26px;color:var(--accent)}.nav-links{gap:4px;margin-left:auto;display:flex}.nav-links a{color:var(--muted);border-radius:8px;padding:7px 12px;font-size:.92rem;transition:color .2s,background .2s}.nav-links a:hover{color:var(--text);background:var(--accent-dim)}.nav-links a.on{color:var(--accent)}.nav-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.iconbtn{width:36px;height:36px;color:var(--muted);border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;transition:all .2s;display:inline-flex}.iconbtn:hover{color:var(--text);border-color:var(--border-2);background:var(--card)}.iconbtn svg{width:18px;height:18px}.tt-moon{display:inline-flex}.tt-sun{display:none}@media (prefers-color-scheme:dark){.tt-moon{display:none}.tt-sun{display:inline-flex}}:root[data-theme=dark] .tt-sun{display:inline-flex}:root[data-theme=dark] .tt-moon,:root[data-theme=light] .tt-sun{display:none}:root[data-theme=light] .tt-moon{display:inline-flex}.burger,.nav-panel{display:none}@media (width<=920px){.nav-links{display:none}.burger{display:inline-flex}.nav-panel{background:var(--bg-2);border-bottom:1px solid var(--border);box-shadow:var(--shadow);padding:10px 24px 18px;display:none;position:absolute;top:64px;left:0;right:0}.nav.nav-open .nav-panel{animation:.25s both panelIn;display:block}.nav-panel a{color:var(--text-soft);border-bottom:1px solid var(--border);padding:11px 6px;font-size:1.02rem;display:block}.nav-panel a:last-child{border-bottom:none}.nav-panel a.on{color:var(--accent)}}@keyframes panelIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.burger .ic-x,.nav.nav-open .burger .ic-menu{display:none}.nav.nav-open .burger .ic-x{display:block}.sect{padding:76px 0}.sect-tight{padding:48px 0}.eyebrow{font-family:var(--sans);letter-spacing:.01em;color:var(--accent);align-items:center;gap:8px;margin-bottom:14px;font-size:.85rem;font-weight:700;display:flex}.eyebrow:before{content:"";background:var(--accent);border-radius:2px;width:16px;height:2px}.h-sec{letter-spacing:-.025em;font-size:clamp(1.7rem,3.4vw,2.35rem);font-weight:750;line-height:1.15}.sub{color:var(--muted);max-width:58ch;margin:14px 0 0;font-size:1.04rem}.reveal{opacity:0;transition:opacity .65s cubic-bezier(.22,1,.36,1) var(--d,0s), transform .65s cubic-bezier(.22,1,.36,1) var(--d,0s);transform:translateY(20px)}.reveal.in{opacity:1;transform:none}.btn{white-space:nowrap;border:1px solid #0000;border-radius:11px;align-items:center;gap:9px;padding:12px 22px;font-size:.95rem;font-weight:600;transition:all .22s;display:inline-flex}.btn svg{width:17px;height:17px;transition:transform .22s}.btn:hover svg{transform:translate(3px)}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{background:var(--accent-2)}.btn-ghost{border-color:var(--border-2);color:var(--text-soft)}.btn-ghost:hover{border-color:var(--accent);color:var(--text);background:var(--accent-dim)}.btn-sm{border-radius:9px;padding:8px 15px;font-size:.87rem}.hero{border-bottom:1px solid var(--border);position:relative}.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:56px;padding:88px 0 84px;display:grid;position:relative}@media (width<=980px){.hero-grid{grid-template-columns:1fr;gap:40px;padding:56px 0}}.badge{font-family:var(--sans);color:var(--text-soft);border:1px solid var(--border-2);background:var(--card);border-radius:100px;align-items:center;gap:9px;margin-bottom:24px;padding:6px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.hero h1{letter-spacing:-.015em;font-size:clamp(2.2rem,4.6vw,3.3rem);font-weight:750;line-height:1.15}.hero .sub{max-width:46ch;margin-top:20px;font-size:1.1rem}.hero-ctas{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.path-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:26px}.path-card h3{letter-spacing:-.01em;margin:0 0 8px;font-size:1.08rem;font-weight:700}.path-card p{color:var(--muted);margin:0 0 16px;font-size:.93rem}.pc-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.pc-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:700}.pc-count{color:var(--accent);font-size:.78rem;font-weight:700}.hc>*{opacity:0;animation:.5s forwards fadeUp}.hc>:first-child{animation-delay:30ms}.hc>:nth-child(2){animation-delay:90ms}.hc>:nth-child(3){animation-delay:.15s}.hc>:nth-child(4){animation-delay:.21s}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}@media (width<=920px){.grid-3,.grid-2{grid-template-columns:1fr}}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:28px;transition:transform .2s,border-color .2s,box-shadow .2s;display:block;position:relative}.card:hover{border-color:var(--border-2);box-shadow:var(--shadow);transform:translateY(-2px)}a.card:hover,button.card:hover{border-color:var(--accent)}.fcard .fc-ic{background:var(--accent-dim);width:44px;height:44px;color:var(--accent);border-radius:11px;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.fcard .fc-ic svg{width:22px;height:22px}.fcard h3{letter-spacing:-.015em;margin-bottom:4px;font-size:1.16rem;font-weight:700}.fcard .fc-sub{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin-bottom:12px;font-size:.72rem}.fcard p{color:var(--muted);margin:0 0 18px;font-size:.95rem}.golink{color:var(--accent);align-items:center;gap:7px;font-size:.9rem;font-weight:600;display:inline-flex}.golink svg{width:15px;height:15px;transition:transform .22s}.card:hover .golink svg{transform:translate(4px)}.acard{cursor:pointer;text-align:left;width:100%}.acard-image{aspect-ratio:16/9;object-fit:cover;background:var(--bg-2);border-radius:14px 14px 0 0;width:calc(100% + 56px);margin:-28px -28px 20px;display:block}.chips{flex-wrap:wrap;gap:7px;margin-bottom:14px;display:flex}.chip{font-family:var(--sans);letter-spacing:0;color:var(--accent);background:var(--accent-dim);border:1px solid #0000;border-radius:100px;padding:3px 10px;font-size:.72rem;font-weight:700}.chip-dim{color:var(--muted);border-color:var(--border);background:0 0}.acard h3{letter-spacing:-.015em;margin-bottom:8px;font-size:1.13rem;font-weight:700;line-height:1.35;transition:color .2s}.acard:hover h3{color:var(--accent)}.acard p{color:var(--muted);margin:0 0 16px;font-size:.93rem}.meta{font-family:var(--sans);color:var(--faint);flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;display:flex}.meta .sep{opacity:.6}.featured-tag{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--good);border:1px solid #4ade8059;border-radius:100px;padding:3px 9px;font-size:.65rem;position:absolute;top:20px;right:20px}.strip-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:26px;display:flex}.strip-head .golink{font-size:.92rem}.band{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.band-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;display:grid}@media (width<=920px){.band-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.band-grid{grid-template-columns:1fr}}.band-item{align-items:flex-start;gap:13px;display:flex}.band-item svg{width:19px;height:19px;color:var(--good);flex-shrink:0;margin-top:4px}.band-item h4{margin-bottom:3px;font-size:.98rem;font-weight:650}.band-item p{color:var(--muted);margin:0;font-size:.87rem;line-height:1.55}.pagehead{padding:70px 0 14px}.pagehead .sub{margin-bottom:0}.backlink{font-family:var(--mono);color:var(--muted);align-items:center;gap:7px;margin-bottom:30px;font-size:.8rem;transition:color .2s;display:inline-flex}.backlink:hover{color:var(--accent)}.backlink svg{width:14px;height:14px;transform:rotate(180deg)}.art-head{max-width:820px;padding:56px 0 0}.art-head h1{letter-spacing:-.03em;margin:18px 0;font-size:clamp(1.9rem,4.4vw,2.9rem);font-weight:800;line-height:1.14}.art-head .desc{color:var(--muted);max-width:62ch;margin:0 0 22px;font-size:1.08rem}.art-hero-image{aspect-ratio:16/9;object-fit:cover;border:1px solid var(--border);background:var(--bg-2);border-radius:16px;width:100%;height:auto;margin:36px 0 0;display:block}.art-layout{grid-template-columns:minmax(0,1fr) 236px;gap:60px;padding:44px 0 40px;display:grid}@media (width<=1020px){.art-layout{grid-template-columns:1fr;gap:0}.toc-side{display:none}}.prose{min-width:0;max-width:72ch}.prose p{color:var(--text-soft);margin:0 0 1.35em}.prose h2{letter-spacing:-.02em;color:var(--text);margin:2.3em 0 .85em;scroll-margin-top:96px;font-size:1.44rem;font-weight:750}.prose h2:before{content:"## ";color:var(--accent);font-family:var(--mono);font-size:.85em;font-weight:600}.prose em{color:var(--text)}.prose strong{color:var(--text);font-weight:650}.prose ol,.prose ul{color:var(--text-soft);margin:0 0 1.35em;padding-left:1.35em}.prose li{margin-bottom:.5em}.prose li::marker{color:var(--accent);font-family:var(--mono);font-size:.9em}.prose code:not(pre code){font-family:var(--mono);color:var(--text);background:var(--accent-dim);border:1px solid var(--border);white-space:nowrap;border-radius:6px;padding:1.5px 6px;font-size:.86em}.prose h3{letter-spacing:-.015em;color:var(--text);margin:1.9em 0 .7em;scroll-margin-top:96px;font-size:1.14rem;font-weight:700}.prose a{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:var(--border-2);-webkit-text-decoration-color:var(--border-2);text-decoration-color:var(--border-2);text-underline-offset:2px;transition:text-decoration-color .2s}.prose a:hover{-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.prose blockquote{border-left:2px solid var(--accent);color:var(--text-soft);margin:1.7em 0;padding:2px 22px;font-style:italic}.prose blockquote p:last-child{margin-bottom:0}.prose img{border:1px solid var(--border);border-radius:12px;margin:1.7em 0}.prose hr{border:none;border-top:1px solid var(--border);margin:2.4em 0}.prose table{border-collapse:collapse;width:100%;margin:1.7em 0;font-size:.9rem}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--border);padding:10px 14px}.prose th{color:var(--faint);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-2);font-size:.76rem;font-weight:600}.prose td{color:var(--text-soft)}.prose tr:last-child td{border-bottom:none}.toc-side{align-self:start;font-size:.86rem;position:sticky;top:92px}.toc-title{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--faint);margin-bottom:14px;font-size:.7rem}.toc-side a{text-align:left;width:100%;color:var(--muted);border-left:2px solid var(--border);padding:6px 0 6px 14px;font-size:.855rem;line-height:1.4;transition:all .2s;display:block}.toc-side a:hover{color:var(--text)}.toc-side a.on{color:var(--accent);border-left-color:var(--accent)}.toc-m{border:1px solid var(--border);background:var(--card);border-radius:12px;margin:26px 0 6px;display:none;overflow:hidden}@media (width<=1020px){.toc-m{display:block}}.toc-m summary{cursor:pointer;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;padding:13px 18px;font-size:.76rem;list-style:none;display:flex}.toc-m summary::-webkit-details-marker{display:none}.toc-m summary:after{content:"+";color:var(--accent);font-size:1rem}.toc-m[open] summary:after{content:"–"}.toc-m .toc-list{padding:2px 18px 14px}.toc-m a{text-align:left;width:100%;color:var(--muted);padding:7px 0;font-size:.9rem;display:block}.toc-m a:hover{color:var(--accent)}.astro-code-wrap{border:1px solid var(--code-border);background:var(--code-bg);border-radius:12px;margin:1.7em 0;overflow:hidden}.code-head{border-bottom:1px solid var(--code-border);background:#94a3b80d;justify-content:space-between;align-items:center;gap:12px;padding:9px 16px;display:flex}.code-lang{font-family:var(--mono);color:#7487a0;letter-spacing:.05em;font-size:.72rem}.copybtn{font-family:var(--mono);color:#8fa1b8;border:1px solid #94a3b838;border-radius:7px;align-items:center;gap:6px;padding:4px 11px;font-size:.72rem;transition:all .2s;display:inline-flex}.copybtn svg{width:12px;height:12px}.copybtn:hover{color:#2ad4ee;border-color:#2ad4ee80}.copybtn.ok{color:#4ade80;border-color:#4ade8080}.astro-code-wrap pre{font-family:var(--mono);margin:0;padding:18px 20px;font-size:.83rem;line-height:1.75;overflow-x:auto}.astro-code-wrap pre code{font-family:inherit}.termout{border:1px solid var(--code-border);background:var(--code-bg);border-radius:12px;margin:1.7em 0;overflow:hidden}.termout .code-head{background:#94a3b80d}.termout pre{font-family:var(--mono);color:#a8b7c7;margin:0;padding:18px 20px;font-size:.8rem;line-height:1.8;overflow-x:auto}.to-fail{color:#f87171;font-weight:600}.mermaid-wrap{border:1px solid var(--border);background:var(--bg-2);border-radius:14px;margin:2em 0;padding:20px;overflow-x:auto}.mermaid-wrap.loading{min-height:180px;color:var(--faint);font-family:var(--mono);justify-content:center;align-items:center;font-size:.8rem;display:flex}.endmatter{max-width:72ch}.author-card{border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:18px;margin:44px 0 0;padding:22px 24px;display:flex}.avatar{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#04222b;letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.05rem;font-weight:800;display:flex}.author-card .ac-name{font-size:.98rem;font-weight:700}.author-card p{color:var(--muted);margin:2px 0 0;font-size:.88rem}.author-card a{color:var(--accent)}.giscus-box{border:1px solid var(--border);background:var(--card);border-radius:14px;margin:44px 0 0;overflow:hidden}#giscus-comments{padding:22px}.tabs{border:1px solid var(--border);background:var(--card);border-radius:100px;gap:4px;margin-bottom:34px;padding:4px;display:inline-flex}.tab-btn{font-family:var(--mono);color:var(--muted);border-radius:100px;padding:9px 20px;font-size:.82rem;transition:all .2s}.tab-btn.on{background:var(--accent);color:var(--accent-ink)}.tab-panel{display:none}.tab-panel.active{animation:.4s cubic-bezier(.22,1,.36,1) both panelIn;display:block}.vgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}@media (width<=920px){.vgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.vgrid{grid-template-columns:1fr}}.vcard{border:1px solid var(--border);background:var(--card);cursor:pointer;text-align:left;border-radius:14px;width:100%;transition:transform .2s,border-color .2s;display:block;overflow:hidden}.vcard:hover{border-color:var(--border-2);transform:translateY(-2px)}.vthumb{aspect-ratio:16/10;background:repeating-linear-gradient(135deg, var(--accent-dim) 0 2px, var(--card-2) 2px 16px);justify-content:center;align-items:center;display:flex;position:relative}.vplay{color:#fff;opacity:.9;background:#060a108c;border:1px solid #ffffff59;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:all .25s;display:flex;transform:scale(.92)}.vplay svg{width:18px;height:18px;margin-left:2px}.vcard:hover .vplay{opacity:1;color:#fff;background:red;border-color:red;transform:scale(1.05)}.yt-ic{vertical-align:-2px;width:13px;height:13px;margin-right:5px;display:inline-block}.vdur{color:#fff;font-family:var(--mono);background:#060a10a6;border-radius:5px;padding:3px 7px;font-size:.68rem;position:absolute;bottom:9px;right:9px}.vlvl{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#fff;background:#060a108c;border-radius:5px;padding:3px 8px;font-size:.62rem;position:absolute;top:9px;left:9px}.vprog{background:var(--border);height:3px}.vprog i{background:var(--accent);height:100%;display:block}.vinfo{padding:15px 16px 17px}.vinfo h4{margin-bottom:4px;font-size:.96rem;font-weight:700;line-height:1.35}.vinfo p{color:var(--muted);font-size:.8rem;font-family:var(--mono);margin:0}.podcast-wrap{grid-template-columns:.92fr 1.08fr;gap:28px;display:grid}@media (width<=880px){.podcast-wrap{grid-template-columns:1fr}}.player{border:1px solid var(--border);background:var(--card);border-radius:14px;padding:28px}.player-show{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;font-size:.72rem}.player h3{margin-bottom:6px;font-size:1.24rem;font-weight:750;line-height:1.4}.wave{align-items:flex-end;gap:3px;height:56px;margin:18px 0;display:flex}.wave i{background:var(--border-2);transform-origin:bottom;border-radius:2px;flex:1;min-width:2px;max-width:4px;transition:background .25s}.wave.playing i{background:var(--accent);animation:1s ease-in-out infinite wv}@keyframes wv{0%,to{transform:scaleY(.55)}50%{transform:scaleY(1)}}.player-controls{align-items:center;gap:16px;display:flex}.play-toggle{background:var(--accent);width:48px;height:48px;color:var(--accent-ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s;display:flex}.play-toggle:hover{transform:scale(1.05)}.play-toggle svg{width:16px;height:16px}.play-toggle .ic-pause,.play-toggle.is-playing .ic-play{display:none}.play-toggle.is-playing .ic-pause{display:block}.ptime{font-family:var(--mono);color:var(--muted);font-size:.78rem}.ep-list{flex-direction:column;display:flex}.ep-row{border-bottom:1px solid var(--border);align-items:center;gap:16px;padding:16px 4px;display:flex}.ep-row:last-child{border-bottom:none}.ep-num{font-family:var(--mono);color:var(--faint);flex-shrink:0;width:26px;font-size:.86rem}.ep-row h5{margin:0 0 3px;font-size:.93rem;font-weight:700}.ep-dur{font-family:var(--mono);color:var(--muted);font-size:.75rem}.path-wrap{max-width:640px}.path{border-left:1px solid var(--border);flex-direction:column;margin-left:15px;display:flex}.path-step{padding:0 0 36px 34px;position:relative}.path-step:last-child{padding-bottom:2px}.path-dot{border:1px solid var(--border);background:var(--bg);width:29px;height:29px;color:var(--faint);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:-15.5px}.path-step.done .path-dot{background:var(--good);border-color:var(--good);color:#062712}.path-step.current .path-dot{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 5px var(--accent-dim)}.path-step h4{margin:3px 0 4px;font-size:1rem;font-weight:700}.path-step.locked h4{color:var(--muted)}.path-step p{color:var(--muted);margin:0;font-size:.86rem}.svc-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:48px;display:grid}@media (width<=920px){.svc-grid{grid-template-columns:1fr}}.svc-card{border:1px solid var(--border);background:var(--card);border-radius:14px;padding:28px;transition:transform .2s,border-color .2s}.svc-card:hover{border-color:var(--border-2);transform:translateY(-2px)}.svc-card .fc-ic{margin-bottom:18px}.svc-card h3{margin-bottom:8px;font-size:1.08rem;font-weight:700}.svc-card p{color:var(--muted);margin:0;font-size:.92rem}.contact-band{border:1px solid var(--border);text-align:center;background:var(--card-2);border-radius:16px;padding:48px 32px}.contact-band h2{margin-bottom:10px;font-size:1.6rem;font-weight:750}.contact-band p{color:var(--muted);margin:0 0 26px;font-size:1rem}.contact-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.about-wrap{grid-template-columns:150px 1fr;align-items:start;gap:40px;padding:70px 0 96px;display:grid}@media (width<=680px){.about-wrap{grid-template-columns:1fr}}.avatar-lg{background:var(--bg-2);border:1px solid var(--border);width:132px;height:132px;color:var(--muted);letter-spacing:.02em;border-radius:50%;justify-content:center;align-items:center;font-size:2.5rem;font-weight:700;display:flex}.about-body h1{letter-spacing:-.02em;margin-bottom:18px;font-size:1.8rem;font-weight:800}.about-body p{color:var(--text-soft);max-width:64ch;margin:0 0 18px;font-size:1.03rem}.pill-row{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.stat-row{flex-wrap:wrap;gap:14px;margin:26px 0 30px;display:flex}.stat-item{background:var(--card);border:1px solid var(--border);border-radius:14px;min-width:150px;padding:16px 20px;transition:border-color .2s,transform .2s}.stat-item:hover{border-color:var(--border-2);transform:translateY(-2px)}.stat-num{font-family:var(--mono);color:var(--accent);font-size:1.75rem;font-weight:700;line-height:1}.stat-label{color:var(--muted);max-width:22ch;margin-top:6px;font-size:.8rem}.stat-item-cadence{flex-direction:column;justify-content:center;display:flex}.cadence-row{font-family:var(--mono);color:var(--text-soft);white-space:nowrap;align-items:center;gap:8px;font-size:.92rem;display:flex}.cadence-row svg{width:15px;height:15px;color:var(--faint);flex-shrink:0}.cadence-row .accent{color:var(--accent);font-weight:700}.about-body .tabs,.about-body .tab-panel{margin-bottom:22px}.sitefoot{border-top:1px solid var(--border);margin-top:10px;padding:56px 0 30px}.foot-top{flex-wrap:wrap;justify-content:space-between;gap:40px;margin-bottom:38px;display:flex}.foot-brand p{color:var(--muted);max-width:32ch;margin:14px 0 0;font-size:.88rem}.foot-cols{flex-wrap:wrap;gap:60px;display:flex}.foot-col h5{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin-bottom:14px;font-size:.72rem}.foot-col a{color:var(--muted);padding:6px 0;font-size:.87rem;transition:color .2s;display:block}.foot-col a:hover{color:var(--text)}.foot-social{align-self:flex-start;gap:10px;display:flex}.foot-bottom{border-top:1px solid var(--border);font-family:var(--mono);color:var(--faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:24px;font-size:.78rem;display:flex}#toast{opacity:0;pointer-events:none;background:var(--text);color:var(--bg);box-shadow:var(--shadow);z-index:100;text-align:center;border-radius:11px;max-width:86vw;padding:12px 20px;font-size:.86rem;font-weight:600;transition:opacity .25s,transform .25s;position:fixed;bottom:26px;left:50%;transform:translate(-50%,12px)}#toast.show{opacity:1;pointer-events:auto;transform:translate(-50%)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
