.base-icon[data-v-eeb23840]{display:inline-block;flex-shrink:0;vertical-align:middle}.base-icon--spin[data-v-eeb23840]{animation:base-icon-spin-eeb23840 .8s linear infinite;transform-origin:center}@keyframes base-icon-spin-eeb23840{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.base-icon--spin[data-v-eeb23840]{animation-duration:1.6s}}.icon-btn[data-v-98a89246]{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:var(--text);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.icon-btn[data-v-98a89246]:hover{background:var(--surface-subtle);color:var(--text-strong)}.lang-btn[data-v-296322e6]{display:inline-flex;align-items:center;gap:6px;height:40px;padding-inline:var(--space-3);border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:var(--text);font-family:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.lang-btn[data-v-296322e6]:hover{background:var(--surface-subtle);color:var(--text-strong)}.lang-btn__text[data-v-296322e6]{font-size:13px;font-weight:600}.header[data-v-7a5092bf]{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--surface) 78%,transparent);backdrop-filter:saturate(1.5) blur(18px);border-bottom:1px solid var(--border)}.header__inner[data-v-7a5092bf]{display:flex;align-items:center;gap:clamp(var(--space-4),2vw,var(--space-6));height:var(--header-height)}.brand[data-v-7a5092bf]{display:inline-flex;align-items:center;gap:10px;color:var(--text-strong);text-decoration:none;flex-shrink:0}.brand__mark[data-v-7a5092bf]{display:grid;place-items:center;width:36px;height:36px;transition:transform var(--dur-base) var(--ease-out)}.brand:hover .brand__mark[data-v-7a5092bf]{transform:rotate(-3deg) translateY(-1px)}.brand__mark img[data-v-7a5092bf]{width:34px;height:34px;object-fit:contain;filter:var(--brand-mark-filter)}.brand__wordmark[data-v-7a5092bf]{display:flex;flex-direction:column;justify-content:center;line-height:1}.brand__name[data-v-7a5092bf]{font-size:16px;font-weight:760;letter-spacing:-.055em}.brand__name span[data-v-7a5092bf]{font-weight:420}.brand__factory[data-v-7a5092bf]{margin-top:4px;padding-left:1px;font-family:var(--font-mono);font-size:7px;font-weight:650;letter-spacing:.31em;color:var(--text-muted)}.nav[data-v-7a5092bf]{display:flex;align-items:center;gap:var(--space-2);margin-right:auto}.nav__link[data-v-7a5092bf]{display:inline-flex;align-items:center;gap:4px;padding:8px var(--space-3);border-radius:var(--radius-sm);color:var(--text-secondary);text-decoration:none;font-size:15px;font-weight:500;transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.nav__link[data-v-7a5092bf]:hover{color:var(--text-strong);background:var(--surface-subtle)}.nav__link--active[data-v-7a5092bf]{color:var(--text-strong)}.header__actions[data-v-7a5092bf]{display:flex;align-items:center;gap:var(--space-1)}.header__publish[data-v-7a5092bf]{padding:8px var(--space-3);color:var(--text-secondary);text-decoration:none;font-size:15px;font-weight:500;border-radius:var(--radius-sm)}.header__publish[data-v-7a5092bf]:hover{color:var(--text-strong);background:var(--surface-subtle)}.header__login[data-v-7a5092bf]{display:inline-flex;align-items:center;gap:var(--space-2);height:40px;padding-inline:var(--space-4);background:var(--primary);color:var(--on-primary);border:none;border-radius:var(--radius-pill);font-family:inherit;font-size:14px;font-weight:550;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.header__login[data-v-7a5092bf]:hover{background:var(--primary-hover)}.header__user[data-v-7a5092bf]{display:inline-flex;align-items:center;gap:var(--space-2);height:40px;padding:4px 12px 4px 5px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-strong);text-decoration:none;font-size:14px;font-weight:550;max-width:180px}.header__user[data-v-7a5092bf]:hover{background:var(--surface-subtle)}.header__avatar[data-v-7a5092bf]{border-radius:50%;flex-shrink:0}.header__user-name[data-v-7a5092bf]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header__burger[data-v-7a5092bf]{display:none;align-items:center;justify-content:center;width:40px;height:40px;margin-left:auto;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-strong);cursor:pointer}.sheet[data-v-7a5092bf]{border-top:1px solid var(--border);background:var(--surface);overflow:hidden}.sheet__inner[data-v-7a5092bf]{display:flex;flex-direction:column;gap:2px;padding-block:var(--space-3) var(--space-4)}.sheet__link[data-v-7a5092bf]{display:flex;align-items:center;gap:6px;padding:12px var(--space-2);color:var(--text);text-decoration:none;font-size:16px;font-weight:500;border-radius:var(--radius-sm)}.sheet__link[data-v-7a5092bf]:hover{background:var(--surface-subtle)}.sheet__row[data-v-7a5092bf]{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.sheet__user[data-v-7a5092bf]{font-size:14px;color:var(--text-secondary);font-weight:550}.sheet-enter-active[data-v-7a5092bf],.sheet-leave-active[data-v-7a5092bf]{transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.sheet-enter-from[data-v-7a5092bf],.sheet-leave-to[data-v-7a5092bf]{opacity:0;transform:translateY(-8px)}@media(max-width:1023px){.nav[data-v-7a5092bf],.header__publish[data-v-7a5092bf],.header__actions[data-v-7a5092bf]{display:none}.header__burger[data-v-7a5092bf]{display:inline-flex}}@media(prefers-reduced-motion:reduce){.brand__mark[data-v-7a5092bf],.sheet-enter-active[data-v-7a5092bf],.sheet-leave-active[data-v-7a5092bf]{transition:none}}.footer[data-v-e7170529]{margin-top:auto;border-top:1px solid var(--border);background:var(--surface-subtle)}.footer__inner[data-v-e7170529]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-12);padding-block:var(--space-18) var(--space-8)}.footer__brand[data-v-e7170529]{max-width:320px}.footer__name[data-v-e7170529]{font-weight:650;font-size:16px;color:var(--text-strong)}.footer__tagline[data-v-e7170529]{margin-top:var(--space-3);color:var(--text-secondary);font-size:14px;line-height:1.6}.footer__cols[data-v-e7170529]{display:flex;gap:var(--space-18)}.footer__heading[data-v-e7170529]{font-size:13px;font-weight:600;color:var(--text-strong);margin-bottom:var(--space-3)}.footer__col[data-v-e7170529]{display:flex;flex-direction:column;gap:var(--space-2)}.footer__link[data-v-e7170529]{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary);text-decoration:none;font-size:14px;transition:color var(--dur-fast) var(--ease-out)}.footer__link[data-v-e7170529]:hover{color:var(--text-strong)}.footer__base[data-v-e7170529]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding-block:var(--space-6);border-top:1px solid var(--border);color:var(--text-muted);font-size:13px}.footer__feedback[data-v-e7170529]{color:var(--text-secondary);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}.footer__feedback[data-v-e7170529]:hover{color:var(--text-strong)}@media(max-width:640px){.footer__cols[data-v-e7170529]{gap:var(--space-12)}}.app-main[data-v-8de5f3e2]{flex:1 0 auto}.route-enter-active[data-v-8de5f3e2],.route-leave-active[data-v-8de5f3e2]{transition:opacity var(--dur-base) var(--ease-out)}.route-enter-from[data-v-8de5f3e2],.route-leave-to[data-v-8de5f3e2]{opacity:0}@media(prefers-reduced-motion:reduce){.route-enter-active[data-v-8de5f3e2],.route-leave-active[data-v-8de5f3e2]{transition:none}}:root{--surface: #ffffff;--surface-subtle: #fafafa;--surface-pressed: #f5f5f5;--text-strong: #000000;--text: #171717;--text-secondary: #737373;--text-muted: #a3a3a3;--border: rgba(0, 0, 0, .07);--border-strong: rgba(0, 0, 0, .14);--primary: #000000;--primary-hover: #262626;--on-primary: #ffffff;--overlay: rgba(0, 0, 0, .36);--brand-mark-filter: none;--success: #16803c;--warning: #a15c00;--danger: #c63232;--success-surface: rgba(22, 128, 60, .08);--warning-surface: rgba(161, 92, 0, .09);--danger-surface: rgba(198, 50, 50, .08);--shadow-soft: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);--shadow-overlay: 0 12px 48px rgba(0, 0, 0, .16);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--space-18: 72px;--space-24: 96px;--radius-sm: 9px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-pill: 999px;--width-content: 1240px;--width-reading: 760px;--ease-out: cubic-bezier(.22, 1, .36, 1);--dur-fast: .13s;--dur-base: .2s;--dur-slow: .32s;--header-height: 64px;color-scheme:light}[data-theme=dark]{--surface: #000000;--surface-subtle: #0a0a0a;--surface-pressed: #171717;--text-strong: #ffffff;--text: #fafafa;--text-secondary: #a3a3a3;--text-muted: #737373;--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .17);--primary: #ffffff;--primary-hover: #e5e5e5;--on-primary: #000000;--overlay: rgba(0, 0, 0, .68);--brand-mark-filter: invert(1);--success: #54b977;--warning: #d6a34a;--danger: #ef7070;--success-surface: rgba(84, 185, 119, .1);--warning-surface: rgba(214, 163, 74, .12);--danger-surface: rgba(239, 112, 112, .1);--shadow-soft: 0 1px 2px rgba(0, 0, 0, .5), 0 8px 24px rgba(0, 0, 0, .5);--shadow-overlay: 0 12px 48px rgba(0, 0, 0, .65);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;line-height:1.5}img,picture,svg,video,canvas{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}h1,h2,h3,h4{font-weight:650;line-height:1.15;letter-spacing:-.02em;color:var(--text-strong);text-wrap:balance}p{text-wrap:pretty}:target{scroll-margin-top:calc(var(--header-height) + 24px)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body{font-family:var(--font-sans);font-size:16px;line-height:1.65;color:var(--text);background:var(--surface);transition:background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}#app{min-height:100vh;display:flex;flex-direction:column}::selection{background:var(--text-strong);color:var(--surface)}:focus-visible{outline:2px solid var(--text-strong);outline-offset:2px;border-radius:4px}.container{width:100%;max-width:var(--width-content);margin-inline:auto;padding-inline:var(--space-6)}@media(max-width:640px){.container{padding-inline:var(--space-4)}}.section{padding-block:var(--space-24)}@media(max-width:1023px){.section{padding-block:var(--space-18)}}@media(max-width:640px){.section{padding-block:var(--space-12)}}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.text-secondary{color:var(--text-secondary)}.mono{font-family:var(--font-mono);font-variant-ligatures:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:var(--space-4);z-index:200;padding:var(--space-2) var(--space-4);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);transition:top var(--dur-fast) var(--ease-out)}.skip-link:focus{top:var(--space-4)}@keyframes faf-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.enter{animation:faf-enter var(--dur-slow) var(--ease-out) both}.clamp-1,.clamp-2,.clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.clamp-1{-webkit-line-clamp:1;line-clamp:1}.clamp-2{-webkit-line-clamp:2;line-clamp:2}.clamp-3{-webkit-line-clamp:3;line-clamp:3}
