html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}/*! tailwindcss v4.3.0 | 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-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}@layer theme{:root,:host{--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.w-9{width:calc(var(--spacing) * 9)}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-input{border-color:hsl(var(--input))}.bg-background{background-color:hsl(var(--background))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.italic{font-style:italic}.underline-offset-4{text-underline-offset:4px}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive))}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,hsl(var(--destructive)) 90%,transparent)}}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,hsl(var(--primary)) 90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary))}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,hsl(var(--secondary)) 80%,transparent)}}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}:root{--radius:.75rem;--background:250 20% 96%;--foreground:250 30% 12%;--card:0 0% 100%;--card-foreground:250 30% 12%;--popover:0 0% 100%;--popover-foreground:250 30% 12%;--primary:262 83% 58%;--primary-foreground:0 0% 100%;--secondary:250 20% 92%;--secondary-foreground:250 30% 12%;--muted:250 20% 92%;--muted-foreground:250 10% 45%;--accent:262 83% 58%;--accent-foreground:0 0% 100%;--destructive:0 84.2% 60.2%;--destructive-foreground:0 0% 98%;--border:250 20% 88%;--input:250 20% 88%;--ring:262 83% 58%;--chart-1:262 83% 58%;--chart-2:190 90% 50%;--chart-3:330 80% 60%;--chart-4:160 60% 45%;--chart-5:220 70% 50%}[data-theme=dark],.dark{--radius:.75rem;--background:250 15% 6%;--foreground:250 20% 92%;--card:250 15% 8%;--card-foreground:250 20% 92%;--popover:250 15% 8%;--popover-foreground:250 20% 92%;--primary:262 83% 58%;--primary-foreground:0 0% 100%;--secondary:250 15% 14%;--secondary-foreground:250 20% 92%;--muted:250 15% 14%;--muted-foreground:250 10% 55%;--accent:262 83% 58%;--accent-foreground:0 0% 100%;--destructive:0 62.8% 30.6%;--destructive-foreground:0 0% 98%;--border:250 15% 18%;--input:250 15% 18%;--ring:262 83% 58%;--chart-1:262 83% 58%;--chart-2:190 90% 50%;--chart-3:330 80% 60%;--chart-4:160 60% 45%;--chart-5:220 70% 50%}:root,[data-theme=light]{color-scheme:light;--surface-cream:#fafafa;--page-blue-1:#f0f0f5;--page-blue-2:#f5f5fa;--page-blue-3:#fafafa;--bg-primary:var(--page-blue-1);--bg-gradient-mid:var(--page-blue-2);--bg-card:#fff;--bg-card-hover:#f8f8fc;--bg-header:#fafafab8;--bg-hover:#8b5cf60f;--bg-subtle:#8b5cf60a;--bg-subtle-hover:#8b5cf614;--bg-input:#fffffff2;--border-default:#8b5cf61f;--border-input:#94a3b873;--border-glow:#8b5cf64d;--divider:#94a3b84d;--text-primary:#1a1a2e;--text-secondary:#555570;--accent:#7c3aed;--accent-hover:#6d28d9;--accent-bg:#7c3aed1a;--accent-bg-light:#7c3aed26;--accent-glow:#7c3aed33;--accent-focus:#7c3aed40;--avatar-gradient:linear-gradient(135deg, #8b5cf680, #ec489959);--layout-max-width:1440px;--layout-gutter:clamp(8px, 1.4vw, 20px);--shadow-shell:0 16px 48px -20px #0f172a1a;--shadow-card:0 12px 32px -16px #0f172a1a;--admin-sider-bg:#fff;--admin-sider-border:#94a3b833;--admin-sider-shadow:4px 0 24px -8px #0f172a0f;--admin-sider-brand-color:#1a1a2e;--admin-sider-brand-badge:#555570;--admin-sider-menu-color:#444460;--admin-sider-menu-icon:#8888a0;--admin-sider-menu-hover-bg:#8b5cf60f;--admin-sider-menu-hover-color:#1a1a2e;--admin-sider-menu-active-bg:var(--accent);--admin-sider-menu-active-color:#fff;--admin-sider-menu-active-shadow:0 6px 20px -4px #8b5cf666;--admin-sider-footer-border:#94a3b833;--admin-sider-footer-bg:#f8f8fcd9;--admin-sider-user-name:#1a1a2e;--admin-sider-user-link:var(--accent);--admin-sider-icon-btn-border:#94a3b84d;--admin-sider-icon-btn-bg:#f0f0f5e6;--admin-sider-icon-btn-color:#444460;--admin-sider-logout-color:#8888a0;font-family:Inter,Segoe UI,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif}[data-theme=dark],.dark{color-scheme:dark;--bg-primary:#0a0a0f;--bg-gradient-mid:#12121a;--bg-card:#ffffff08;--bg-card-hover:#ffffff0f;--bg-header:#0a0a0feb;--bg-hover:#8b5cf614;--bg-subtle:#ffffff0a;--bg-subtle-hover:#8b5cf61a;--bg-input:#ffffff0d;--border-default:#ffffff14;--border-input:#ffffff1f;--border-glow:#8b5cf64d;--divider:#ffffff14;--text-primary:#e8e8f0;--text-secondary:#8888a0;--accent:#8b5cf6;--accent-hover:#a78bfa;--accent-bg:#8b5cf624;--accent-bg-light:#8b5cf633;--accent-glow:#8b5cf640;--accent-focus:#8b5cf659;--avatar-gradient:linear-gradient(135deg, #8b5cf673, #ec489959);--layout-max-width:1440px;--layout-gutter:clamp(8px, 1.4vw, 20px);--shadow-shell:0 20px 50px -24px #00000080;--shadow-card:0 16px 40px -24px #0006;--admin-sider-bg:#0a0a0f;--admin-sider-border:#ffffff0f;--admin-sider-shadow:8px 0 32px -12px #0006;--admin-sider-brand-color:#e8e8f0;--admin-sider-brand-badge:#8888a0;--admin-sider-menu-color:#a0a0c0;--admin-sider-menu-icon:#8888a0;--admin-sider-menu-hover-bg:#8b5cf61a;--admin-sider-menu-hover-color:#fff;--admin-sider-menu-active-bg:var(--accent);--admin-sider-menu-active-color:#fff;--admin-sider-menu-active-shadow:0 6px 20px -4px #8b5cf673;--admin-sider-footer-border:#ffffff0f;--admin-sider-footer-bg:#0a0a0fd9;--admin-sider-user-name:#e8e8f0;--admin-sider-user-link:#a78bfa;--admin-sider-icon-btn-border:#ffffff1a;--admin-sider-icon-btn-bg:#12121ae6;--admin-sider-icon-btn-color:#e8e8f0;--admin-sider-logout-color:#8888a0;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}body{background-color:var(--bg-primary);background-image:linear-gradient(165deg,var(--bg-primary) 0%,var(--bg-gradient-mid) 42%,var(--page-blue-3,var(--bg-gradient-mid)) 100%);color:var(--text-primary);background-attachment:fixed;min-height:100vh;margin:0}[data-theme=dark] body,.dark body{--page-blue-3:var(--bg-gradient-mid)}[data-theme=light] body{background-image:linear-gradient(165deg,var(--page-blue-1) 0%,var(--page-blue-2) 45%,var(--page-blue-3) 100%)}.app-header{border-bottom:1px solid var(--border-default);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:16px;line-height:1.4;background:var(--bg-header)!important;color:var(--text-primary)!important;height:auto!important;padding:0!important}[data-theme=light] .app-header{border-bottom-color:#8b5cf61f;box-shadow:0 1px #ffffffa6}.app-header__inner{max-width:var(--layout-max-width);box-sizing:border-box;width:100%;padding:12px var(--layout-gutter,16px);grid-template-columns:minmax(0,auto) 1fr minmax(0,auto);align-items:center;gap:12px 16px;min-height:56px;margin:0 auto;display:grid}@media (min-width:768px){.app-header__inner{padding:14px var(--layout-gutter,24px);gap:16px 24px;min-height:60px;font-size:15px}}.app-header__start{align-items:center;gap:8px;min-width:0;display:flex}.app-header__center{justify-self:stretch;min-width:0;display:none}@media (min-width:768px){.app-header__center{justify-content:center;display:flex}}.app-header__end{flex-wrap:nowrap;justify-content:flex-end;justify-self:end;align-items:center;gap:8px;min-width:0;display:flex}@media (min-width:768px){.app-header__end{gap:10px}}.app-header__search{flex:0 200px;min-width:0;max-width:200px;font-size:14px;display:none;background:var(--bg-input)!important;border-color:var(--border-input)!important;border-radius:10px!important}.app-header__search .ant-input{color:var(--text-primary)!important;background:0 0!important}@media (min-width:900px){.app-header__search{display:inline-flex}}.app-header__write{background:var(--accent);border-radius:10px;flex-shrink:0;align-items:center;padding:8px 14px;font-size:14px;font-weight:600;line-height:1.2;transition:background .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #0f172a14;color:#fff!important;text-decoration:none!important}.app-header__write:hover{background:var(--accent-hover);color:#fff!important}.app-header__write-inner{align-items:center;gap:6px;display:inline-flex}@media (max-width:420px){.app-header__write{padding:6px 10px;font-size:13px}}.app-header__icon-btn{border:1px solid var(--border-default);width:38px;height:38px;color:var(--text-secondary);background:0 0;border-radius:10px;justify-content:center;align-items:center;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:none}@media (min-width:768px){.app-header__icon-btn{display:inline-flex}}.app-header__icon-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-bg)}.app-header__login-link{white-space:nowrap;color:inherit;border-radius:8px;flex-shrink:0;padding:6px 10px;font-size:14px;font-weight:500;text-decoration:none}.app-header__login-link:hover{color:var(--accent);background:var(--bg-hover)}.app-header__menu-btn{width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:none}.app-header__menu-btn:hover{background:var(--bg-hover)}.app-header__menu-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-header__links{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 20px;display:flex}.app-header__brand{isolation:isolate;flex-shrink:0;align-items:center;padding:4px 10px 4px 6px;font-size:17px;text-decoration:none;display:inline-flex;position:relative;overflow:visible}.app-header__brand-stack{flex-direction:column;align-items:flex-start;gap:1px;line-height:1.2;display:flex}.app-header__brand-line{flex-wrap:wrap;align-items:baseline;gap:6px;display:inline-flex}.app-header__brand-prefix{color:var(--accent);letter-spacing:.02em;font-weight:700}.app-header__brand-sep{color:var(--text-secondary);opacity:.85;font-size:.92em;font-weight:500}.app-header__brand-suffix{letter-spacing:.12em;color:var(--text-primary);text-transform:uppercase;font-size:.95em;font-weight:700}.app-header__brand-tagline{letter-spacing:.04em;color:var(--text-secondary);text-transform:none;white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:11px;font-weight:500;overflow:hidden}@media (max-width:767px){.app-header__brand-tagline{display:none}}.app-header__brand-text{z-index:1;letter-spacing:.22em;text-transform:uppercase;color:#0000;text-shadow:0 0 10px #00d4ff38,0 0 22px #c08cff33,0 0 34px #7c8cff24;filter:drop-shadow(0 0 10px #00d4ff2e);background:linear-gradient(92deg,#f7fbff,#7ef2ff 22%,#7ad8ff 42%,#c08cff 68%,#f5fbff);-webkit-background-clip:text;background-clip:text;font-weight:800;position:relative}.app-header__brand:hover .app-header__brand-text{text-shadow:0 0 14px #00d4ff47,0 0 28px #c08cff42,0 0 42px #7c8cff2e;background:linear-gradient(92deg,#fff,#9ff7ff,#93e8ff 40%,#d29dff,#fff);-webkit-background-clip:text;background-clip:text}[data-theme=light] .app-header__brand-text{letter-spacing:.12em;text-transform:none;color:var(--text-primary);-webkit-text-fill-color:currentColor;text-shadow:none;filter:none;background:0 0;font-size:1.05rem;font-weight:700}[data-theme=light] .app-header__brand:hover .app-header__brand-text{color:var(--accent);-webkit-text-fill-color:currentColor;background:0 0}@media (min-width:768px){.app-header__brand{padding-right:12px;font-size:18px}.app-header__brand-text{letter-spacing:.26em}[data-theme=light] .app-header__brand-text{letter-spacing:.06em;font-size:1.125rem}}.app-header__link{opacity:.92;border-radius:8px;flex-shrink:0;margin:-6px -10px;padding:6px 10px;text-decoration:none;transition:background .15s,color .15s,opacity .15s,border-color .15s}.app-header__link:hover{opacity:1;background:var(--bg-hover)}.app-header__link--active{opacity:1;background:0 0;position:relative;color:var(--accent)!important}.app-header__link--active:after{content:"";background:var(--accent);width:5px;height:5px;box-shadow:0 0 0 2px var(--accent);border-radius:50%;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.app-header__link--active:after{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}}[data-theme=light] .app-header__link{color:var(--text-primary);opacity:1;border-radius:10px;font-weight:500}[data-theme=light] .app-header__link:hover{color:var(--accent-hover);background:#8b5cf60f}[data-theme=light] .app-header__link--active{box-shadow:inset 0 -2px 0 0 var(--accent);background:0 0;border-radius:0;padding-bottom:10px;color:var(--accent)!important}[data-theme=light] .app-header__link--active:after{bottom:5px}@media (max-width:767px){.app-header__menu-btn{display:inline-flex}.app-header__inner{grid-template-columns:auto 1fr auto}.app-header__username{display:none}}.app-header__drawer .ant-drawer-header{border-bottom:1px solid var(--divider)}.app-header__drawer-list{flex-direction:column;padding:8px 0 16px;display:flex}.app-header__drawer-link{border-bottom:1px solid var(--border-default);padding:14px 20px;font-size:16px;text-decoration:none;display:block;color:var(--text-primary)!important}.app-header__drawer-link:hover,.app-header__drawer-link:focus-visible{background:var(--bg-hover);color:var(--accent)!important}.app-header__drawer-link--active{background:var(--accent-bg);box-shadow:inset 3px 0 0 var(--accent);color:var(--accent)!important}.app-header__username{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:9rem;color:var(--text-secondary);flex:0 auto;font-size:14px;overflow:hidden}.app-header__avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px;display:block}.app-header__logout{cursor:pointer;flex-shrink:0;font-size:14px;text-decoration:none}.app-header__theme-btn{border:1px solid var(--border-default);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:16px;transition:all .2s;display:inline-flex}.app-header__theme-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-bg)}.app-header__search-btn{border:1px solid var(--border-default);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s,border-color .15s;display:none}@media (min-width:768px){.app-header__search-btn{display:inline-flex}}.app-header__search-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-bg)}.app-header a:not(.app-header__link--active){color:inherit!important}.app-header a.app-header__link--active{color:var(--accent)!important}.app-content{max-width:var(--layout-max-width);box-sizing:border-box;width:100%;padding:14px var(--layout-gutter,12px) 28px;margin:0 auto}@media (min-width:768px){.app-content{padding:16px var(--layout-gutter,16px) 36px}}.surface-shell{box-sizing:border-box;width:100%}[data-theme=light] .surface-shell{box-shadow:var(--shadow-shell);background:#fff;border:1px solid #e2e8f0e6;border-radius:2rem;padding:1.25rem 1.25rem 1.5rem}[data-theme=light] .surface-shell.surface-shell--tight{border-radius:2rem;padding:1.125rem 1.2rem 1.35rem}[data-theme=dark] .surface-shell{background:var(--bg-card);border:1px solid var(--border-default);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1.75rem;padding:1.25rem 1.2rem 1.4rem}[data-theme=dark] .surface-shell.surface-shell--tight{padding:1.1rem 1.1rem 1.3rem}.app-footer{color:var(--text-secondary)!important;background:0 0!important;padding:16px!important}.app-footer__inner{max-width:var(--layout-max-width);box-sizing:border-box;width:100%;padding-inline:var(--layout-gutter,16px);text-align:center;align-items:center;gap:10px 16px;margin:0 auto;font-size:13px;display:grid}@media (min-width:768px){.app-footer__inner{text-align:unset;grid-template-columns:1fr auto 1fr}.app-footer__inner>:first-child{text-align:left}.app-footer__inner>:nth-child(2){text-align:center;justify-self:center}.app-footer__inner>:last-child{text-align:right;justify-self:end}}.app-footer__note{color:var(--text-secondary);font-size:12px}.app-footer__links{flex-wrap:wrap;justify-content:flex-end;gap:12px 16px;margin:0;padding:0;list-style:none;display:inline-flex}.app-footer__links a{color:var(--text-secondary);text-decoration:none}.app-footer__links a:hover{color:var(--accent)}.app-footer__filing{border-top:1px solid var(--border-color,#80808033);text-align:center;margin-top:12px;padding-top:10px;font-size:12px}.app-footer__filing a{color:var(--text-secondary);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.app-footer__filing a:hover{color:var(--accent)}.app-footer__filing-icon{flex-shrink:0;width:16px;height:16px}.app-loading{color:var(--accent);margin-bottom:12px}.post-card{border-radius:12px;transition:all .25s;display:block}.post-card-glass{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-default);box-shadow:var(--shadow-card,0 12px 40px -20px #00000026);border-radius:1.25rem;padding:20px;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.post-card-glass:hover{background:var(--bg-card-hover);border-color:var(--border-glow);box-shadow:0 18px 50px -18px var(--accent-glow);transform:translateY(-2px)}[data-theme=dark] .post-card-glass{border-radius:1.1rem}.post-card{cursor:pointer}.post-card-badge{background:var(--accent-bg-light);color:var(--accent);border-radius:6px;margin-bottom:12px;padding:4px 10px;font-size:12px;display:inline-block}.post-card-badge--green{color:#16a34a;background:#22c55e1f}.post-card-badge--orange{color:#ea580c;background:#f973161f}.post-card-badge--teal{color:#0d9488;background:#14b8a61f}.post-card-badge--violet{color:#7c3aed;background:#8b5cf61f}.post-card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 10px;font-size:1.1rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.post-card-summary{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 14px;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.post-card-meta{color:var(--text-secondary);align-items:center;gap:10px;font-size:12px;display:flex}.avatar-placeholder{box-sizing:border-box;background:#f1f5f9;border:1px dashed #94a3b8a6;border-radius:50%;flex-shrink:0;display:block}.avatar-placeholder--md{width:40px;height:40px}.avatar-placeholder--lg{width:72px;height:72px}.post-card-avatar{box-sizing:border-box;background:#f1f5f9 50%/cover;border:1px dashed #94a3b88c;border-radius:50%;width:24px;height:24px}.post-card-default{background:var(--bg-subtle);border:1px solid var(--divider)}.post-card-default:hover{background:var(--bg-subtle-hover)}.post-card-tag{background:var(--divider);border-radius:4px;padding:2px 8px;font-size:12px}.post-card-link{color:inherit;text-decoration:none}.post-card--grid{border-radius:12px;flex-direction:column;height:100%;display:flex;overflow:hidden;padding:0!important}.post-card--grid .post-card-grid__cover{aspect-ratio:16/10;border-bottom:1px solid var(--border-default);background:linear-gradient(135deg,#e0f2fe,#f1f5f9,#e2e8f0) 50%/cover;width:100%}.post-card--grid .post-card-grid__body{flex-direction:column;flex:1;min-height:0;padding:16px 18px 18px;display:flex}.post-card--grid .post-card-title{-webkit-line-clamp:2}.post-card--grid .post-card-meta{margin-top:auto}.post-card--row{border-radius:12px;flex-direction:row;align-items:stretch;gap:0;min-height:140px;display:flex;overflow:hidden;padding:0!important}.post-card--row .post-card-row__thumb{border-right:1px solid var(--border-default);background:linear-gradient(160deg,#dbeafe,#f1f5f9) 50%/cover;flex:0 0 min(200px,36%);min-height:120px}.post-card--row .post-card-row__main{flex-direction:column;flex:1;justify-content:center;min-width:0;padding:16px 16px 16px 18px;display:flex}.post-card--row .post-card-row__fav{color:#eab308;border-left:1px solid var(--divider);background:var(--bg-card);flex:0 0 44px;justify-content:center;align-items:center;font-size:18px;display:flex}.post-card--row .post-card-title{-webkit-line-clamp:2;margin-bottom:8px}.post-card--row .post-card-summary{-webkit-line-clamp:2;margin-bottom:10px}.post-card--row .post-card-badge{margin-bottom:8px}@media (max-width:600px){.post-card--row{flex-direction:column;min-height:0}.post-card--row .post-card-row__thumb{border-right:none;border-bottom:1px solid var(--border-default);flex:none;width:100%;min-height:140px}.post-card--row .post-card-row__fav{border-left:none;border-top:1px solid var(--divider);padding:8px}}.post-card-default-body{padding:20px}.markdown-body{line-height:1.8}.markdown-body.markdown-body--notion{color:var(--text-primary);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:16px;line-height:1.65}.markdown-body--notion>:first-child{margin-top:0!important}.markdown-body--notion p{margin:.75em 0}.markdown-body--notion h1,.markdown-body--notion h2,.markdown-body--notion h3,.markdown-body--notion h4,.markdown-body--notion h5,.markdown-body--notion h6{letter-spacing:-.02em;color:var(--text-primary);scroll-margin-top:1.25rem;font-weight:600;line-height:1.3}.markdown-body--notion h1{margin:1.65em 0 .35em;font-size:1.875rem}.markdown-body--notion h2{border-bottom:1px solid var(--divider);margin:1.5em 0 .3em;padding-bottom:.2em;font-size:1.5rem}.markdown-body--notion h3{margin:1.35em 0 .25em;font-size:1.2rem}.markdown-body--notion h4{margin:1.2em 0 .2em;font-size:1.05rem}.markdown-body--notion h5,.markdown-body--notion h6{color:var(--text-secondary);margin:1em 0 .2em;font-size:1rem}.markdown-body--notion ul,.markdown-body--notion ol{margin:.6em 0;padding-left:1.5em}.markdown-body--notion li{margin:.28em 0}.markdown-body--notion li>p{margin:.35em 0}.markdown-body--notion ul.contains-task-list{padding-left:0;list-style:none}.markdown-body--notion li.task-list-item{align-items:flex-start;gap:.35em;display:flex}.markdown-body--notion li.task-list-item input[type=checkbox]{flex-shrink:0;margin-top:.35em}.markdown-body--notion blockquote{border-left:3px solid var(--divider);color:var(--text-secondary);margin:.9em 0;padding:4px 0 4px 14px}.markdown-body--notion blockquote p{margin:.45em 0}.markdown-body--notion a{color:var(--accent);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .15s}.markdown-body--notion a:hover{border-bottom-color:var(--accent-hover)}.markdown-body--notion code{background:var(--bg-subtle);color:var(--text-primary);border-radius:4px;padding:.12em .38em;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.9em}.markdown-body--notion pre{background:var(--bg-subtle);border:1px solid var(--divider);border-radius:8px;margin:1.05em 0;padding:14px 16px;font-size:.875rem;line-height:1.55;overflow-x:auto}.markdown-body--notion pre code{font-size:inherit;background:0 0;border-radius:0;padding:0}.markdown-body--notion pre code.hljs{background:0 0!important}.markdown-body--notion img{border-radius:6px;max-width:100%;height:auto;margin:1em 0}.markdown-body--notion hr{border:none;border-top:1px solid var(--divider);margin:2em 0}.markdown-body--notion table{border-collapse:collapse;width:100%;margin:1em 0;font-size:.95em}.markdown-body--notion th,.markdown-body--notion td{border:1px solid var(--divider);text-align:left;vertical-align:top;padding:8px 12px}.markdown-body--notion th{background:var(--bg-subtle);font-weight:600}.editor-hint{margin-bottom:8px;display:block}.editor-upload-hint{font-size:12px}.mermaid-block{justify-content:center;margin:1rem 0;display:flex;overflow-x:auto}.mermaid-block svg{max-width:100%;display:block;height:auto!important}.mermaid-error{background:var(--bg-subtle);border:1px solid var(--border-default);border-radius:8px;padding:12px}.mermaid-error pre{margin:0 0 8px;overflow-x:auto}.mermaid-error code{white-space:pre-wrap;word-break:break-word;font-size:13px}.page-container{max-width:960px;margin:0 auto}.page-container-padded{max-width:960px;margin:0 auto;padding-bottom:48px}.admin-page-container{box-sizing:border-box;width:100%;max-width:none;color:var(--text-primary);margin:0;padding-bottom:32px}.admin-page-title,.admin-section-title{color:var(--text-primary)}[data-theme=light] .admin-page-container .ant-table-thead>tr>th{font-weight:600;color:var(--text-primary)!important;background:#8b5cf60f!important;border-bottom-color:#8b5cf626!important}[data-theme=dark] .admin-page-container .ant-table-thead>tr>th{font-weight:600;color:var(--text-primary)!important;background:#8b5cf61a!important;border-bottom-color:#8b5cf633!important}.admin-page-container .ant-table-thead>tr>th:before{background-color:#8b5cf61a!important}[data-theme=dark] .admin-page-container .ant-table-thead>tr>th:before{background-color:#8b5cf626!important}.admin-content-link{color:var(--text-primary);text-decoration:none}.admin-content-link:hover{color:var(--accent-hover);text-decoration:underline}.accent-link{color:var(--accent);font-size:14px;text-decoration:none}.accent-link:hover{color:var(--accent-hover)}.section-divider{border-top:1px solid var(--divider);padding-top:24px}.section-divider-mt{border-top:1px solid var(--divider);margin-top:24px;padding-top:24px}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}.admin-shell.ant-layout{min-height:100vh;height:100vh;max-height:100vh;overflow:hidden;background:var(--bg-primary);display:flex;flex-direction:row;align-items:stretch}.admin-shell__sider{position:relative!important;flex:0 0 auto;height:100vh!important;max-height:100vh;overflow:hidden;background:var(--admin-sider-bg)!important;border-right:1px solid var(--admin-sider-border)!important;box-shadow:var(--admin-sider-shadow)}.admin-shell__sider .ant-layout-sider-children{height:100%;min-height:0;max-height:100vh;display:flex;flex-direction:column}.admin-shell__sider-inner{display:flex;flex-direction:column;height:100%;min-height:0;flex:1}.admin-shell__brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:20px 18px 16px;text-decoration:none!important;color:var(--admin-sider-brand-color)!important;border-bottom:1px solid var(--admin-sider-footer-border)}.admin-shell__site{font-weight:800;font-size:19px;letter-spacing:.04em}.admin-shell__badge{font-size:12px;color:var(--admin-sider-brand-badge);font-weight:500}.admin-shell__menu{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;border-inline-end:none!important;background:transparent!important;padding:12px 8px 16px}.admin-shell__menu .ant-menu-item{color:var(--admin-sider-menu-color)!important;border-radius:10px!important;margin:2px 0!important;width:100%!important;height:auto!important;line-height:1.4!important;padding:10px 12px!important;display:flex;align-items:center}.admin-shell__menu .ant-menu-item .anticon{color:var(--admin-sider-menu-icon)}.admin-shell__menu .ant-menu-item:hover{color:var(--admin-sider-menu-hover-color)!important;background:var(--admin-sider-menu-hover-bg)!important}.admin-shell__menu .ant-menu-item-selected{color:var(--admin-sider-menu-active-color)!important;background:var(--admin-sider-menu-active-bg)!important;box-shadow:var(--admin-sider-menu-active-shadow)}.admin-shell__menu .ant-menu-item-selected .anticon{color:var(--admin-sider-menu-active-color)}.admin-shell__sider-footer{margin-top:auto;padding:14px 12px 18px;border-top:1px solid var(--admin-sider-footer-border);background:var(--admin-sider-footer-bg)}.admin-shell__user-block{display:flex;align-items:flex-start;gap:10px}.admin-shell__avatar{background:var(--bg-subtle)!important;border-color:var(--border-default)!important}.admin-shell__avatar-image{width:40px;height:40px;display:block;border-radius:50%;object-fit:cover}.admin-shell__user-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.admin-shell__user-name{font-size:14px;color:var(--admin-sider-user-name);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-shell__user-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-shell__to-site{display:inline-flex;align-items:center;gap:4px;color:var(--admin-sider-user-link)!important;text-decoration:none!important;font-size:12px}.admin-shell__to-site:hover{opacity:.8}.admin-shell__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--admin-sider-icon-btn-border);border-radius:8px;background:var(--admin-sider-icon-btn-bg);color:var(--admin-sider-icon-btn-color);cursor:pointer;flex-shrink:0}.admin-shell__icon-btn:hover{opacity:.8}.admin-shell__logout{font-size:12px;color:var(--admin-sider-logout-color);cursor:pointer;text-decoration:none;align-self:flex-start}.admin-shell__logout:hover{opacity:.8}.admin-shell__content{flex:1;min-width:0;min-height:0;width:100%;padding:24px 24px 32px;box-sizing:border-box;color:var(--text-primary);background:var(--bg-primary);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.admin-shell__loading{margin-bottom:12px;font-size:14px;color:var(--text-secondary, #64748b)}@media (max-width: 991px){.admin-shell__content{padding:16px}}.page-loading{text-align:center;padding:48px 0}.page-error{max-width:960px;margin:0 auto;padding:24px}.home-cat-tile__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;font-size:19px;color:#fff;flex-shrink:0}.home-cat--green .home-cat-tile__icon{background:linear-gradient(135deg,#22c55e,#16a34a)}.home-cat--orange .home-cat-tile__icon{background:linear-gradient(135deg,#fb923c,#ea580c)}.home-cat--teal .home-cat-tile__icon{background:linear-gradient(135deg,#2dd4bf,#0d9488)}.home-cat--blue .home-cat-tile__icon{background:linear-gradient(135deg,#60a5fa,#3b82f6)}.splash-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:linear-gradient(155deg,#b8d3eb,#d4e8f7 45%,#fdfcf8);animation:splashFadeOut .6s ease-out 2.2s forwards;pointer-events:none;overflow:hidden}.splash-overlay:before{content:"";position:absolute;width:200%;height:200%;top:-50%;left:-50%;background:conic-gradient(from 180deg,transparent 0deg,rgba(255,0,100,.08) 60deg,rgba(255,165,0,.06) 120deg,rgba(0,212,255,.1) 180deg,rgba(100,100,255,.08) 240deg,rgba(180,0,255,.06) 300deg,transparent 360deg);animation:splashPrismRotate 4s linear infinite}.splash-content{text-align:center;position:relative;z-index:1;animation:splashScaleIn 1.2s cubic-bezier(.34,1.56,.64,1) forwards}.splash-logo{font-size:clamp(2rem,6vw,3rem);font-weight:700;letter-spacing:.08em;color:#0f172a;background:linear-gradient(92deg,#1e3a5f,#3b82f6 38%,#0ea5e9 70%,#1e40af);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:splashFadeIn .8s ease-out .3s forwards,splashPrismShimmer 3s linear infinite;opacity:0;filter:drop-shadow(0 8px 24px rgba(59,130,246,.2))}.splash-sub{font-size:.95rem;color:#64748b;margin-top:16px;letter-spacing:.12em;opacity:0;animation:splashFadeIn .6s ease-out .8s forwards}@keyframes splashFadeIn{to{opacity:1}}@keyframes splashScaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes splashFadeOut{to{opacity:0;visibility:hidden}}@keyframes splashPrismRotate{to{transform:rotate(360deg)}}@keyframes splashPrismShimmer{to{background-position:200% center}}.home-page{padding:0!important;overflow:hidden}.home-hero{position:relative;overflow:hidden;margin-bottom:1.35rem}.home-hero--bleed{margin:-1.125rem -1.2rem 1.35rem;width:calc(100% + 2.4rem);max-width:none;border-radius:1.75rem 1.75rem 0 0}@media (max-width: 479px){.home-hero--bleed{margin:-1rem -1rem 1.25rem;width:calc(100% + 2rem);border-radius:1.25rem 1.25rem 0 0}}.home-hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 77% 25%,rgba(255,255,255,.48) 0 6%,transparent 6.5%),radial-gradient(ellipse at 72% 70%,rgba(51,65,85,.18) 0 4%,transparent 4.6%),radial-gradient(ellipse at 66% 72%,rgba(51,65,85,.14) 0 3%,transparent 3.6%),radial-gradient(ellipse at 88% 80%,rgba(255,255,255,.42) 0 14%,transparent 15%),linear-gradient(175deg,#fff0 0,#fff0 48%,#ffffff57,#ffffff14 66%),linear-gradient(128deg,#3b82f6a8,#93c5fd8f 46%,#dbeafed1),linear-gradient(180deg,#b8d3ef,#dbeafe);background-size:100% 100%;background-position:center}.home-hero__bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(15,23,42,.12) 0%,rgba(15,23,42,.04) 48%,transparent 76%),linear-gradient(180deg,transparent 0%,rgba(255,255,255,.16) 100%)}.home-hero__inner{position:relative;z-index:1;max-width:100%;margin:0 auto;padding:clamp(1.75rem,4vw,2.75rem) clamp(1.4rem,calc(.5rem + 3.2vw),2.6rem);display:grid;gap:clamp(1.25rem,2.5vw,1.75rem);align-items:center}@media (min-width: 900px){.home-hero__inner{grid-template-columns:1fr min(320px,32vw);min-height:260px}}.home-hero__copy{color:#fff}.home-hero__title{margin:0 0 .6rem;font-size:clamp(1.4rem,3.2vw,1.95rem);font-weight:800;line-height:1.3;letter-spacing:.02em;text-shadow:0 2px 20px rgba(15,23,42,.35)}.home-hero__sub{margin:0 0 1.1rem;font-size:.9rem;line-height:1.65;color:#ffffffeb;max-width:40rem}.home-hero__actions{display:flex;flex-wrap:wrap;gap:.6rem .75rem}.home-hero__btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 1.1rem;border-radius:10px;font-size:.875rem;font-weight:600;text-decoration:none!important;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.home-hero__btn--primary{background:var(--accent, #14b8a6);color:#fff!important;box-shadow:0 8px 24px #0f172a33}.home-hero__btn--primary:hover{background:var(--accent-hover, #0d9488);color:#fff!important}.home-hero__btn--ghost{background:#ffffff24;color:#fff!important;border:1px solid rgba(255,255,255,.45)}.home-hero__btn--ghost:hover{background:#ffffff38}.home-hero__card{justify-self:stretch}.home-hero__card-inner{background:#fff;border-radius:1rem;padding:1.35rem 1.1rem 1.2rem;text-align:center;box-shadow:0 20px 50px -28px #0f172a80;border:1px solid rgba(255,255,255,.7)}[data-theme=dark] .home-hero__card-inner{background:var(--bg-card);border-color:var(--border-default);color:var(--text-primary)}.home-hero__avatar{margin:0 auto .5rem}.home-hero__avatar-image{width:72px;height:72px;display:block;border-radius:50%;object-fit:cover;border:1px solid rgba(148,163,184,.18)}.home-hero__name{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.home-hero__bio{margin:.4rem 0 .9rem;font-size:.8rem;line-height:1.55;color:var(--text-secondary)}.home-hero__stats{list-style:none;margin:0 0 .75rem;padding:0;display:flex;justify-content:space-around;gap:.5rem;font-size:.7rem;color:var(--text-secondary)}.home-hero__stats li{display:flex;flex-direction:column;align-items:center;gap:2px}.home-hero__stats strong{font-size:1.05rem;color:var(--text-primary);font-weight:700}.home-hero__social{display:flex;justify-content:center;gap:.5rem}.home-hero__social-link{text-decoration:none}.home-hero__social-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(148,163,184,.28);background:#f8fafc;color:#334155;transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.home-hero__social-link:hover .home-hero__social-icon{transform:translateY(-1px);background:#eff6ff;color:#2563eb;border-color:#3b82f647;box-shadow:0 10px 24px -16px #2563eb99}.home-hero__social-text{font-size:13px;font-weight:700;line-height:1}.home-below-hero{display:block;width:100%;padding:0 clamp(.5rem,1.4vw,1.1rem) .25rem;box-sizing:border-box}.home-section{margin-bottom:1.35rem}.home-section__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:.75rem}.home-section__title{margin:0 0 .6rem;font-size:1.1rem;font-weight:700;color:var(--text-primary);letter-spacing:.02em}.home-section__title--inline{margin:0}.home-section__more{font-size:.8rem}.home-cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}@media (min-width: 1100px){.home-cat-grid{grid-template-columns:repeat(4,1fr)}}.home-cat-tile{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:.9rem .5rem;border-radius:12px;text-decoration:none!important;color:var(--text-primary)!important;border:1px solid rgba(226,232,240,.95);background:#fff;box-shadow:0 2px 12px -4px #0f172a0f;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;min-width:0;min-height:5.5rem}.home-cat-tile:hover{transform:translateY(-1px);border-color:#14b8a659;box-shadow:0 6px 20px -8px #14b8a638}[data-theme=dark] .home-cat-tile{background:var(--bg-card);border-color:var(--border-default)}.home-cat-tile__name{font-size:.85rem;font-weight:600}.home-cat-tile__count{font-size:.7rem;color:var(--text-secondary)}.home-post-grid{display:grid;grid-template-columns:1fr;gap:.75rem}@media (min-width: 600px){.home-post-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.home-post-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1200px){.home-post-grid{grid-template-columns:repeat(4,1fr)}}.home-post-grid--empty{display:flex;align-items:center;justify-content:center;min-height:140px;padding:1rem 1.25rem;border:1px dashed rgba(148,163,184,.55);border-radius:12px;background:#f8fafc;grid-column:1 / -1}.home-empty{margin:0;text-align:center;color:#64748b;font-size:.875rem;line-height:1.55}.home-subfoot{margin:.5rem 0 0;text-align:center;font-size:.8rem}.home-subfoot__dot{margin:0 .35rem;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.home-hero--studio{margin-bottom:1.5rem;border-radius:1.25rem;overflow:hidden;border:1px solid var(--border-default);background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 12%,var(--bg-card)) 0%,var(--bg-card) 48%,var(--bg-card) 100%)}[data-theme=dark] .home-hero--studio{background:linear-gradient(160deg,#2dd4bf0f,#0f141d 42%,#0b0e14);border-color:#ffffff14}.home-hero__inner--split{display:grid;gap:clamp(1.25rem,3vw,2rem);align-items:center;padding:clamp(1.35rem,3vw,2.25rem) clamp(1.1rem,2.5vw,1.75rem)}@media (min-width: 900px){.home-hero__inner--split{grid-template-columns:1fr minmax(280px,38%)}}.home-hero--studio .home-hero__copy{color:var(--text-primary)}.home-hero__prompt{margin:0 0 .75rem;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.85rem;color:var(--accent);letter-spacing:.02em}.home-hero--studio .home-hero__title{margin:0 0 .65rem;font-size:clamp(1.5rem,3.6vw,2.15rem);font-weight:800;line-height:1.2;letter-spacing:.02em;text-shadow:none;color:var(--text-primary)}.home-hero__accent{color:var(--accent)}.home-hero--studio .home-hero__sub{margin:0 0 1rem;color:var(--text-secondary);font-size:.92rem;line-height:1.65;max-width:36rem}.home-hero__meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:1.1rem;font-size:.78rem;color:var(--text-secondary)}.home-hero__meta-item{display:inline-flex;align-items:center;gap:.35rem}.home-hero__meta-icon{color:var(--accent);font-size:14px}.home-hero--studio .home-hero__btn--ghost{background:transparent;color:var(--text-primary)!important;border:1px solid var(--border-default)}.home-hero--studio .home-hero__btn--ghost:hover{border-color:var(--accent);background:var(--accent-bg)}.home-hero--studio .home-hero__social-icon{background:var(--bg-subtle);border-color:var(--border-default);color:var(--text-secondary)}.home-hero--studio .home-hero__social-link:hover .home-hero__social-icon{background:var(--accent-bg);color:var(--accent);border-color:#14b8a659}.dev-editor-mock{border-radius:12px;overflow:hidden;border:1px solid rgba(148,163,184,.25);background:#0d1117;box-shadow:0 24px 50px -28px #0000008c;min-height:220px}[data-theme=light] .dev-editor-mock{background:#fff;border-color:#94a3b866;box-shadow:0 1px #fffc inset,0 20px 44px -28px #0f172a24}.dev-editor-mock__chrome{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#161b22;border-bottom:1px solid rgba(255,255,255,.06)}[data-theme=light] .dev-editor-mock__chrome{background:linear-gradient(180deg,#f1f5f9,#e2e8f0);border-bottom-color:#94a3b859}.dev-editor-mock__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dev-editor-mock__dot--r{background:#ff5f56}.dev-editor-mock__dot--y{background:#ffbd2e}.dev-editor-mock__dot--g{background:#27c93f}.dev-editor-mock__title{margin-left:auto;font-size:11px;color:#8b949e;font-family:ui-monospace,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:56%}[data-theme=light] .dev-editor-mock__title{color:#475569}.dev-editor-mock__bar{height:3px;background:linear-gradient(90deg,#2dd4bf33,#2dd4bf8c,#2dd4bf26)}[data-theme=light] .dev-editor-mock__bar{background:linear-gradient(90deg,#14b8a640,#14b8a68c,#14b8a633)}.dev-editor-mock__code{margin:0;padding:14px 14px 16px;font-size:11.5px;line-height:1.55;overflow-x:auto;overflow-wrap:anywhere;word-break:break-word;color:#e6edf3;font-family:ui-monospace,Cascadia Code,Consolas,monospace;background:#0d1117}[data-theme=light] .dev-editor-mock__code{color:#24292f;background:#fafafa}.dev-editor-mock__code code{color:#abb2bf}.dev-editor-hl--kw{color:#569cd6;font-weight:500}.dev-editor-hl--ty{color:#4ec9b0}.dev-editor-hl--st{color:#ce9178;white-space:pre-wrap}.dev-editor-hl--cm{color:#6a9955;font-style:italic}[data-theme=light] .dev-editor-mock__code code{color:#1f2328}[data-theme=light] .dev-editor-hl--kw{color:#0033b3;font-weight:600}[data-theme=light] .dev-editor-hl--ty{color:#007396}[data-theme=light] .dev-editor-hl--st{color:#067d17}[data-theme=light] .dev-editor-hl--cm{color:#6a737d;font-style:italic}.home-columns{display:grid;gap:1.25rem;align-items:start;padding:0 clamp(.25rem,1vw,.5rem) .5rem}@media (min-width: 960px){.home-columns{grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:1.5rem}}.home-columns__main{min-width:0}.home-columns__aside{display:flex;flex-direction:column;gap:1rem}@media (min-width: 960px){.home-columns__aside{position:sticky;top:16px}}.home-aside-card{border-radius:14px;border:1px solid var(--border-default);background:var(--bg-card);padding:1rem 1rem 1.1rem;box-shadow:var(--shadow-card, 0 8px 28px -12px rgba(0, 0, 0, .2))}.home-aside-card--profile{text-align:center}.home-aside__avatar-img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:1px solid var(--border-default);margin:0 auto .5rem;display:block}.home-aside__avatar-ph{margin:0 auto .5rem}.home-aside__name{font-weight:700;font-size:1.05rem;color:var(--text-primary)}.home-aside__bio{margin:.35rem 0 .75rem;font-size:.8rem;line-height:1.5;color:var(--text-secondary)}.home-aside__stats{list-style:none;margin:0;padding:0;display:flex;justify-content:space-around;gap:.5rem;font-size:.72rem;color:var(--text-secondary)}.home-aside__stats li{display:flex;flex-direction:column;align-items:center;gap:2px}.home-aside__stats strong{font-size:1.05rem;color:var(--text-primary)}.home-aside__title{margin:0 0 .65rem;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.home-tech-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (min-width: 400px){.home-tech-grid{grid-template-columns:repeat(4,1fr)}}.home-tech-pill{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-subtle);font-size:10px;color:var(--text-secondary)}.home-tech-pill__abbr{font-weight:800;font-size:12px;color:var(--accent);font-family:ui-monospace,monospace}.home-tech-pill__label{text-align:center;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-aside-card--now .home-aside__now-link{display:flex;align-items:flex-start;gap:8px;text-decoration:none!important;font-size:.88rem;font-weight:600;color:var(--text-primary)!important;line-height:1.45}.home-aside-card--now .home-aside__now-link:hover{color:var(--accent)!important}.home-aside__now-dot{width:8px;height:8px;border-radius:50%;margin-top:.35rem;flex-shrink:0;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.home-aside__muted{margin:0;font-size:.85rem;color:var(--text-secondary)}.home-aside__info-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.home-aside__info-list li{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-primary)}.home-aside__info-icon{font-size:15px;color:var(--accent);flex-shrink:0}.home-aside__info-link{display:flex;align-items:center;gap:.5rem;text-decoration:none!important;color:var(--text-primary)!important;transition:color .15s ease}.home-aside__info-link:hover{color:var(--accent)!important}@media (min-width: 900px){.home-columns .home-post-grid{grid-template-columns:repeat(3,1fr)}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0f;position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.auth-page__code-bg{position:absolute;top:0;left:0;right:0;bottom:0;font-family:Fira Code,Consolas,Courier New,monospace;font-size:13px;line-height:1.9;padding:30px;white-space:pre;overflow:hidden;-webkit-user-select:none;user-select:none;opacity:.6}.auth-page__code-bg .code-line{display:block}.auth-page__code-bg .comment{color:#6482a04d}.auth-page__code-bg .keyword{color:#ff7b7240}.auth-page__code-bg .string{color:#a5d6ff40}.auth-page__code-bg .function{color:#d2a8ff40}.auth-page__beam{position:absolute;width:1px;height:100vh;top:0;animation:beamMove 12s ease-in-out infinite}.auth-page__beam:nth-child(2){left:20%;background:linear-gradient(to bottom,transparent,rgba(255,100,100,.15),rgba(100,150,255,.15),transparent);animation-delay:0s}.auth-page__beam:nth-child(3){left:50%;background:linear-gradient(to bottom,transparent,rgba(255,200,100,.12),rgba(150,100,255,.12),transparent);animation-delay:4s}.auth-page__beam:nth-child(4){left:80%;background:linear-gradient(to bottom,transparent,rgba(100,255,150,.15),rgba(255,100,200,.15),transparent);animation-delay:8s}@keyframes beamMove{0%,to{opacity:.3;transform:rotate(15deg) translate(-30px)}50%{opacity:.8;transform:rotate(15deg) translate(30px)}}.auth-page__orb{position:absolute;border-radius:50%;filter:blur(60px);animation:orbFloat 15s ease-in-out infinite}.auth-page__orb:nth-child(5){width:400px;height:400px;background:radial-gradient(circle,rgba(100,180,255,.15),transparent);top:-100px;left:-100px}.auth-page__orb:nth-child(6){width:350px;height:350px;background:radial-gradient(circle,rgba(180,100,255,.12),transparent);bottom:-100px;right:-100px;animation-delay:-7s;animation-direction:reverse}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-20px) scale(1.1)}66%{transform:translate(-20px,30px) scale(.9)}}.auth-page__floating-code{position:absolute;font-family:Fira Code,Consolas,monospace;font-size:11px;padding:8px 12px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:4px;white-space:nowrap;color:#ffffff14;animation:codeFloat 8s ease-in-out infinite}.auth-page__floating-code:nth-child(7){top:15%;left:5%;animation-delay:0s}.auth-page__floating-code:nth-child(8){top:40%;right:8%;animation-delay:2s}.auth-page__floating-code:nth-child(9){bottom:25%;left:12%;animation-delay:4s}.auth-page__floating-code:nth-child(10){bottom:10%;right:15%;animation-delay:6s}@keyframes codeFloat{0%,to{transform:translateY(0) rotate(0);opacity:.08}50%{transform:translateY(-15px) rotate(1deg);opacity:.15}}.auth-page__container{position:relative;z-index:10;width:440px}.auth-page__logo-container{text-align:center;margin-bottom:28px}.auth-page__logo-icon{width:56px;height:56px;margin:0 auto 14px;position:relative}.auth-page__logo-icon:before{content:"";position:absolute;top:50%;left:50%;width:48px;height:48px;border:2px solid rgba(255,255,255,.15);border-radius:10px;transform:translate(-50%,-50%) rotate(45deg)}.auth-page__logo-icon:after{content:"";position:absolute;top:50%;left:50%;width:24px;height:24px;background:linear-gradient(135deg,#ff6b6b,#4ecdc4,#a855f7);border-radius:6px;transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 20px #4ecdc44d}.auth-page__logo-text{font-size:22px;font-weight:300;letter-spacing:6px;color:#fff;margin-bottom:6px}.auth-page__logo-tag{font-size:12px;color:#ffffff59;font-family:Fira Code,Consolas,monospace}.cursor-blink{animation:blink 1s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.auth-card{background:#161b22d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.06);border-radius:12px;overflow:hidden;box-shadow:0 12px 40px #00000080,inset 0 1px #ffffff0d}.auth-card__title-bar{background:#0d1117e6;padding:14px 18px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.06)}.window-dot{width:12px;height:12px;border-radius:50%}.dot-red{background:#ff5f56}.dot-yellow{background:#ffbd2e}.dot-green{background:#27c93f}.auth-card__title-text{flex:1;text-align:center;font-size:13px;color:#fff6;font-family:Fira Code,Consolas,monospace;margin-right:36px}.auth-card__tab-bar{display:flex;background:#0d111799;border-bottom:1px solid rgba(255,255,255,.06)}.auth-card__tab{flex:1;padding:14px 20px;font-size:14px;color:#ffffff59;cursor:pointer;transition:all .25s;position:relative;border:none;background:none;font-family:Fira Code,Consolas,monospace;display:flex;align-items:center;gap:8px}.auth-card__tab:hover{color:#fff9;background:#ffffff05}.auth-card__tab.active{color:#58a6ff;background:#161b22e6}.auth-card__tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#ff6b6b,#4ecdc4,#a855f7)}.tab-icon{opacity:.7}.auth-card__content{padding:28px}.auth-card__panel{display:none}.auth-card__panel.active{display:block;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-card__intro-comment{margin-bottom:24px;font-size:13px;line-height:1.6;font-family:Fira Code,Consolas,monospace}.comment-line{display:block;color:#6482a080}.comment-line .mark{color:#506e8c66}.comment-line .text{color:#b4c8dc66}.input-group{margin-bottom:20px}.input-label{display:flex;align-items:baseline;margin-bottom:10px;font-family:Fira Code,Consolas,monospace;font-size:13px;gap:6px}.label-line-num{color:#6482a04d;min-width:20px;-webkit-user-select:none;user-select:none}.label-keyword{color:#ff7b72}.label-var{color:#d2a8ff}.label-eq{color:#ffffff80}.label-type{color:#79c0ff}.label-comment{color:#6482a073;margin-left:2px;font-style:italic}.auth-input{width:100%;padding:12px 16px!important;background:#0d1117b3!important;border:1px solid rgba(48,54,61,.8)!important;border-radius:8px!important;color:#c9d1d9!important;font-size:14px!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important;transition:all .25s!important}.auth-input::placeholder{color:#484f58cc!important}.auth-input:focus,.auth-input:focus-within{outline:none!important;border-color:#58a6ff80!important;box-shadow:0 0 0 3px #58a6ff1a!important}.auth-input:hover:not(:focus){border-color:#484f58!important}.password-wrapper{position:relative}.auth-password.ant-input-password{width:100%;background:#0d1117b3!important;border:1px solid rgba(48,54,61,.8)!important;border-radius:8px!important;padding:0!important;box-shadow:none!important}.auth-password.ant-input-password:hover{border-color:#484f58!important}.auth-password.ant-input-password:focus-within,.auth-password.ant-input-password-focused{border-color:#58a6ff80!important;box-shadow:0 0 0 3px #58a6ff1a!important}.auth-password .ant-input{background:transparent!important;border:none!important;box-shadow:none!important;color:#c9d1d9!important;font-size:14px!important;padding:12px 0 12px 16px!important}.auth-password .ant-input::placeholder{color:#484f58cc!important}.auth-password .ant-input:focus{box-shadow:none!important}.auth-password .ant-input-suffix{display:flex;align-items:center;padding:0 14px!important;gap:4px}.auth-password .ant-input-password-icon{color:#6482a080!important;cursor:pointer;transition:color .25s;font-size:16px!important}.auth-password .ant-input-password-icon:hover{color:#c8d2dccc!important}.options-row{display:flex;justify-content:space-between;align-items:center;margin:20px 0;font-size:13px}.checkbox-wrapper{display:flex;align-items:center;gap:8px;cursor:pointer;font-family:Fira Code,Consolas,monospace}.checkbox-wrapper input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;background:#0d1117b3;border:1px solid rgba(48,54,61,.8);border-radius:4px;cursor:pointer;transition:all .25s;position:relative}.checkbox-wrapper input[type=checkbox]:checked{background:linear-gradient(135deg,#238636,#2ea043);border-color:transparent}.checkbox-wrapper input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:10px}.checkbox-text{color:#c8d2dc99}.checkbox-text .keyword{color:#ffa657}.forgot-link{color:#58a6ff;text-decoration:none;font-size:12px;transition:color .25s;font-family:Fira Code,Consolas,monospace}.forgot-link:hover{color:#79c0ff;text-decoration:underline}.submit-btn{width:100%;padding:14px;background:linear-gradient(135deg,#238636e6,#2ea043e6);border:none;border-radius:8px;color:#fff;font-size:14px;font-family:Fira Code,Consolas,monospace;cursor:pointer;transition:all .3s;position:relative;overflow:hidden;margin-top:24px;display:flex;align-items:center;justify-content:center;gap:6px}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2ea0434d}.submit-btn:hover:before{left:100%}.submit-btn:active{transform:translateY(0)}.btn-await{color:#ffa657}.btn-fn{color:#d2a8ff}.password-strength{display:flex;gap:6px;margin-top:10px}.strength-bar{flex:1;height:3px;background:#21262dcc;border-radius:2px;transition:all .3s}.strength-bar.weak{background:#f85149}.strength-bar.medium{background:#d29922}.strength-bar.strong{background:#238636}.strength-text{font-size:11px;margin-top:6px;color:#6482a066;font-family:Fira Code,Consolas,monospace}.terms-wrapper{margin:20px 0}.terms-wrapper .checkbox-text{font-family:-apple-system,BlinkMacSystemFont,sans-serif}.terms-wrapper .checkbox-text a{color:#58a6ff;text-decoration:none}.terms-wrapper .checkbox-text a:hover{text-decoration:underline}.auth-page__footer{text-align:center;margin-top:24px;font-size:13px;color:#ffffff4d;font-family:Fira Code,Consolas,monospace}.auth-page__footer a{color:#58a6ff;text-decoration:none;transition:color .25s}.auth-page__footer a:hover{color:#79c0ff;text-decoration:underline}.auth-card__status-bar{background:#0d1117e6;padding:8px 18px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#6482a066;font-family:Fira Code,Consolas,monospace;border-top:1px solid rgba(255,255,255,.04)}.status-left,.status-right{display:flex;gap:16px}.status-item{display:flex;align-items:center;gap:4px}.status-dot{width:6px;height:6px;border-radius:50%}.status-dot.online{background:#238636}.auth-page__theme-btn{position:absolute;top:20px;right:20px;z-index:20;width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#161b22b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#ffffff80;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all .25s}.auth-page__theme-btn:hover{color:#ffffffd9;border-color:#ffffff26;background:#161b22e6}[data-theme=light] .auth-page{background:#f0f0f5}[data-theme=light] .auth-page__code-bg{opacity:.35}[data-theme=light] .auth-page__code-bg .comment{color:#6a995540}[data-theme=light] .auth-page__code-bg .keyword{color:#af00db33}[data-theme=light] .auth-page__code-bg .string{color:#a3151533}[data-theme=light] .auth-page__code-bg .function{color:#795e2633}[data-theme=light] .auth-page__beam:nth-child(2){background:linear-gradient(to bottom,transparent,rgba(124,58,237,.06),rgba(236,72,153,.06),transparent)}[data-theme=light] .auth-page__beam:nth-child(3){background:linear-gradient(to bottom,transparent,rgba(124,58,237,.05),rgba(59,130,246,.05),transparent)}[data-theme=light] .auth-page__beam:nth-child(4){background:linear-gradient(to bottom,transparent,rgba(236,72,153,.06),rgba(124,58,237,.06),transparent)}[data-theme=light] .auth-page__orb:nth-child(5){background:radial-gradient(circle,rgba(124,58,237,.08),transparent)}[data-theme=light] .auth-page__orb:nth-child(6){background:radial-gradient(circle,rgba(236,72,153,.06),transparent)}[data-theme=light] .auth-page__floating-code{background:#7c3aed0a;border:1px solid rgba(124,58,237,.08);color:#7c3aed1f}[data-theme=light] .auth-page__logo-icon:before{border-color:#0000001f}[data-theme=light] .auth-page__logo-text{color:#1a1a2e}[data-theme=light] .auth-page__logo-tag{color:#00000059}[data-theme=light] .auth-card{background:#ffffffd9;border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 40px #00000014,inset 0 1px #fffc}[data-theme=light] .auth-card__title-bar{background:#f8f8fce6;border-bottom:1px solid rgba(0,0,0,.06)}[data-theme=light] .auth-card__title-text{color:#0006}[data-theme=light] .auth-card__tab-bar{background:#f8f8fc99;border-bottom:1px solid rgba(0,0,0,.06)}[data-theme=light] .auth-card__tab{color:#0006}[data-theme=light] .auth-card__tab:hover{color:#000000a6;background:#00000008}[data-theme=light] .auth-card__tab.active{color:#7c3aed;background:#ffffffe6}[data-theme=light] .comment-line{color:#00000059}[data-theme=light] .comment-line .mark{color:#00000040}[data-theme=light] .comment-line .text{color:#0006}[data-theme=light] .label-line-num{color:#0003}[data-theme=light] .label-keyword{color:#af00db}[data-theme=light] .label-var{color:#001080}[data-theme=light] .label-eq{color:#0006}[data-theme=light] .label-type{color:#267f99}[data-theme=light] .label-comment{color:#6a9955}[data-theme=light] .auth-input{background:#ffffffe6!important;border:1px solid rgba(0,0,0,.12)!important;color:#1a1a2e!important}[data-theme=light] .auth-input::placeholder{color:#0000004d!important}[data-theme=light] .auth-input:focus,[data-theme=light] .auth-input:focus-within{border-color:#7c3aed80!important;box-shadow:0 0 0 3px #7c3aed1a!important}[data-theme=light] .auth-input:hover:not(:focus){border-color:#00000040!important}[data-theme=light] .auth-password.ant-input-password{background:#ffffffe6!important;border:1px solid rgba(0,0,0,.12)!important}[data-theme=light] .auth-password.ant-input-password:hover{border-color:#00000040!important}[data-theme=light] .auth-password.ant-input-password:focus-within,[data-theme=light] .auth-password.ant-input-password-focused{border-color:#7c3aed80!important;box-shadow:0 0 0 3px #7c3aed1a!important}[data-theme=light] .auth-password .ant-input{color:#1a1a2e!important}[data-theme=light] .auth-password .ant-input::placeholder{color:#0000004d!important}[data-theme=light] .auth-password .ant-input-password-icon{color:#00000059!important}[data-theme=light] .auth-password .ant-input-password-icon:hover{color:#000000a6!important}[data-theme=light] .checkbox-wrapper input[type=checkbox]{background:#ffffffe6;border-color:#0000002e}[data-theme=light] .checkbox-text{color:#0000008c}[data-theme=light] .checkbox-text .keyword{color:#cf7b00}[data-theme=light] .submit-btn{background:linear-gradient(135deg,#7c3aed,#8b5cf6)}[data-theme=light] .submit-btn:hover{box-shadow:0 6px 20px #7c3aed59}[data-theme=light] .btn-await{color:#fbbf24}[data-theme=light] .btn-fn{color:#e8e8f0}[data-theme=light] .strength-bar{background:#0000001f}[data-theme=light] .strength-text,[data-theme=light] .auth-page__footer{color:#00000059}[data-theme=light] .auth-page__footer a{color:#7c3aed}[data-theme=light] .auth-page__footer a:hover{color:#6d28d9}[data-theme=light] .auth-card__status-bar{background:#f8f8fce6;color:#00000059;border-top:1px solid rgba(0,0,0,.06)}[data-theme=light] .auth-page__theme-btn{background:#ffffffb3;border-color:#00000014;color:#00000073}[data-theme=light] .auth-page__theme-btn:hover{color:#000000bf;border-color:#00000026;background:#ffffffe6}[data-theme=light] .terms-wrapper .checkbox-text a{color:#7c3aed}[data-theme=light] .terms-wrapper .checkbox-text a:hover{color:#6d28d9}[data-theme=light] .forgot-link{color:#7c3aed}[data-theme=light] .forgot-link:hover{color:#6d28d9}.blog-list-shell{padding-top:0}.blog-list-layout{display:flex;flex-direction:column;gap:20px;align-items:stretch;max-width:100%;margin:0;width:100%;min-width:0}@media (min-width: 960px){.blog-list-layout{flex-direction:row;align-items:flex-start;gap:22px}.blog-list-sidebar{flex:0 0 260px;width:260px;position:sticky;top:12px}.blog-list-page__main{flex:1;min-width:0}}.blog-list-sidebar{width:100%}.blog-list-side-block{background:#fff;border:1px solid var(--border-default);border-radius:14px;padding:16px 14px;margin-bottom:16px;box-shadow:0 12px 36px -28px #0f172a40}[data-theme=dark] .blog-list-side-block{background:var(--bg-card)}.blog-list-side-title{margin:0 0 12px;font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--text-primary)}.blog-cat-list{list-style:none;margin:0;padding:0}.blog-cat-list li{margin:0;padding:0}.blog-cat-list__link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;margin-bottom:4px;border-radius:8px;text-decoration:none!important;color:var(--text-secondary)!important;font-size:14px;transition:background .15s ease,color .15s ease}.blog-cat-list__link:hover{background:var(--bg-hover);color:var(--accent)!important}.blog-cat-list__link--active{background:var(--accent-bg);color:var(--accent)!important;font-weight:600}.blog-cat-list__count{font-size:12px;opacity:.85}.blog-tag-cloud{display:flex;flex-wrap:wrap;gap:8px}.blog-tag-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:12px;text-decoration:none!important;border:1px solid transparent;transition:transform .12s ease}.blog-tag-pill:hover{transform:translateY(-1px)}.blog-tag-pill__n{opacity:.75;font-size:11px}.blog-tag--a{background:#3b82f61a;color:#2563eb}.blog-tag--b{background:#22c55e1f;color:#16a34a}.blog-tag--c{background:#f973161f;color:#ea580c}.blog-tag--d{background:#8b5cf61f;color:#7c3aed}.blog-list-title{margin:0 0 14px!important;font-weight:700!important;letter-spacing:.02em}.blog-list-toolbar{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:14px 16px;background:#fff;border:1px solid var(--border-default);border-radius:14px;box-shadow:0 10px 32px -28px #0f172a33}.blog-list-toolbar__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.blog-list-toolbar__row .blog-list-toolbar__search{flex:1 1 220px;min-width:0;border-radius:10px!important}.blog-list-toolbar__row .blog-list-toolbar__sort{width:140px!important}.blog-list-toolbar__row .blog-list-view-toggle{margin-left:auto}[data-theme=dark] .blog-list-toolbar{background:var(--bg-card)}.blog-list-view-toggle{display:flex;gap:6px}.blog-list-body{width:100%}.blog-list-stack{display:flex;flex-direction:column;gap:16px}.blog-list-grid{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 700px){.blog-list-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1100px){.blog-list-grid{grid-template-columns:repeat(2,1fr)}}.blog-list-empty{text-align:center;padding:48px 0;color:var(--text-secondary)}.blog-list-pagination{text-align:center;margin-top:24px}@media (max-width: 640px){.blog-list-toolbar{padding:12px}.blog-list-toolbar__row .blog-list-toolbar__search{flex-basis:100%}.blog-list-toolbar__row .blog-list-toolbar__sort{flex:1 1 auto;width:auto!important;min-width:0}.blog-list-toolbar__row .blog-list-view-toggle{width:100%;margin-left:0;justify-content:flex-end}}.blog-list-hero{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border-default)}.blog-list-hero__crumb{margin:0 0 .5rem;font-size:.8rem;color:var(--text-secondary)}.blog-list-hero__crumb a{color:var(--accent);text-decoration:none}.blog-list-hero__crumb a:hover{text-decoration:underline}.blog-list-hero__sep{margin:0 .35rem;opacity:.65}.blog-list-hero__title{margin:0 0 .45rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:.02em;color:var(--text-primary)}.blog-list-hero__lead{margin:0;font-size:.92rem;line-height:1.6;color:var(--text-secondary);max-width:42rem}.blog-filter-pills{display:flex;flex-wrap:wrap;gap:8px;width:100%}.blog-filter-pill{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;border:1px solid var(--border-default);background:var(--bg-subtle);font-size:13px;font-weight:500;color:var(--text-secondary)!important;text-decoration:none!important;transition:background .15s ease,border-color .15s ease,color .15s ease}.blog-filter-pill:hover{border-color:#14b8a659;color:var(--accent)!important}.blog-filter-pill--active{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}[data-theme=dark] .blog-filter-pill--active{color:#0b0e14!important}.blog-featured-cats{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.blog-featured-cats__link{display:flex;align-items:flex-start;gap:10px;padding:8px;border-radius:10px;text-decoration:none!important;color:inherit!important;transition:background .15s ease}.blog-featured-cats__link:hover{background:var(--bg-hover)}.blog-featured-cats__icon-slot{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.blog-featured-cats__text{display:flex;flex-direction:column;gap:2px;min-width:0}.blog-featured-cats__name{font-size:13px;font-weight:600;color:var(--text-primary)}.blog-featured-cats__n{font-size:11px;color:var(--text-secondary)}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.article-toc{box-sizing:border-box;border:1px solid var(--border-default);border-radius:1.25rem;background:var(--bg-subtle);padding:16px 12px 14px;max-height:none;overflow:visible}.article-toc__title{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);margin:0 4px 10px;padding-bottom:10px;border-bottom:1px solid var(--divider)}.article-toc__nav{margin:0}.article-toc__list{list-style:none;margin:0;padding:0}.article-toc__item{margin:0;padding:2px 0;border-radius:8px;border-left:2px solid transparent;transition:border-color .15s ease,background .15s ease}.article-toc__item--active{border-left-color:var(--accent);background:var(--accent-bg)}.article-toc__link{display:block;width:100%;box-sizing:border-box;text-align:left;border:none;background:transparent;cursor:pointer;font:inherit;font-size:13px;line-height:1.45;color:var(--text-secondary);padding:6px 10px 6px 8px;border-radius:6px;transition:color .15s ease}.article-toc__link:hover{color:var(--accent-hover)}.article-toc__item--active .article-toc__link{color:var(--accent);font-weight:600}.post-detail-crumb{margin-bottom:12px}.post-detail-crumb__link{font-size:13px;font-weight:600;color:var(--accent);text-decoration:none}.post-detail-crumb__link:hover{text-decoration:underline}.page-container-padded.post-detail-page{max-width:min(var(--layout-max-width, 1440px),100%);margin:0 auto;padding-bottom:32px}.post-detail-outer{display:flex;flex-direction:column;gap:20px;align-items:stretch}.post-detail-outer--rail{display:flex;flex-direction:column;gap:20px}@media (max-width: 1099px){.post-detail-main{order:-1}}@media (min-width: 1100px){.post-detail-outer--rail{display:grid;grid-template-columns:minmax(160px,200px) minmax(0,1.08fr) minmax(250px,300px);gap:18px 20px;align-items:start}.post-detail-outer--rail.post-detail-outer--no-toc{grid-template-columns:minmax(0,1.18fr) minmax(250px,300px)}}.post-detail-rail{display:flex;flex-direction:column;gap:16px;min-width:0}@media (min-width: 1100px){.post-detail-rail{position:sticky;top:20px;align-self:start}}.post-detail-fab{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;padding:12px;border:1px solid var(--border-default);border-radius:12px;background:var(--bg-subtle)}.post-detail-fab--hero{flex-direction:row;flex-wrap:nowrap;align-items:center;align-self:center;padding:6px 8px;gap:4px}.post-detail-fab__btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:44px;padding:8px 6px;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);font-size:12px;cursor:default;transition:color .15s ease,background .15s ease}.post-detail-fab__btn span{font-size:11px;color:var(--text-secondary)}.post-detail-fab__btn:hover{background:var(--bg-hover);color:var(--accent)}.post-detail-main{min-width:0}@media (min-width: 1100px){.post-detail-main{order:unset}}.post-detail-right{display:flex;flex-direction:column;gap:16px;min-width:0}.post-detail-side-card{background:#fff;border:1px solid var(--border-default);border-radius:12px;padding:1.1rem 1rem 1.15rem;text-align:center;box-shadow:0 10px 32px -28px #0f172a33}[data-theme=dark] .post-detail-side-card{background:var(--bg-card)}.post-detail-side-avatar{margin:0 auto 10px}.post-detail-side-avatar-image{width:72px;height:72px;display:block;border-radius:50%;object-fit:cover}.post-detail-side-name{font-weight:700;font-size:1.05rem;color:var(--text-primary)}.post-detail-side-bio{margin:.4rem 0 .9rem;font-size:13px;line-height:1.5;color:var(--text-secondary)}.post-detail-follow{min-width:88px}.post-detail-side-card--meta{text-align:left}.post-detail-side-card-title{margin:0 0 10px;font-size:14px;font-weight:600;color:var(--text-primary);padding-bottom:8px;border-bottom:1px solid var(--divider)}.post-detail-info-list{list-style:none;margin:0;padding:0;font-size:13px;color:var(--text-secondary)}.post-detail-info-list li{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid var(--divider)}.post-detail-info-list li:last-child{border-bottom:none}.post-detail-info-list a{color:var(--accent);text-decoration:none}.post-detail-info-list a:hover{text-decoration:underline}.post-detail-info-tags{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.post-detail-side-card--comments{text-align:left}.post-detail-comments__count{margin:0 0 4px;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.post-detail-comments__hint{display:block;margin:0;font-size:12px;line-height:1.5}.post-detail-body{margin-top:4px}.post-detail-article{margin:0;padding:clamp(28px,3.2vw,40px) clamp(20px,4vw,48px) clamp(36px,4vw,52px);border-radius:1.25rem}[data-theme=light] .post-detail-article.post-card-glass{background:#fff;border-color:#3b82f61f}.post-detail-article.post-card-glass:hover{transform:none;background:var(--bg-card);border-color:var(--border-default);box-shadow:var(--shadow-card, 0 12px 40px -20px rgba(0, 0, 0, .15))}[data-theme=light] .post-detail-article.post-card-glass:hover{background:#fff;border-color:#3b82f61f}@media (max-width: 576px){.post-detail-article{padding:28px 18px 40px}}.post-detail-hero{margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid var(--divider)}.post-detail-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:8px 16px}.post-detail-edit-link{flex-shrink:0;margin-top:2px}.post-detail-edit-btn.ant-btn.ant-btn-text{height:auto;padding:5px 14px;line-height:1.35;border:1px solid var(--accent);border-radius:8px;color:var(--accent);background:transparent}.post-detail-edit-btn.ant-btn.ant-btn-text:hover{color:var(--accent);border-color:var(--accent);background:var(--bg-subtle, rgba(13, 148, 136, .08))}.post-detail-edit-btn.ant-btn.ant-btn-text:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.post-detail-title{flex:1;min-width:0;margin:0 0 14px;font-size:clamp(1.55rem,4vw,2.25rem);font-weight:700;line-height:1.25;letter-spacing:-.02em;color:var(--text-primary)}.post-detail-title:after{content:"";display:block;width:52px;height:4px;margin-top:14px;border-radius:999px;background:var(--accent)}.post-detail-hero-bar{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-bottom:12px}.post-detail-hero-bar .post-detail-author-row{margin-bottom:0;flex:1 1 200px;min-width:0}.post-detail-author-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.post-detail-author-avatar{width:40px;height:40px;display:block;border-radius:50%;object-fit:cover}.post-detail-author-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.post-detail-author-name{font-size:14px;font-weight:600;color:var(--text-primary)}.post-detail-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.post-detail-cover-wrap{margin-top:18px;overflow:hidden;border-radius:16px;border:1px solid var(--border-default)}.post-detail-cover{width:100%;max-height:420px;display:block;object-fit:cover}.post-detail-meta-line{margin-left:0!important;font-size:13px}@media (min-width: 1100px){.post-detail-outer--no-toc .post-detail-article{max-width:none;margin:0}}.post-detail-outer--no-toc .post-detail-hero{margin-bottom:22px;padding-bottom:18px}.post-detail-outer--no-toc .post-detail-title{margin-bottom:10px;font-size:clamp(1.45rem,3.2vw,2.05rem)}.post-detail-outer--no-toc .post-detail-title:after{width:44px;margin-top:12px}.post-detail-outer--no-toc .post-detail-body{margin-top:0}.post-detail-outer--no-toc .markdown-body--notion{font-size:17px;line-height:1.8}.post-detail-outer--no-toc .markdown-body--notion ol,.post-detail-outer--no-toc .markdown-body--notion ul{padding-left:1.35em}.post-detail-outer--no-toc .markdown-body--notion ol>li,.post-detail-outer--no-toc .markdown-body--notion ul>li{margin:.72em 0;padding-left:.1em}.post-detail-outer--no-toc .markdown-body--notion li::marker{color:var(--accent);font-weight:700}.post-detail-footer{margin-top:40px;padding-top:24px;border-top:1px solid var(--divider)}@media (prefers-color-scheme: dark){.wmde-markdown,.wmde-markdown-var{color-scheme:dark;--color-prettylights-syntax-comment: #8b949e;--color-prettylights-syntax-constant: #79c0ff;--color-prettylights-syntax-entity: #d2a8ff;--color-prettylights-syntax-storage-modifier-import: #c9d1d9;--color-prettylights-syntax-entity-tag: #7ee787;--color-prettylights-syntax-keyword: #ff7b72;--color-prettylights-syntax-string: #a5d6ff;--color-prettylights-syntax-variable: #ffa657;--color-prettylights-syntax-brackethighlighter-unmatched: #f85149;--color-prettylights-syntax-invalid-illegal-text: #f0f6fc;--color-prettylights-syntax-invalid-illegal-bg: #8e1519;--color-prettylights-syntax-carriage-return-text: #f0f6fc;--color-prettylights-syntax-carriage-return-bg: #b62324;--color-prettylights-syntax-string-regexp: #7ee787;--color-prettylights-syntax-markup-list: #f2cc60;--color-prettylights-syntax-markup-heading: #1f6feb;--color-prettylights-syntax-markup-italic: #c9d1d9;--color-prettylights-syntax-markup-bold: #c9d1d9;--color-prettylights-syntax-markup-deleted-text: #ffdcd7;--color-prettylights-syntax-markup-deleted-bg: #67060c;--color-prettylights-syntax-markup-inserted-text: #aff5b4;--color-prettylights-syntax-markup-inserted-bg: #033a16;--color-prettylights-syntax-markup-changed-text: #ffdfb6;--color-prettylights-syntax-markup-changed-bg: #5a1e02;--color-prettylights-syntax-markup-ignored-text: #c9d1d9;--color-prettylights-syntax-markup-ignored-bg: #1158c7;--color-prettylights-syntax-meta-diff-range: #d2a8ff;--color-prettylights-syntax-brackethighlighter-angle: #8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;--color-prettylights-syntax-constant-other-reference-link: #a5d6ff;--color-fg-default: #c9d1d9;--color-fg-muted: #8b949e;--color-fg-subtle: #484f58;--color-canvas-default: #0d1117;--color-canvas-subtle: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-neutral-muted: rgba(110, 118, 129, .4);--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-attention-subtle: rgba(187, 128, 9, .15);--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-success-fg: #3fb950;--color-success-emphasis: #238636;--color-copied-active-bg: #2e9b33}}@media (prefers-color-scheme: light){.wmde-markdown,.wmde-markdown-var{color-scheme:light;--color-prettylights-syntax-comment: #6e7781;--color-prettylights-syntax-constant: #0550ae;--color-prettylights-syntax-entity: #8250df;--color-prettylights-syntax-storage-modifier-import: #24292f;--color-prettylights-syntax-entity-tag: #116329;--color-prettylights-syntax-keyword: #cf222e;--color-prettylights-syntax-string: #0a3069;--color-prettylights-syntax-variable: #953800;--color-prettylights-syntax-brackethighlighter-unmatched: #82071e;--color-prettylights-syntax-invalid-illegal-text: #f6f8fa;--color-prettylights-syntax-invalid-illegal-bg: #82071e;--color-prettylights-syntax-carriage-return-text: #f6f8fa;--color-prettylights-syntax-carriage-return-bg: #cf222e;--color-prettylights-syntax-string-regexp: #116329;--color-prettylights-syntax-markup-list: #3b2300;--color-prettylights-syntax-markup-heading: #0550ae;--color-prettylights-syntax-markup-italic: #24292f;--color-prettylights-syntax-markup-bold: #24292f;--color-prettylights-syntax-markup-deleted-text: #82071e;--color-prettylights-syntax-markup-deleted-bg: #ffebe9;--color-prettylights-syntax-markup-inserted-text: #116329;--color-prettylights-syntax-markup-inserted-bg: #dafbe1;--color-prettylights-syntax-markup-changed-text: #953800;--color-prettylights-syntax-markup-changed-bg: #ffd8b5;--color-prettylights-syntax-markup-ignored-text: #eaeef2;--color-prettylights-syntax-markup-ignored-bg: #0550ae;--color-prettylights-syntax-meta-diff-range: #8250df;--color-prettylights-syntax-brackethighlighter-angle: #57606a;--color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;--color-prettylights-syntax-constant-other-reference-link: #0a3069;--color-fg-default: #24292f;--color-fg-muted: #57606a;--color-fg-subtle: #6e7781;--color-canvas-default: #ffffff;--color-canvas-subtle: #f6f8fa;--color-border-default: #d0d7de;--color-border-muted: hsl(210, 18%, 87%);--color-neutral-muted: rgba(175, 184, 193, .2);--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-attention-subtle: #fff8c5;--color-danger-fg: #d1242f;--color-danger-emphasis: #cf222e;--color-attention-fg: #9a6700;--color-attention-emphasis: #9a6700;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-success-fg: #1a7f37;--color-success-emphasis: #1f883d;--color-copied-active-bg: #2e9b33}}[data-color-mode*=dark] .wmde-markdown,[data-color-mode*=dark] .wmde-markdown-var,.wmde-markdown-var[data-color-mode*=dark],.wmde-markdown[data-color-mode*=dark],body[data-color-mode*=dark]{color-scheme:dark;--color-prettylights-syntax-comment: #8b949e;--color-prettylights-syntax-constant: #79c0ff;--color-prettylights-syntax-entity: #d2a8ff;--color-prettylights-syntax-storage-modifier-import: #c9d1d9;--color-prettylights-syntax-entity-tag: #7ee787;--color-prettylights-syntax-keyword: #ff7b72;--color-prettylights-syntax-string: #a5d6ff;--color-prettylights-syntax-variable: #ffa657;--color-prettylights-syntax-brackethighlighter-unmatched: #f85149;--color-prettylights-syntax-invalid-illegal-text: #f0f6fc;--color-prettylights-syntax-invalid-illegal-bg: #8e1519;--color-prettylights-syntax-carriage-return-text: #f0f6fc;--color-prettylights-syntax-carriage-return-bg: #b62324;--color-prettylights-syntax-string-regexp: #7ee787;--color-prettylights-syntax-markup-list: #f2cc60;--color-prettylights-syntax-markup-heading: #1f6feb;--color-prettylights-syntax-markup-italic: #c9d1d9;--color-prettylights-syntax-markup-bold: #c9d1d9;--color-prettylights-syntax-markup-deleted-text: #ffdcd7;--color-prettylights-syntax-markup-deleted-bg: #67060c;--color-prettylights-syntax-markup-inserted-text: #aff5b4;--color-prettylights-syntax-markup-inserted-bg: #033a16;--color-prettylights-syntax-markup-changed-text: #ffdfb6;--color-prettylights-syntax-markup-changed-bg: #5a1e02;--color-prettylights-syntax-markup-ignored-text: #c9d1d9;--color-prettylights-syntax-markup-ignored-bg: #1158c7;--color-prettylights-syntax-meta-diff-range: #d2a8ff;--color-prettylights-syntax-brackethighlighter-angle: #8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;--color-prettylights-syntax-constant-other-reference-link: #a5d6ff;--color-fg-default: #c9d1d9;--color-fg-muted: #8b949e;--color-fg-subtle: #484f58;--color-canvas-default: #0d1117;--color-canvas-subtle: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-neutral-muted: rgba(110, 118, 129, .4);--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-attention-subtle: rgba(187, 128, 9, .15);--color-danger-fg: #f85149}[data-color-mode*=light] .wmde-markdown,[data-color-mode*=light] .wmde-markdown-var,.wmde-markdown-var[data-color-mode*=light],.wmde-markdown[data-color-mode*=light],body[data-color-mode*=light]{color-scheme:light;--color-prettylights-syntax-comment: #6e7781;--color-prettylights-syntax-constant: #0550ae;--color-prettylights-syntax-entity: #8250df;--color-prettylights-syntax-storage-modifier-import: #24292f;--color-prettylights-syntax-entity-tag: #116329;--color-prettylights-syntax-keyword: #cf222e;--color-prettylights-syntax-string: #0a3069;--color-prettylights-syntax-variable: #953800;--color-prettylights-syntax-brackethighlighter-unmatched: #82071e;--color-prettylights-syntax-invalid-illegal-text: #f6f8fa;--color-prettylights-syntax-invalid-illegal-bg: #82071e;--color-prettylights-syntax-carriage-return-text: #f6f8fa;--color-prettylights-syntax-carriage-return-bg: #cf222e;--color-prettylights-syntax-string-regexp: #116329;--color-prettylights-syntax-markup-list: #3b2300;--color-prettylights-syntax-markup-heading: #0550ae;--color-prettylights-syntax-markup-italic: #24292f;--color-prettylights-syntax-markup-bold: #24292f;--color-prettylights-syntax-markup-deleted-text: #82071e;--color-prettylights-syntax-markup-deleted-bg: #ffebe9;--color-prettylights-syntax-markup-inserted-text: #116329;--color-prettylights-syntax-markup-inserted-bg: #dafbe1;--color-prettylights-syntax-markup-changed-text: #953800;--color-prettylights-syntax-markup-changed-bg: #ffd8b5;--color-prettylights-syntax-markup-ignored-text: #eaeef2;--color-prettylights-syntax-markup-ignored-bg: #0550ae;--color-prettylights-syntax-meta-diff-range: #8250df;--color-prettylights-syntax-brackethighlighter-angle: #57606a;--color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;--color-prettylights-syntax-constant-other-reference-link: #0a3069;--color-fg-default: #24292f;--color-fg-muted: #57606a;--color-fg-subtle: #6e7781;--color-canvas-default: #ffffff;--color-canvas-subtle: #f6f8fa;--color-border-default: #d0d7de;--color-border-muted: hsl(210, 18%, 87%);--color-neutral-muted: rgba(175, 184, 193, .2);--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-attention-subtle: #fff8c5;--color-danger-fg: #cf222e}.wmde-markdown{-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.5;word-wrap:break-word;color:var(--color-fg-default);background-color:var(--color-canvas-default)}.wmde-markdown details,.wmde-markdown figcaption,.wmde-markdown figure{display:block}.wmde-markdown summary{display:list-item}.wmde-markdown [hidden]{display:none!important}.wmde-markdown a{background-color:transparent;color:var(--color-accent-fg);text-decoration:none}.wmde-markdown a:active,.wmde-markdown a:hover{outline-width:0}.wmde-markdown abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.wmde-markdown b,.wmde-markdown strong{font-weight:600}.wmde-markdown dfn{font-style:italic}.wmde-markdown h1{margin:.67em 0;font-weight:600;padding-bottom:.3em;font-size:2em;border-bottom:1px solid var(--color-border-muted)}.wmde-markdown mark{background-color:var(--color-attention-subtle);color:var(--color-text-primary)}.wmde-markdown small{font-size:90%}.wmde-markdown sub,.wmde-markdown sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.wmde-markdown sub{bottom:-.25em}.wmde-markdown sup{top:-.5em}.wmde-markdown img{display:inline-block;border-style:none;max-width:100%;box-sizing:content-box;background-color:var(--color-canvas-default)}.wmde-markdown code,.wmde-markdown kbd,.wmde-markdown pre,.wmde-markdown samp{font-family:monospace,monospace;font-size:1em}.wmde-markdown figure{margin:1em 40px}.wmde-markdown hr{box-sizing:content-box;overflow:hidden;background:transparent;border:0;border-bottom:1px solid var(--color-border-muted);height:.25em;padding:0;margin:24px 0;background-color:var(--color-border-default)}.wmde-markdown input{font:inherit;margin:0;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit}.wmde-markdown [type=button],.wmde-markdown [type=reset],.wmde-markdown [type=submit]{-webkit-appearance:button}.wmde-markdown [type=button]::-moz-focus-inner,.wmde-markdown [type=reset]::-moz-focus-inner,.wmde-markdown [type=submit]::-moz-focus-inner{border-style:none;padding:0}.wmde-markdown [type=button]:-moz-focusring,.wmde-markdown [type=reset]:-moz-focusring,.wmde-markdown [type=submit]:-moz-focusring{outline:1px dotted ButtonText}.wmde-markdown [type=checkbox],.wmde-markdown [type=radio]{box-sizing:border-box;padding:0}.wmde-markdown [type=number]::-webkit-inner-spin-button,.wmde-markdown [type=number]::-webkit-outer-spin-button{height:auto}.wmde-markdown [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.wmde-markdown [type=search]::-webkit-search-cancel-button,.wmde-markdown [type=search]::-webkit-search-decoration{-webkit-appearance:none}.wmde-markdown ::-webkit-input-placeholder{color:inherit;opacity:.54}.wmde-markdown ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.wmde-markdown a:hover{text-decoration:underline}.wmde-markdown hr:before{display:table;content:""}.wmde-markdown hr:after{display:table;clear:both;content:""}.wmde-markdown table{border-spacing:0;border-collapse:collapse;display:block;width:max-content;max-width:100%}.wmde-markdown td,.wmde-markdown th{padding:0}.wmde-markdown details summary{cursor:pointer}.wmde-markdown details:not([open])>*:not(summary){display:none!important}.wmde-markdown kbd{display:inline-block;padding:3px 5px;font:11px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;line-height:10px;color:var(--color-fg-default);vertical-align:middle;background-color:var(--color-canvas-subtle);border:solid 1px var(--color-neutral-muted);border-bottom-color:var(--color-neutral-muted);border-radius:6px;box-shadow:inset 0 -1px 0 var(--color-neutral-muted)}.wmde-markdown h1,.wmde-markdown h2,.wmde-markdown h3,.wmde-markdown h4,.wmde-markdown h5,.wmde-markdown h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.wmde-markdown h2{font-weight:600;padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid var(--color-border-muted)}.wmde-markdown h3{font-weight:600;font-size:1.25em}.wmde-markdown h4{font-weight:600;font-size:1em}.wmde-markdown h5{font-weight:600;font-size:.875em}.wmde-markdown h6{font-weight:600;font-size:.85em;color:var(--color-fg-muted)}.wmde-markdown p{margin-top:0;margin-bottom:10px}.wmde-markdown blockquote{margin:0;padding:0 1em;color:var(--color-fg-muted);border-left:.25em solid var(--color-border-default)}.wmde-markdown ul,.wmde-markdown ol{margin-top:0;margin-bottom:0;padding-left:2em}.wmde-markdown ol ol,.wmde-markdown ul ol{list-style-type:lower-roman}.wmde-markdown ul ul ol,.wmde-markdown ul ol ol,.wmde-markdown ol ul ol,.wmde-markdown ol ol ol{list-style-type:lower-alpha}.wmde-markdown dd{margin-left:0}.wmde-markdown tt,.wmde-markdown code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.wmde-markdown pre{margin-top:0;margin-bottom:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;word-wrap:normal}.wmde-markdown .octicon{display:inline-block;overflow:visible!important;vertical-align:text-bottom;fill:currentColor}.wmde-markdown ::placeholder{color:var(--color-fg-subtle);opacity:1}.wmde-markdown input::-webkit-outer-spin-button,.wmde-markdown input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.wmde-markdown [data-catalyst]{display:block}.wmde-markdown:before{display:table;content:""}.wmde-markdown:after{display:table;clear:both;content:""}.wmde-markdown>*:first-child{margin-top:0!important}.wmde-markdown>*:last-child{margin-bottom:0!important}.wmde-markdown a:not([href]){color:inherit;text-decoration:none}.wmde-markdown .absent{color:var(--color-danger-fg)}.wmde-markdown a.anchor{float:left;padding-right:4px;margin-left:-20px;line-height:1}.wmde-markdown .anchor:focus{outline:none}.wmde-markdown p,.wmde-markdown blockquote,.wmde-markdown ul,.wmde-markdown ol,.wmde-markdown dl,.wmde-markdown table,.wmde-markdown pre,.wmde-markdown details{margin-top:0;margin-bottom:16px}.wmde-markdown blockquote>:first-child{margin-top:0}.wmde-markdown blockquote>:last-child{margin-bottom:0}.wmde-markdown sup>a:before{content:"["}.wmde-markdown sup>a:after{content:"]"}.wmde-markdown h1 .octicon-link,.wmde-markdown h2 .octicon-link,.wmde-markdown h3 .octicon-link,.wmde-markdown h4 .octicon-link,.wmde-markdown h5 .octicon-link,.wmde-markdown h6 .octicon-link{color:var(--color-fg-default);vertical-align:middle;visibility:hidden}.wmde-markdown h1:hover .anchor,.wmde-markdown h2:hover .anchor,.wmde-markdown h3:hover .anchor,.wmde-markdown h4:hover .anchor,.wmde-markdown h5:hover .anchor,.wmde-markdown h6:hover .anchor{text-decoration:none}.wmde-markdown h1:hover .anchor .octicon-link,.wmde-markdown h2:hover .anchor .octicon-link,.wmde-markdown h3:hover .anchor .octicon-link,.wmde-markdown h4:hover .anchor .octicon-link,.wmde-markdown h5:hover .anchor .octicon-link,.wmde-markdown h6:hover .anchor .octicon-link{visibility:visible}.wmde-markdown h1 tt,.wmde-markdown h1 code,.wmde-markdown h2 tt,.wmde-markdown h2 code,.wmde-markdown h3 tt,.wmde-markdown h3 code,.wmde-markdown h4 tt,.wmde-markdown h4 code,.wmde-markdown h5 tt,.wmde-markdown h5 code,.wmde-markdown h6 tt,.wmde-markdown h6 code{padding:0 .2em;font-size:inherit}.wmde-markdown ul.no-list,.wmde-markdown ol.no-list{padding:0;list-style-type:none}.wmde-markdown ol[type="1"]{list-style-type:decimal}.wmde-markdown ol[type=a]{list-style-type:lower-alpha}.wmde-markdown ol[type=i]{list-style-type:lower-roman}.wmde-markdown div>ol:not([type]){list-style-type:decimal}.wmde-markdown ul ul,.wmde-markdown ul ol,.wmde-markdown ol ol,.wmde-markdown ol ul{margin-top:0;margin-bottom:0}.wmde-markdown li>p{margin-top:16px}.wmde-markdown li+li{margin-top:.25em}.wmde-markdown dl{padding:0}.wmde-markdown dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:600}.wmde-markdown dl dd{padding:0 16px;margin-bottom:16px}.wmde-markdown table th{font-weight:600}.wmde-markdown table th,.wmde-markdown table td{padding:6px 13px;border:1px solid var(--color-border-default)}.wmde-markdown table tr{background-color:var(--color-canvas-default);border-top:1px solid var(--color-border-muted)}.wmde-markdown table tr:nth-child(2n){background-color:var(--color-canvas-subtle)}.wmde-markdown table img{background-color:transparent}.wmde-markdown img[align=right]{padding-left:20px}.wmde-markdown img[align=left]{padding-right:20px}.wmde-markdown .emoji{max-width:none;vertical-align:text-top;background-color:transparent}.wmde-markdown span.frame{display:block;overflow:hidden}.wmde-markdown span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid var(--color-border-default)}.wmde-markdown span.frame span img{display:block;float:left}.wmde-markdown span.frame span span{display:block;padding:5px 0 0;clear:both;color:var(--color-fg-default)}.wmde-markdown span.align-center{display:block;overflow:hidden;clear:both}.wmde-markdown span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.wmde-markdown span.align-center span img{margin:0 auto;text-align:center}.wmde-markdown span.align-right{display:block;overflow:hidden;clear:both}.wmde-markdown span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.wmde-markdown span.align-right span img{margin:0;text-align:right}.wmde-markdown span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.wmde-markdown span.float-left span{margin:13px 0 0}.wmde-markdown span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.wmde-markdown span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.wmde-markdown code,.wmde-markdown tt{padding:.2em .4em;margin:0;font-size:85%;background-color:var(--color-neutral-muted);border-radius:6px}.wmde-markdown code br,.wmde-markdown tt br{display:none}.wmde-markdown del code{text-decoration:inherit}.wmde-markdown pre code{font-size:100%}.wmde-markdown pre>code{padding:0;margin:0;word-break:normal;white-space:pre;background:transparent;border:0}.wmde-markdown pre{font-size:85%;line-height:1.45;background-color:var(--color-canvas-subtle);border-radius:6px}.wmde-markdown pre code,.wmde-markdown pre tt{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.wmde-markdown pre>code{padding:16px;overflow:auto;display:block}.wmde-markdown pre>code::-webkit-scrollbar{background:transparent;width:8px;height:8px}.wmde-markdown pre>code::-webkit-scrollbar-thumb{background:var(--color-fg-muted);border-radius:10px}.wmde-markdown .csv-data td,.wmde-markdown .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.wmde-markdown .csv-data .blob-num{padding:10px 8px 9px;text-align:right;background:var(--color-canvas-default);border:0}.wmde-markdown .csv-data tr{border-top:0}.wmde-markdown .csv-data th{font-weight:600;background:var(--color-canvas-subtle);border-top:0}.wmde-markdown .footnotes{font-size:12px;color:var(--color-fg-muted);border-top:1px solid var(--color-border-default)}.wmde-markdown .footnotes ol{padding-left:16px}.wmde-markdown .footnotes li{position:relative}.wmde-markdown .footnotes li:target:before{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-24px;pointer-events:none;content:"";border:2px solid var(--color-accent-emphasis);border-radius:6px}.wmde-markdown .footnotes li:target{color:var(--color-fg-default)}.wmde-markdown .footnotes .data-footnote-backref g-emoji{font-family:monospace}.wmde-markdown .task-list-item{list-style-type:none}.wmde-markdown .task-list-item label{font-weight:400}.wmde-markdown .task-list-item.enabled label{cursor:pointer}.wmde-markdown .task-list-item+.wmde-markdown .task-list-item{margin-top:3px}.wmde-markdown .task-list-item .handle{display:none}.wmde-markdown .task-list-item-checkbox,.wmde-markdown .contains-task-list input[type=checkbox]{margin:0 .2em .25em -1.6em;vertical-align:middle}.wmde-markdown .contains-task-list:dir(rtl) .task-list-item-checkbox,.wmde-markdown .contains-task-list:dir(rtl) input[type=checkbox]{margin:0 -1.6em .25em .2em}.wmde-markdown ::-webkit-calendar-picker-indicator{filter:invert(50%)}.wmde-markdown pre{position:relative}.wmde-markdown pre .copied{visibility:hidden;display:flex;position:absolute;cursor:pointer;color:var(--color-fg-default);top:6px;right:6px;border-radius:5px;background:var(--color-border-default);padding:6px;font-size:12px;transition:all .3s}.wmde-markdown pre .copied .octicon-copy{display:block}.wmde-markdown pre .copied .octicon-check{display:none}.wmde-markdown pre:hover .copied{visibility:visible}.wmde-markdown pre:hover .copied:hover{background:var(--color-prettylights-syntax-entity-tag);color:var(--color-canvas-default)}.wmde-markdown pre:hover .copied:active,.wmde-markdown pre .copied.active{background:var(--color-copied-active-bg);color:var(--color-canvas-default)}.wmde-markdown pre .active .octicon-copy{display:none}.wmde-markdown pre .active .octicon-check{display:block}.wmde-markdown .markdown-alert{padding:.5rem 1em;color:inherit;margin-bottom:16px;border-left:.25em solid var(--borderColor-default, var(--color-border-default))}.wmde-markdown .markdown-alert>:last-child{margin-bottom:0!important}.wmde-markdown .markdown-alert .markdown-alert-title{display:flex;align-items:center;line-height:1;font-weight:500;font-size:14px}.wmde-markdown .markdown-alert .markdown-alert-title svg.octicon{margin-right:var(--base-size-8, 8px)!important}.wmde-markdown .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis, var(--color-accent-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--fgColor-accent, var(--color-accent-fg))}.wmde-markdown .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis, var(--color-success-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--fgColor-success, var(--color-success-fg))}.wmde-markdown .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis, var(--color-done-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--fgColor-done, var(--color-done-fg))}.wmde-markdown .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis, var(--color-attention-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--fgColor-attention, var(--color-attention-fg))}.wmde-markdown .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis, var(--color-danger-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--fgColor-danger, var(--color-danger-fg))}.wmde-markdown .highlight-line{background-color:var(--color-neutral-muted)}.wmde-markdown .code-line.line-number:before{display:inline-block;width:1rem;text-align:right;margin-right:16px;color:var(--color-fg-subtle);content:attr(line);white-space:nowrap}.wmde-markdown .token.comment,.wmde-markdown .token.prolog,.wmde-markdown .token.doctype,.wmde-markdown .token.cdata{color:var(--color-prettylights-syntax-comment)}.wmde-markdown .token.namespace{opacity:.7}.wmde-markdown .token.property,.wmde-markdown .token.tag,.wmde-markdown .token.selector,.wmde-markdown .token.constant,.wmde-markdown .token.symbol,.wmde-markdown .token.deleted{color:var(--color-prettylights-syntax-entity-tag)}.wmde-markdown .token.maybe-class-name{color:var(--color-prettylights-syntax-variable)}.wmde-markdown .token.property-access,.wmde-markdown .token.operator,.wmde-markdown .token.boolean,.wmde-markdown .token.number,.wmde-markdown .token.selector .token.class,.wmde-markdown .token.attr-name,.wmde-markdown .token.string,.wmde-markdown .token.char,.wmde-markdown .token.builtin{color:var(--color-prettylights-syntax-constant)}.wmde-markdown .token.deleted{color:var(--color-prettylights-syntax-markup-deleted-text)}.wmde-markdown .code-line .token.deleted{background-color:var(--color-prettylights-syntax-markup-deleted-bg)}.wmde-markdown .token.inserted{color:var(--color-prettylights-syntax-markup-inserted-text)}.wmde-markdown .code-line .token.inserted{background-color:var(--color-prettylights-syntax-markup-inserted-bg)}.wmde-markdown .token.variable{color:var(--color-prettylights-syntax-constant)}.wmde-markdown .token.entity,.wmde-markdown .token.url,.wmde-markdown .language-css .token.string,.wmde-markdown .style .token.string,.wmde-markdown .token.color,.wmde-markdown .token.atrule,.wmde-markdown .token.attr-value,.wmde-markdown .token.function,.wmde-markdown .token.class-name{color:var(--color-prettylights-syntax-string)}.wmde-markdown .token.rule,.wmde-markdown .token.regex,.wmde-markdown .token.important,.wmde-markdown .token.keyword{color:var(--color-prettylights-syntax-keyword)}.wmde-markdown .token.coord{color:var(--color-prettylights-syntax-meta-diff-range)}.wmde-markdown .token.important,.wmde-markdown .token.bold{font-weight:700}.wmde-markdown .token.italic{font-style:italic}.wmde-markdown .token.entity{cursor:help}.w-md-editor-bar{position:absolute;cursor:s-resize;right:0;bottom:0;margin-top:-11px;margin-right:0;width:14px;z-index:3;height:10px;border-radius:0 0 3px;-webkit-user-select:none;user-select:none}.w-md-editor-bar svg{display:block;margin:0 auto}.w-md-editor-area{overflow:auto;border-radius:5px}.w-md-editor-text{min-height:100%;position:relative;text-align:left;white-space:pre-wrap;word-break:keep-all;overflow-wrap:break-word;box-sizing:border-box;padding:10px;margin:0;font-size:14px!important;line-height:18px!important;font-variant-ligatures:common-ligatures}.w-md-editor-text-pre,.w-md-editor-text-input,.w-md-editor-text>.w-md-editor-text-pre{margin:0;border:0;background:none;box-sizing:inherit;display:inherit;font-family:inherit;font-family:var(--md-editor-font-family)!important;font-size:inherit;font-style:inherit;font-variant-ligatures:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;-moz-tab-size:inherit;tab-size:inherit;text-indent:inherit;text-rendering:inherit;text-transform:inherit;white-space:inherit;overflow-wrap:inherit;word-break:inherit;word-break:normal;padding:0}.w-md-editor-text-pre{position:relative;margin:0!important;pointer-events:none;background-color:transparent!important}.w-md-editor-text-pre>code{padding:0!important;font-family:var(--md-editor-font-family)!important;font-size:14px!important;line-height:18px!important}.w-md-editor-text-input{position:absolute;top:0;left:0;height:100%;width:100%;resize:none;color:inherit;overflow:hidden;outline:0;padding:inherit;-webkit-font-smoothing:antialiased;-webkit-text-fill-color:transparent}.w-md-editor-text-input:empty{-webkit-text-fill-color:inherit!important}.w-md-editor-text-pre,.w-md-editor-text-input{word-wrap:pre;word-break:break-word;white-space:pre-wrap}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){.w-md-editor-text-input{color:transparent!important}.w-md-editor-text-input::selection{background-color:#accef7!important;color:transparent!important}}.w-md-editor-text-pre .punctuation{color:var(--color-prettylights-syntax-comment, #8b949e)!important}.w-md-editor-text-pre .token.url,.w-md-editor-text-pre .token.content{color:var(--color-prettylights-syntax-constant, #0550ae)!important}.w-md-editor-text-pre .token.title.important{color:var(--color-prettylights-syntax-markup-bold, #24292f)}.w-md-editor-text-pre .token.code-block .function{color:var(--color-prettylights-syntax-entity, #8250df)}.w-md-editor-text-pre .token.bold{font-weight:unset!important}.w-md-editor-text-pre .token.title{line-height:unset!important;font-size:unset!important;font-weight:unset!important}.w-md-editor-text-pre .token.code.keyword{color:var(--color-prettylights-syntax-constant, #0550ae)!important}.w-md-editor-text-pre .token.strike,.w-md-editor-text-pre .token.strike .content{color:var(--color-prettylights-syntax-markup-deleted-text, #82071e)!important}.w-md-editor-toolbar-child{position:absolute;border-radius:3px;box-shadow:0 0 0 1px var(--md-editor-box-shadow-color),0 0 0 var(--md-editor-box-shadow-color),0 1px 1px var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);z-index:1;display:none}.w-md-editor-toolbar-child.active{display:block}.w-md-editor-toolbar-child .w-md-editor-toolbar{border-bottom:0;padding:3px;border-radius:3px}.w-md-editor-toolbar-child .w-md-editor-toolbar ul>li{display:block}.w-md-editor-toolbar-child .w-md-editor-toolbar ul>li button{width:-webkit-fill-available;height:initial;box-sizing:border-box;padding:3px 4px 2px;margin:0}.w-md-editor-toolbar{border-bottom:1px solid var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);padding:3px;display:flex;justify-content:space-between;align-items:center;border-radius:3px 3px 0 0;-webkit-user-select:none;user-select:none;flex-wrap:wrap}.w-md-editor-toolbar.bottom{border-bottom:0px;border-top:1px solid var(--md-editor-box-shadow-color);border-radius:0 0 3px 3px}.w-md-editor-toolbar ul,.w-md-editor-toolbar li{margin:0;padding:0;list-style:none;line-height:initial}.w-md-editor-toolbar li{display:inline-block;font-size:14px}.w-md-editor-toolbar li+li{margin:0}.w-md-editor-toolbar li>button{border:none;height:20px;line-height:14px;background:none;padding:4px;margin:0 1px;border-radius:2px;text-transform:none;font-weight:400;overflow:visible;outline:none;cursor:pointer;transition:all .3s;white-space:nowrap;color:var(--color-fg-default)}.w-md-editor-toolbar li>button:hover,.w-md-editor-toolbar li>button:focus{background-color:var(--color-neutral-muted);color:var(--color-accent-fg)}.w-md-editor-toolbar li>button:active{background-color:var(--color-neutral-muted);color:var(--color-danger-fg)}.w-md-editor-toolbar li>button:disabled{color:var(--md-editor-box-shadow-color);cursor:not-allowed}.w-md-editor-toolbar li>button:disabled:hover{background-color:transparent;color:var(--md-editor-box-shadow-color)}.w-md-editor-toolbar li.active>button{color:var(--color-accent-fg);background-color:var(--color-neutral-muted)}.w-md-editor-toolbar-divider{height:14px;width:1px;margin:-3px 3px 0!important;vertical-align:middle;background-color:var(--md-editor-box-shadow-color)}.w-md-editor{text-align:left;border-radius:3px;padding-bottom:1px;position:relative;color:var(--color-fg-default);--md-editor-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;--md-editor-background-color: var(--color-canvas-default, #ffffff);--md-editor-box-shadow-color: var(--color-border-default, #d0d7de);box-shadow:0 0 0 1px var(--md-editor-box-shadow-color),0 0 0 var(--md-editor-box-shadow-color),0 1px 1px var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;display:flex;flex-direction:column}.w-md-editor.w-md-editor-rtl{direction:rtl!important;text-align:right!important}.w-md-editor.w-md-editor-rtl .w-md-editor-preview{right:unset!important;left:0;text-align:right!important;box-shadow:inset -1px 0 0 0 var(--md-editor-box-shadow-color)}.w-md-editor.w-md-editor-rtl .w-md-editor-text{text-align:right!important}.w-md-editor-toolbar{height:fit-content}.w-md-editor-content{height:100%;overflow:auto;position:relative;border-radius:0 0 3px}.w-md-editor .copied{display:none!important}.w-md-editor-input{width:50%;height:100%}.w-md-editor-text-pre>code{word-break:break-word!important;white-space:pre-wrap!important}.w-md-editor-preview{width:50%;box-sizing:border-box;box-shadow:inset 1px 0 0 0 var(--md-editor-box-shadow-color);position:absolute;padding:10px 20px;overflow:auto;top:0;right:0;bottom:0;border-radius:0 0 5px;display:flex;flex-direction:column}.w-md-editor-preview .anchor{display:none}.w-md-editor-preview .contains-task-list li.task-list-item{list-style:none}.w-md-editor-show-preview .w-md-editor-input{width:0%;overflow:hidden;background-color:var(--md-editor-background-color)}.w-md-editor-show-preview .w-md-editor-preview{width:100%;box-shadow:inset 0 0}.w-md-editor-show-edit .w-md-editor-input{width:100%}.w-md-editor-show-edit .w-md-editor-preview{width:0%;padding:0}.w-md-editor-fullscreen{overflow:hidden;position:fixed;z-index:99999;top:0;left:0;right:0;bottom:0;height:100%!important}.w-md-editor-fullscreen .w-md-editor-content{height:100%}.post-md-editor{margin-top:2px}.post-md-editor__topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.post-md-editor__modes{display:inline-flex;gap:8px;padding:4px;border:1px solid var(--border-default);border-radius:10px;background:var(--bg-subtle)}.post-md-editor__modes button,.post-md-editor__group button{border:0;background:transparent;color:var(--text-secondary);padding:6px 12px;border-radius:8px;cursor:pointer;transition:background-color .2s ease,color .2s ease}.post-md-editor__modes button:hover,.post-md-editor__group button:hover{background:var(--accent-soft);color:var(--accent)}.post-md-editor__modes button.is-active{background:var(--accent);color:#fff}.post-md-editor__topbar-hint{font-size:13px;color:var(--text-secondary)}.post-md-editor__toolbar-groups{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.post-md-editor__group{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 10px;border:1px solid var(--border-default);border-radius:10px;background:var(--bg-subtle)}.post-md-editor__group>span{font-size:12px;color:var(--text-secondary)}.post-md-editor__meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:10px;font-size:13px;color:var(--text-secondary)}.post-md-editor__meta kbd{display:inline-block;padding:1px 6px;border-radius:4px;font-size:12px;font-family:ui-monospace,monospace;background:var(--bg-subtle);border:1px solid var(--border-default);color:var(--text-secondary)}.post-md-editor__shell{border-radius:12px;border:1px solid var(--border-input);background:var(--bg-input);overflow:hidden;box-shadow:0 1px 2px #0000000a;transition:border-color .2s ease,box-shadow .2s ease}[data-theme=dark] .post-md-editor__shell{box-shadow:0 2px 12px #00000059}.post-md-editor__shell:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-focus)}.post-md-editor__shell .w-md-editor{border-radius:0!important;box-shadow:none!important;background-color:transparent!important;--md-editor-font-family: ui-monospace, "Cascadia Code", "Segoe UI Mono", Menlo, Consolas, monospace;--md-editor-background-color: transparent;--md-editor-box-shadow-color: var(--border-default)}.post-md-editor__shell .w-md-editor-toolbar{display:none!important}.post-md-editor__shell .w-md-editor-text{padding:14px 16px!important;font-size:15px!important;line-height:1.75!important}.post-md-editor__shell .w-md-editor-text-pre>code{font-size:15px!important;line-height:1.75!important}.post-md-editor__shell .w-md-editor-text-input,.post-md-editor__shell .w-md-editor-text-pre,.post-md-editor__shell .w-md-editor-text-pre>code{font-family:ui-monospace,Cascadia Code,Segoe UI Mono,Menlo,Consolas,monospace!important}.post-md-editor__shell .w-md-editor-preview{padding:18px 22px!important}.post-md-editor__shell .wmde-markdown{font-size:15px!important;line-height:1.75!important}.post-md-editor__shell .wmde-markdown h1,.post-md-editor__shell .wmde-markdown h2,.post-md-editor__shell .wmde-markdown h3{line-height:1.35;margin-top:1.4em;margin-bottom:.7em}.post-md-editor__shell .wmde-markdown p,.post-md-editor__shell .wmde-markdown li{line-height:1.9}.post-md-editor__shell .wmde-markdown blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:4px solid var(--accent);background:var(--bg-subtle);color:var(--text-secondary)}.post-md-editor__shell .wmde-markdown table{display:block;width:100%;overflow-x:auto;border-collapse:collapse}.post-md-editor__shell .wmde-markdown pre{border-radius:12px;padding:14px 16px}.post-md-editor__shell .wmde-markdown img{display:block;max-width:100%;margin:1.25rem auto;border-radius:12px}.post-md-editor__shell .w-md-editor-bar{width:10px!important;opacity:.85}.post-md-editor.is-edit .post-md-editor__shell{min-height:560px}.post-md-editor__shell .mermaid-block{display:flex;justify-content:center;margin:1rem 0;padding:8px 0;overflow:visible!important}.post-md-editor__shell .mermaid-block svg{display:block;max-width:100%;height:auto!important}.post-md-editor__shell .mermaid-error{padding:12px;border-radius:8px;background:var(--bg-subtle);border:1px solid var(--border-default)}.post-md-editor__shell .mermaid-error pre{margin:0 0 8px;overflow-x:auto}.post-md-editor__shell .mermaid-error code{font-size:13px;white-space:pre-wrap;word-break:break-word}.editor-upload-hint{color:var(--text-secondary);font-size:12px}.post-editor__actions{display:flex;flex-wrap:wrap;gap:8px}@media (max-width: 960px){.post-md-editor__topbar,.post-md-editor__toolbar-groups,.post-md-editor__meta{flex-direction:column;align-items:stretch}.post-md-editor__modes{width:100%;justify-content:space-between}.post-md-editor__topbar-hint{text-align:left}}.page-container--wide{max-width:min(var(--layout-max-width, 1440px),100%)}.post-editor-card{border-radius:12px}.post-editor__cover-field{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.post-editor__cover-button{display:flex;align-items:center;gap:12px;width:min(520px,100%);min-height:84px;padding:12px;border:1px dashed var(--border-default);border-radius:14px;background:var(--bg-card);cursor:pointer;text-align:left}.post-editor__cover-preview{width:128px;height:72px;display:block;border-radius:10px;object-fit:cover}.post-editor__cover-text,.post-editor__cover-empty{color:var(--text-primary);font-weight:500}.post-editor__cover-empty{color:var(--text-secondary)}.post-editor__meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px}.post-editor__meta-grid .ant-form-item{margin-bottom:16px}.post-editor__cover-picker{display:flex;flex-direction:column;gap:10px}.post-editor__cover-list{display:flex;flex-direction:column;gap:8px;max-height:min(52vh,400px);overflow-y:auto;padding-right:2px}.post-editor__cover-row{display:flex;flex-direction:row;align-items:center;gap:12px;width:100%;padding:10px 12px;border:1px solid var(--border-default);border-radius:10px;background:var(--bg-card);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.post-editor__cover-row:hover{border-color:var(--accent);background:var(--bg-subtle)}.post-editor__cover-row--active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:var(--bg-subtle)}.post-editor__cover-row-thumb-wrap{flex-shrink:0;width:88px;height:56px;border-radius:8px;overflow:hidden;background:var(--bg-subtle);border:1px solid var(--border-default)}.post-editor__cover-row-thumb{width:100%;height:100%;object-fit:cover;display:block}.post-editor__cover-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.post-editor__cover-row-title{font-size:14px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-editor__cover-row-meta{font-size:12px;color:var(--text-secondary)}.post-editor__cover-row-check{flex-shrink:0;color:var(--accent);font-size:14px}.post-editor__cover-row-spacer{flex-shrink:0;width:14px}.post-editor__cover-list-hint{margin:0;font-size:12px;color:var(--text-secondary);text-align:center}@media (max-width: 992px){.page-container--wide{max-width:100%}.post-editor__meta-grid{grid-template-columns:1fr;gap:0}}.welcome-post-page{max-width:var(--layout-max-width, 1200px);margin:0 auto;padding-bottom:32px}.welcome-post-shell{max-width:920px;margin:0 auto}.welcome-post-article{width:100%}.welcome-post-hero{margin-bottom:22px}.welcome-post-heading{display:flex;flex-direction:column;gap:10px}.welcome-post-heading .post-detail-title{margin-bottom:0}.welcome-post-heading .post-detail-title:after{margin-top:12px}.welcome-post-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}@media (max-width: 640px){.welcome-post-footer{flex-direction:column;align-items:flex-start}}.about-page{--prism-blue: #4a9eff;--prism-purple: #8b5cf6;--prism-pink: #ec4899;--prism-cyan: #06b6d4;--prism-green: #10b981;--about-font-mono: "Fira Code", "JetBrains Mono", "Consolas", monospace;--about-max-width: 1100px;background:var(--bg-primary);color:var(--text-primary);line-height:1.8;overflow-x:hidden;min-height:100vh}.about-splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);animation:aboutSplashFade .6s ease 2s forwards;overflow:hidden}.about-splash:before{content:"";position:absolute;width:200%;height:200%;top:-50%;left:-50%;background:conic-gradient(from 180deg,transparent 0deg,rgba(100,160,255,.06) 60deg,rgba(139,92,246,.05) 120deg,rgba(6,182,212,.07) 180deg,rgba(236,72,153,.05) 240deg,rgba(16,185,129,.04) 300deg,transparent 360deg);animation:aboutPrismRotate 5s linear infinite}.about-splash__inner{text-align:center;position:relative;z-index:1;animation:aboutSplashScaleIn 1s cubic-bezier(.34,1.56,.64,1) forwards}.about-splash__logo{font-size:2rem;font-weight:700;letter-spacing:.12em;opacity:0;background:linear-gradient(135deg,var(--prism-blue),var(--prism-purple),var(--prism-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:aboutSplashFadeIn .7s ease-out .2s forwards;filter:drop-shadow(0 6px 20px rgba(74,158,255,.15))}.about-splash__sub{margin-top:.5rem;color:var(--text-secondary);font-family:var(--about-font-mono);font-size:.85rem;opacity:0;animation:aboutSplashFadeIn .5s ease-out .6s forwards}@keyframes aboutSplashFadeIn{to{opacity:1}}@keyframes aboutSplashScaleIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes aboutSplashFade{to{opacity:0;pointer-events:none}}@keyframes aboutPrismRotate{to{transform:rotate(360deg)}}.about-theme-btn{position:fixed;top:1.5rem;left:1.5rem;z-index:100;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;border:1px solid var(--divider);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:color .3s,border-color .3s,background .3s,box-shadow .3s,transform .2s;overflow:hidden}.about-theme-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-bg);box-shadow:0 0 20px #8b5cf626;transform:scale(1.05)}.about-theme-btn:active{transform:scale(.95)}.about-theme-btn__icon{position:absolute;display:flex;align-items:center;justify-content:center;transition:opacity .35s ease,transform .35s ease}.about-theme-btn__icon--sun{opacity:0;transform:rotate(-90deg) scale(.5)}.about-theme-btn__icon--moon,.about-theme-btn--dark .about-theme-btn__icon--sun{opacity:1;transform:rotate(0) scale(1)}.about-theme-btn--dark .about-theme-btn__icon--moon{opacity:0;transform:rotate(90deg) scale(.5)}.about-theme-btn--light .about-theme-btn__icon--sun{opacity:0;transform:rotate(-90deg) scale(.5)}.about-theme-btn--light .about-theme-btn__icon--moon{opacity:1;transform:rotate(0) scale(1)}.about-traverse-btn{position:fixed;top:1.5rem;right:1.5rem;z-index:100;display:flex;align-items:center;justify-content:center;height:42px;padding:0 20px;border-radius:12px;border:1px solid var(--divider);background:var(--bg-card);text-decoration:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color .3s,box-shadow .3s,transform .2s}.about-traverse-btn:hover{border-color:var(--accent);box-shadow:0 0 20px #8b5cf626;transform:scale(1.05)}.about-traverse-btn:active{transform:scale(.95)}.about-traverse-btn__text{font-size:.85rem;font-weight:600;letter-spacing:.1em;background:linear-gradient(135deg,var(--prism-blue),var(--prism-purple),var(--prism-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-section{padding:6rem 2rem;max-width:var(--about-max-width);margin:0 auto}.about-label{display:inline-block;font-family:var(--about-font-mono);font-size:.8rem;color:var(--prism-purple);letter-spacing:.1em;margin-bottom:1rem;padding:.3rem .8rem;border:1px solid var(--prism-purple);border-radius:4px;opacity:.8}.about-section-title{font-size:2rem;font-weight:400;margin-bottom:2rem;line-height:1.4;color:var(--text-primary)}.about-text{font-size:1.05rem;color:var(--text-secondary);line-height:2;max-width:720px}.about-text+.about-text{margin-top:1.5rem}.about-hero{position:relative;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}.about-hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.about-light-beam{position:absolute;width:2px;height:40vh;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.6),transparent);left:50%;top:15%;transform:translate(-50%);animation:aboutBeam 4s ease-in-out infinite}.about-prism-geometry{position:absolute;left:50%;top:50%;width:120px;height:120px;border:2px solid rgba(139,92,246,.4);border-radius:12px;transform:translate(-50%,-50%) rotate(45deg);animation:aboutPrismRotate 8s linear infinite}.about-prism-geometry:before{content:"";position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;border:1px solid rgba(74,158,255,.2);border-radius:16px;animation:aboutPrismRotate 12s linear infinite reverse}.about-spectrum{position:absolute;left:50%;top:60%;transform:translate(-50%);width:300px;height:4px;border-radius:2px;background:linear-gradient(90deg,red,#ff7f00,#ff0,#0f0,#00f,indigo,#9400d3);filter:blur(2px);opacity:.6;animation:aboutSpectrumGlow 3s ease-in-out infinite}@keyframes aboutBeam{0%,to{opacity:.3}50%{opacity:1}}@keyframes aboutPrismRotate{to{transform:translate(-50%,-50%) rotate(405deg)}}@keyframes aboutSpectrumGlow{0%,to{filter:blur(2px);opacity:.4}50%{filter:blur(6px);opacity:.8}}.about-hero__content{position:relative;z-index:1;padding:2rem}.about-hero__title{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:300;letter-spacing:.15em;line-height:1.2;background:linear-gradient(135deg,var(--prism-blue),var(--prism-purple),var(--prism-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-hero__subtitle{margin-top:1.5rem;font-size:1.1rem;color:var(--text-secondary);font-family:var(--about-font-mono);letter-spacing:.05em}@keyframes aboutScrollPulse{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(8px)}}.about-next-btn{display:block;position:relative;left:50%;transform:translate(-50%);width:max-content;margin-top:3rem;padding:24px 32px;background:none;border:none;font-size:.95rem;cursor:pointer;transition:opacity .2s;animation:aboutScrollPulse 2s ease-in-out infinite}.about-next-btn span{background:linear-gradient(135deg,var(--prism-blue),var(--prism-purple),var(--prism-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-next-btn:hover{opacity:.8}.about-hero .about-next-btn{position:absolute;bottom:2rem;margin-top:0}.about-origin{position:relative}.about-origin:before{content:"";position:absolute;left:-2rem;top:0;width:3px;height:100%;background:linear-gradient(to bottom,var(--prism-blue),var(--prism-purple),var(--prism-pink),transparent);border-radius:2px}.about-origin__text{padding-left:1.5rem}.about-grid{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start}.about-profile-card{background:var(--bg-secondary);border:1px solid var(--divider);border-radius:12px;padding:1.5rem;font-family:var(--about-font-mono);font-size:.85rem;line-height:1.6}.about-profile-card__header{display:flex;align-items:center;gap:.5rem;padding-bottom:.8rem;border-bottom:1px solid var(--divider);margin-bottom:.8rem}.about-profile-card__dots{display:flex;gap:6px}.about-profile-card__dot{width:10px;height:10px;border-radius:50%}.about-profile-card__dot:nth-child(1){background:#ff5f56}.about-profile-card__dot:nth-child(2){background:#ffbd2e}.about-profile-card__dot:nth-child(3){background:#27c93f}.about-profile-card__filename{color:var(--text-secondary);margin-left:auto}.about-profile-card__line{display:block}.about-profile-card__key{color:var(--prism-blue)}.about-profile-card__string{color:var(--prism-green)}.about-profile-card__comment{color:var(--text-secondary);opacity:.5}.about-content-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}.about-content-card{background:var(--bg-card);border:1px solid var(--divider);border-radius:12px;padding:2rem;transition:transform .3s,border-color .3s;position:relative;overflow:hidden}.about-content-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.about-content-card:nth-child(1):before{background:var(--prism-blue)}.about-content-card:nth-child(2):before{background:var(--prism-purple)}.about-content-card:nth-child(3):before{background:var(--prism-pink)}.about-content-card:nth-child(4):before{background:var(--prism-cyan)}.about-content-card:hover{transform:translateY(-4px);border-color:var(--prism-purple)}.about-content-card h3{font-size:1.2rem;font-weight:500;margin-bottom:.8rem;color:var(--text-primary)}.about-content-card p{color:var(--text-secondary);font-size:.95rem}.about-terminal{background:var(--bg-secondary);border:1px solid var(--divider);border-radius:12px;padding:2rem;font-family:var(--about-font-mono);margin-top:2rem}.about-terminal__header{display:flex;gap:6px;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--divider)}.about-terminal__dot{width:12px;height:12px;border-radius:50%}.about-terminal__dot--red{background:#ff5f56}.about-terminal__dot--yellow{background:#ffbd2e}.about-terminal__dot--green{background:#27c93f}.about-terminal__body{font-size:.95rem;line-height:2}.about-terminal__prompt{color:var(--prism-green)}.about-terminal__quote{color:var(--text-secondary)}.about-terminal__cursor{display:inline-block;width:8px;height:1.2em;background:var(--prism-green);animation:aboutBlink 1s step-end infinite;vertical-align:text-bottom}@keyframes aboutBlink{50%{opacity:0}}.about-timeline{position:relative;padding-left:2rem;margin-top:2rem}.about-timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--prism-cyan),var(--prism-blue),var(--prism-purple),transparent)}.about-timeline-item{position:relative;padding-left:2rem;padding-bottom:3rem}.about-timeline-item:last-child{padding-bottom:0}.about-timeline-item:before{content:"";position:absolute;left:-2.35rem;top:.4rem;width:12px;height:12px;border-radius:50%;background:var(--prism-purple);border:2px solid var(--bg-primary);box-shadow:0 0 8px var(--prism-purple)}.about-timeline-item:nth-child(2):before{background:var(--prism-blue);box-shadow:0 0 8px var(--prism-blue)}.about-timeline-item:nth-child(3):before{background:var(--prism-pink);box-shadow:0 0 8px var(--prism-pink)}.about-timeline-item:nth-child(4):before{background:var(--prism-cyan);box-shadow:0 0 8px var(--prism-cyan)}.about-timeline__date{font-family:var(--about-font-mono);font-size:.85rem;color:var(--prism-purple);margin-bottom:.5rem}.about-timeline__title{font-size:1.2rem;font-weight:500;margin-bottom:.5rem;color:var(--text-primary)}.about-timeline__desc{color:var(--text-secondary);font-size:.95rem}.about-contact{text-align:center;padding:6rem 2rem}.about-contact__inner{max-width:600px;margin:0 auto}.about-contact h2{font-size:2rem;font-weight:300;margin-bottom:1rem;color:var(--text-primary)}.about-contact__title{font-size:clamp(2rem,5vw,3.5rem);font-weight:700;letter-spacing:.12em;background:linear-gradient(135deg,var(--prism-blue),var(--prism-purple),var(--prism-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-contact p{color:var(--text-secondary);margin-bottom:2rem}.about-contact__btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 3rem;border:1px solid var(--divider);border-radius:14px;background:var(--bg-card);text-decoration:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color .3s,box-shadow .3s,transform .2s}.about-contact__btn span{font-size:1.1rem;font-weight:600;letter-spacing:.12em;background:linear-gradient(135deg,var(--prism-blue),var(--prism-purple),var(--prism-pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-contact__btn:hover{border-color:var(--accent);box-shadow:0 0 24px #8b5cf633;transform:scale(1.05)}.about-contact__btn:active{transform:scale(.95)}@media (max-width: 768px){.about-section{padding:4rem 1.5rem}.about-grid,.about-content-grid{grid-template-columns:1fr}.about-hero__title{letter-spacing:.08em}.about-origin:before{left:-1rem}}.links-hub{max-width:1100px;margin:0 auto;padding-bottom:48px}.links-hub-hero{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.08)}.links-hub-title{margin:0 0 8px;font-size:1.75rem;font-weight:700;letter-spacing:.02em;color:var(--text-primary)}.links-hub-sub{margin:0 0 20px;font-size:14px;color:var(--text-secondary);line-height:1.6}.links-hub-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.links-hub-search{flex:1;min-width:220px;max-width:420px;padding:10px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-primary)}.links-hub-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #00d4ff33}.links-hub-back{color:var(--accent);font-size:14px;text-decoration:none;white-space:nowrap}.links-hub-back:hover{text-decoration:underline}.links-hub-empty{text-align:center;color:var(--text-secondary);padding:48px 16px}.links-hub-sections{display:flex;flex-direction:column;gap:36px}.links-hub-section-title{margin:0 0 16px;font-size:1.05rem;font-weight:600;color:var(--accent);padding-left:12px;border-left:3px solid var(--accent);line-height:1.3}.links-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}@media (min-width: 768px){.links-hub-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}.links-hub-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;border-radius:12px;text-decoration:none;color:var(--text-primary);background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);transition:border-color .2s,box-shadow .2s,background .2s}.links-hub-card:hover{border-color:var(--border-glow);box-shadow:0 0 20px #00d4ff1f;background:var(--bg-card-hover)}.links-hub-card-icon{font-size:1.25rem;line-height:1}.links-hub-card-name{font-size:14px;font-weight:600;line-height:1.35}.links-hub-card-url{font-size:11px;color:var(--text-secondary);word-break:break-all;line-height:1.3}[data-theme=dark] .rag-root{--rag-bg-primary: #0a0a0b;--rag-bg-secondary: #111113;--rag-bg-tertiary: #1a1a1f;--rag-border-subtle: rgba(255, 255, 255, .06);--rag-border-default: rgba(255, 255, 255, .1);--rag-border-strong: rgba(255, 255, 255, .15);--rag-text-primary: #fafafa;--rag-text-secondary: #a1a1aa;--rag-text-muted: #71717a;--rag-accent: #8b5cf6;--rag-accent-2: #6366f1;--rag-accent-3: #06b6d4;--rag-gradient: linear-gradient(135deg, var(--rag-accent) 0%, var(--rag-accent-2) 50%, var(--rag-accent-3) 100%);--rag-radius-sm: 6px;--rag-radius-md: 10px;--rag-radius-lg: 14px}[data-theme=light] .rag-root{--rag-bg-primary: #f8f9fc;--rag-bg-secondary: #ffffff;--rag-bg-tertiary: #f1f3f7;--rag-border-subtle: rgba(0, 0, 0, .06);--rag-border-default: rgba(0, 0, 0, .1);--rag-border-strong: rgba(0, 0, 0, .15);--rag-text-primary: #1a1a2e;--rag-text-secondary: #64748b;--rag-text-muted: #94a3b8;--rag-accent: #8b5cf6;--rag-accent-2: #6366f1;--rag-accent-3: #06b6d4;--rag-gradient: linear-gradient(135deg, var(--rag-accent) 0%, var(--rag-accent-2) 50%, var(--rag-accent-3) 100%);--rag-radius-sm: 6px;--rag-radius-md: 10px;--rag-radius-lg: 14px}.rag-root{position:fixed;top:56px;left:0;right:0;bottom:0;display:flex;overflow:hidden;background:var(--rag-bg-primary)}@media (min-width: 768px){.rag-root{top:60px}}.rag-sidebar{width:260px;min-width:260px;background:var(--rag-bg-secondary);border-right:1px solid var(--rag-border-subtle);display:flex;flex-direction:column}.rag-sidebar-head{padding:16px;border-bottom:1px solid var(--rag-border-subtle)}.rag-sidebar-brand{display:flex;align-items:center;gap:8px;margin-bottom:12px}.rag-sidebar-logo{width:28px;height:28px;border-radius:var(--rag-radius-sm);background:var(--rag-gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px}.rag-sidebar-name{font-size:14px;font-weight:600;color:var(--rag-text-primary)}.rag-sidebar-new-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border-radius:var(--rag-radius-md);border:1px solid var(--rag-border-default);background:transparent;color:var(--rag-text-primary);font-size:13px;cursor:pointer;transition:background .15s,border-color .15s}.rag-sidebar-new-btn:hover{background:var(--rag-bg-tertiary);border-color:var(--rag-border-strong)}.rag-sidebar-search{padding:8px 12px;border-bottom:1px solid var(--rag-border-subtle)}.rag-sidebar-search .ant-input-affix-wrapper{background:var(--rag-bg-tertiary)!important;border:1px solid var(--rag-border-subtle)!important;border-radius:var(--rag-radius-md)!important;font-size:13px;padding:4px 10px}.rag-sidebar-search .ant-input{background:transparent!important;color:var(--rag-text-primary)!important}.rag-sidebar-search .ant-input::placeholder{color:var(--rag-text-muted)}.rag-conv-list{flex:1;overflow-y:auto;padding:8px}.rag-conv-item{display:flex;align-items:flex-start;justify-content:space-between;padding:10px;border-radius:var(--rag-radius-md);border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s;margin-bottom:2px}.rag-conv-item:hover{background:var(--rag-bg-tertiary)}.rag-conv-item--active{background:var(--rag-bg-tertiary);border-color:var(--rag-border-default)}.rag-conv-item__body{flex:1;min-width:0}.rag-conv-item__title{display:flex;align-items:center;gap:6px;margin-bottom:4px}.rag-conv-item__title-text{font-size:13px;font-weight:500;color:var(--rag-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rag-conv-item__last{font-size:12px;color:var(--rag-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rag-conv-item__meta{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:11px;color:var(--rag-text-muted)}.rag-conv-item__delete{flex-shrink:0;color:var(--rag-text-muted);opacity:0;transition:opacity .15s;padding:2px;margin-left:6px}.rag-conv-item:hover .rag-conv-item__delete{opacity:1}.rag-conv-item__delete:hover{color:#ef4444}.rag-chat{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--rag-bg-primary)}.rag-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--rag-bg-secondary);border-bottom:1px solid var(--rag-border-subtle)}.rag-chat-header__left{display:flex;align-items:center;gap:12px}.rag-chat-header__title{font-size:14px;font-weight:600;color:var(--rag-text-primary)}.rag-chat-header__sub{font-size:12px;color:var(--rag-text-muted)}.rag-messages{flex:1;overflow-y:auto;padding:24px 20px}.rag-messages-inner{max-width:800px;margin:0 auto}.rag-msg{display:flex;margin-bottom:20px;animation:ragFadeIn .3s ease-out}.rag-msg--user{justify-content:flex-end}.rag-msg-avatar{flex-shrink:0;width:32px;height:32px;border-radius:var(--rag-radius-sm);display:flex;align-items:center;justify-content:center;margin-top:2px}.rag-msg--assistant .rag-msg-avatar{background:var(--rag-gradient);color:#fff;margin-right:12px}.rag-msg--user .rag-msg-avatar{background:var(--rag-bg-tertiary);border:1px solid var(--rag-border-subtle);color:var(--rag-text-secondary);margin-left:12px;font-size:13px;order:2}.rag-msg-bubble{max-width:75%;padding:14px 18px;border-radius:var(--rag-radius-lg);font-size:14px;line-height:1.6}.rag-msg--assistant .rag-msg-bubble{background:var(--rag-bg-secondary);border:1px solid var(--rag-border-subtle);border-bottom-left-radius:4px}.rag-msg--user .rag-msg-bubble{background:var(--rag-accent);color:#fff;border-bottom-right-radius:4px}.rag-msg-role{font-size:12px;font-weight:600;color:var(--rag-accent);margin-bottom:6px}.rag-msg-text{color:var(--rag-text-primary);white-space:pre-wrap;word-break:break-word}.rag-msg--user .rag-msg-text{color:#fff}.rag-msg-text strong{font-weight:600}.rag-sources{margin-top:12px;padding-top:12px;border-top:1px solid var(--rag-border-subtle)}.rag-sources-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rag-sources-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--rag-text-secondary);font-weight:500}.rag-sources-toggle{font-size:12px;color:var(--rag-accent);cursor:pointer;background:none;border:none;padding:0}.rag-sources-toggle:hover{opacity:.8}.rag-sources-tags{display:flex;flex-wrap:wrap;gap:8px}.rag-source-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--rag-radius-sm);background:var(--rag-bg-tertiary);border:1px solid var(--rag-border-subtle);color:var(--rag-text-secondary);font-size:12px;cursor:pointer;transition:border-color .15s}.rag-source-tag:hover{border-color:var(--rag-accent)}.rag-source-tag__score{color:var(--rag-text-muted)}.rag-msg-actions{display:flex;gap:16px;margin-top:10px;padding-top:8px;border-top:1px solid var(--rag-border-subtle)}.rag-msg-action{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--rag-text-muted);cursor:pointer;background:none;border:none;padding:2px 0;transition:color .15s}.rag-msg-action:hover{color:var(--rag-text-secondary)}.rag-msg-time{font-size:11px;color:var(--rag-text-muted);margin-top:4px}.rag-msg--user .rag-msg-time{text-align:right;margin-right:4px}.rag-msg--assistant .rag-msg-time{margin-left:4px}.rag-typing{display:flex;align-items:center;gap:6px;margin-bottom:20px}.rag-typing-avatar{width:32px;height:32px;border-radius:var(--rag-radius-sm);background:var(--rag-gradient);display:flex;align-items:center;justify-content:center;color:#fff;margin-right:12px;flex-shrink:0}.rag-typing-bubble{padding:12px 18px;background:var(--rag-bg-secondary);border:1px solid var(--rag-border-subtle);border-radius:var(--rag-radius-lg);border-bottom-left-radius:4px;display:flex;align-items:center;gap:8px}.rag-typing-dots{display:flex;gap:4px}.rag-typing-dot{width:6px;height:6px;border-radius:50%;background:var(--rag-accent);animation:ragBounce 1.4s ease-in-out infinite}.rag-typing-dot:nth-child(2){animation-delay:.2s}.rag-typing-dot:nth-child(3){animation-delay:.4s;background:var(--rag-accent-3)}.rag-typing-text{font-size:13px;color:var(--rag-text-secondary)}.rag-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;padding:40px;text-align:center}.rag-empty-logo{width:56px;height:56px;border-radius:16px;background:var(--rag-gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;margin-bottom:8px}.rag-empty-title{font-size:18px;font-weight:600;color:var(--rag-text-primary)}.rag-empty-desc{font-size:14px;color:var(--rag-text-muted)}.rag-empty-suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:8px}.rag-empty-suggestion{padding:8px 16px;border-radius:999px;border:1px solid var(--rag-border-default);background:transparent;color:var(--rag-text-secondary);font-size:13px;cursor:pointer;transition:all .2s}.rag-empty-suggestion:hover{border-color:var(--rag-accent);color:var(--rag-accent);background:#8b5cf614}.rag-input-area{padding:16px 20px;background:var(--rag-bg-secondary);border-top:1px solid var(--rag-border-subtle)}.rag-input-inner{max-width:800px;margin:0 auto}.rag-input-row{display:flex;gap:8px;align-items:flex-end}.rag-input-row .ant-input{resize:none;background:var(--rag-bg-tertiary)!important;border:1px solid var(--rag-border-subtle)!important;border-radius:var(--rag-radius-md)!important;color:var(--rag-text-primary)!important;font-size:14px;padding:10px 14px}.rag-input-row .ant-input::placeholder{color:var(--rag-text-muted)}.rag-input-row .ant-input:focus{border-color:var(--rag-accent)!important;box-shadow:0 0 0 2px #8b5cf626!important}.rag-send-btn{width:40px;height:40px;border-radius:var(--rag-radius-md)!important;display:flex!important;align-items:center;justify-content:center;transition:all .2s!important}.rag-send-btn--active{background:var(--rag-accent)!important;border-color:var(--rag-accent)!important;color:#fff!important}.rag-send-btn--idle{background:transparent!important;border-color:var(--rag-border-subtle)!important;color:var(--rag-text-muted)!important}.rag-input-hints{display:flex;justify-content:space-between;margin-top:8px;font-size:11px;color:var(--rag-text-muted)}.rag-source-panel{width:360px;min-width:360px;background:var(--rag-bg-secondary);border-left:1px solid var(--rag-border-subtle);display:flex;flex-direction:column}.rag-source-panel-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--rag-border-subtle)}.rag-source-panel-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--rag-text-primary)}.rag-source-panel-body{flex:1;overflow-y:auto;padding:16px}.rag-source-card{padding:14px;border-radius:var(--rag-radius-md);background:var(--rag-bg-tertiary);border:1px solid var(--rag-border-subtle);margin-bottom:14px}.rag-source-card__title{display:flex;align-items:center;gap:8px;margin-bottom:10px}.rag-source-card__title-text{font-size:13px;font-weight:500;color:var(--rag-text-primary)}.rag-source-card__relevance{display:flex;align-items:center;gap:8px}.rag-source-card__bar{flex:1;height:4px;background:var(--rag-bg-primary);border-radius:2px;overflow:hidden}.rag-source-card__bar-fill{height:100%;background:var(--rag-accent);border-radius:2px;transition:width .4s ease}.rag-source-card__score{font-size:12px;font-weight:600;color:var(--rag-accent)}.rag-source-card__content{padding:12px;background:var(--rag-bg-primary);border-radius:var(--rag-radius-sm);font-size:13px;line-height:1.6;color:var(--rag-text-secondary)}.rag-source-card__link{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:12px;padding:8px;border-radius:var(--rag-radius-md);border:1px solid var(--rag-border-default);background:transparent;color:var(--rag-text-primary);font-size:13px;cursor:pointer;transition:background .15s}.rag-source-card__link:hover{background:var(--rag-bg-primary)}@keyframes ragFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes ragBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.rag-cursor{display:inline-block;width:2px;height:1em;background:var(--rag-accent);margin-left:2px;vertical-align:text-bottom;animation:ragBlink .8s step-end infinite}@keyframes ragBlink{50%{opacity:0}}.rag-messages::-webkit-scrollbar,.rag-conv-list::-webkit-scrollbar,.rag-source-panel-body::-webkit-scrollbar{width:5px}.rag-messages::-webkit-scrollbar-track,.rag-conv-list::-webkit-scrollbar-track,.rag-source-panel-body::-webkit-scrollbar-track{background:transparent}.rag-messages::-webkit-scrollbar-thumb,.rag-conv-list::-webkit-scrollbar-thumb,.rag-source-panel-body::-webkit-scrollbar-thumb{background:var(--rag-border-default);border-radius:3px}@media (max-width: 1200px){.rag-source-panel{width:300px;min-width:300px}}@media (max-width: 960px){.rag-root{flex-direction:column;height:auto;overflow:auto}.rag-sidebar{width:100%;min-width:100%;max-height:200px}.rag-source-panel{width:100%;min-width:100%}.rag-msg-bubble{max-width:90%}}.blog-center-page{max-width:min(var(--layout-max-width, 1440px),100%);margin-inline:auto;padding-bottom:48px;box-sizing:border-box}.blog-center-hero{margin-bottom:1.35rem;padding-bottom:1rem;border-bottom:1px solid var(--divider, var(--border-default))}.blog-center-hero__crumb{margin:0 0 .5rem;font-size:.8rem;color:var(--text-secondary)}.blog-center-hero__crumb a{color:var(--accent);text-decoration:none;font-weight:600}.blog-center-hero__crumb a:hover{text-decoration:underline}.blog-center-hero__sep{margin:0 .35rem;opacity:.65}.blog-center-hero__title{margin:0 0 .45rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:.02em;color:var(--text-primary)}.blog-center-hero__lead{margin:0;font-size:.92rem;line-height:1.65;color:var(--text-secondary);max-width:44rem}.blog-center-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:22px;align-items:start}@media (max-width: 900px){.blog-center-layout{grid-template-columns:1fr}}.blog-center-card{border-radius:16px;border:1px solid var(--border-default);background:var(--bg-card);box-shadow:0 12px 40px -28px #0f172a38}[data-theme=dark] .blog-center-card{box-shadow:0 16px 48px -32px #00000073}.blog-center-card--aside{padding:24px 22px 22px;position:sticky;top:18px}@media (max-width: 900px){.blog-center-card--aside{position:static}}.blog-center-preview{display:flex;justify-content:center;margin-bottom:18px}.blog-center-preview__ring{width:112px;height:112px;padding:3px;border-radius:50%;background:linear-gradient(145deg,var(--accent),rgba(13,148,136,.45));box-shadow:0 14px 36px -20px #0d94888c}.blog-center-preview__img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid var(--bg-card);background:var(--bg-subtle)}.blog-center-preview__placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;border:3px solid var(--bg-card);background:var(--avatar-gradient, linear-gradient(135deg, #e2e8f0, #f8fafc));color:var(--text-secondary);font-size:36px}.blog-center-field{display:flex;flex-direction:column;gap:6px;width:100%;margin:0 0 12px}.blog-center-field__label{font-size:12px;font-weight:600;color:var(--text-secondary)}.blog-center-field__input.ant-input{border-radius:10px}.blog-center-email{margin:0 0 16px;text-align:center;font-size:.88rem;color:var(--text-secondary);word-break:break-all}.blog-center-status{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:18px;padding:8px 12px;border-radius:10px;background:var(--bg-subtle);font-size:12px}.blog-center-status__label{color:var(--text-secondary)}.blog-center-status__value{font-weight:600;color:var(--accent)}.blog-center-save-btn.ant-btn{height:44px;font-weight:600;border-radius:10px}.blog-center-aside-hint{margin:14px 0 0;font-size:12px;line-height:1.65;color:var(--text-secondary);text-align:center}.blog-center-card--main{padding:22px 22px 26px;min-width:0}.blog-center-main-head{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border-default)}.blog-center-main-head__title{margin:0 0 6px;font-size:1.05rem;font-weight:700;color:var(--text-primary)}.blog-center-main-head__desc{margin:0;font-size:13px;line-height:1.55;color:var(--text-secondary)}.blog-center-pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px 10px}.blog-center-pick{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 6px 12px;margin:0;border:1px solid transparent;border-radius:14px;background:transparent;color:inherit;cursor:pointer;text-align:center;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.blog-center-pick:hover{background:var(--bg-subtle);border-color:#0d94882e}.blog-center-pick--active{background:#0d94880f;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.blog-center-pick__circle{position:relative;width:72px;height:72px;flex-shrink:0;border-radius:50%;overflow:hidden;border:2px solid var(--border-default);background:var(--bg-subtle);transition:border-color .15s ease,box-shadow .15s ease}.blog-center-pick--active .blog-center-pick__circle{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg-light, rgba(13, 148, 136, .2))}.blog-center-pick__circle--none{display:flex;align-items:center;justify-content:center;border-style:dashed;background:var(--bg-card)}.blog-center-pick__none-line{display:block;width:28px;height:2px;border-radius:1px;background:var(--text-secondary);opacity:.45}.blog-center-pick__img{width:100%;height:100%;object-fit:cover;display:block}.blog-center-pick__badge{position:absolute;top:4px;right:4px;padding:2px 6px;border-radius:999px;font-size:10px;font-weight:700;color:#fff;background:#0f172ac7;line-height:1.2}.blog-center-pick__label{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;font-size:12px;font-weight:600;line-height:1.35;color:var(--text-primary)}.blog-center-pick__check{position:absolute;top:6px;left:6px;font-size:12px;color:var(--accent);filter:drop-shadow(0 0 4px var(--bg-card))}.blog-center-empty{margin-top:22px;padding:20px 18px;border-radius:12px;border:1px dashed var(--border-default);background:var(--bg-subtle);text-align:center}.blog-center-empty__title{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--text-primary)}.blog-center-empty__text{margin:0 0 12px;font-size:13px;line-height:1.55;color:var(--text-secondary)}.blog-center-empty__link{display:inline-flex;align-items:center;font-size:13px;font-weight:600;color:var(--accent);text-decoration:none}.blog-center-empty__link:hover{text-decoration:underline}.blog-center-empty__muted{margin:0;font-size:12px;color:var(--text-secondary)}.blog-center-password{margin-top:20px;padding-top:20px;border-top:1px solid var(--divider)}.blog-center-password__title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.admin-page-title{margin-bottom:24px;font-size:20px;font-weight:600;color:var(--text-primary)}.admin-dashboard-card{cursor:pointer;transition:box-shadow .2s;border-top:3px solid;background:var(--bg-card)}.admin-dashboard-card:hover{box-shadow:0 4px 12px #0000001a}[data-theme=dark] .admin-dashboard-card:hover{box-shadow:0 4px 16px #0006}.admin-dashboard-card--blue{border-top-color:#3b82f6}.admin-dashboard-card--green{border-top-color:#22c55e}.admin-dashboard-card--amber{border-top-color:#f59e0b}.admin-dashboard-card--red{border-top-color:#ef4444}.admin-dashboard-card--blue .admin-dashboard-card__value{color:#3b82f6}.admin-dashboard-card--green .admin-dashboard-card__value{color:#22c55e}.admin-dashboard-card--amber .admin-dashboard-card__value{color:#f59e0b}.admin-dashboard-card--red .admin-dashboard-card__value{color:#ef4444}[data-theme=dark] .admin-dashboard-card--blue .admin-dashboard-card__value{color:#60a5fa}[data-theme=dark] .admin-dashboard-card--green .admin-dashboard-card__value{color:#4ade80}[data-theme=dark] .admin-dashboard-card--amber .admin-dashboard-card__value{color:#fbbf24}[data-theme=dark] .admin-dashboard-card--red .admin-dashboard-card__value{color:#f87171}.admin-dashboard-card__value{font-size:28px;font-weight:700;line-height:1.2}.admin-dashboard-card__label{margin-top:4px;color:var(--text-secondary);font-size:13px}.admin-section-title{margin-top:32px;margin-bottom:16px;font-size:16px;font-weight:600;color:var(--text-primary)}.admin-recent-list{list-style:none;padding:0;margin:0}.admin-recent-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--divider)}.admin-recent-link{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-recent-list li:last-child{border-bottom:none}.admin-recent-date{color:var(--text-secondary);font-size:13px;flex-shrink:0}.admin-post-manage{--pm-primary: var(--accent);--pm-primary-hover: var(--accent-hover);--pm-border: var(--divider);--pm-text: var(--text-primary);--pm-muted: var(--text-secondary);--pm-bg-head: rgba(0, 0, 0, .02);--pm-bg-row-hover: var(--bg-hover);--pm-radius: 10px;width:100%;max-width:100%}.post-manage__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.post-manage__page-title{margin:0;font-size:1.125rem;font-weight:700;color:var(--pm-text);letter-spacing:.01em}.post-manage__btn-new.ant-btn-primary{height:36px;padding:0 16px;font-size:13px;font-weight:600;border-radius:8px;background:var(--pm-primary);border-color:var(--pm-primary);box-shadow:none;display:inline-flex;align-items:center;gap:6px}.post-manage__btn-new.ant-btn-primary:hover{background:var(--pm-primary-hover);border-color:var(--pm-primary-hover)}.post-manage__tabs{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--pm-border);margin-bottom:16px}.post-manage__tab{position:relative;padding:8px 0;margin-right:24px;font-size:14px;color:var(--pm-muted);background:none;border:none;cursor:pointer;transition:color .2s;white-space:nowrap}.post-manage__tab:hover{color:var(--pm-text)}.post-manage__tab--active{color:var(--pm-primary);font-weight:600}.post-manage__tab--active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--pm-primary);border-radius:2px 2px 0 0}.post-manage__filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.post-manage__search{flex:1 1 200px;min-width:0;max-width:320px;border-radius:8px!important}.post-manage__search-icon{color:var(--pm-muted)!important}.post-manage__select-cat{min-width:140px;max-width:180px;flex:0 1 160px}.post-manage__select-cat .ant-select-selector{border-radius:8px!important}.post-manage__filter-btn{border-radius:8px;font-weight:500;color:var(--pm-text)!important;border-color:var(--pm-border)!important;background:var(--bg-card)!important}.post-manage__filter-btn:hover{color:var(--pm-primary)!important;border-color:var(--pm-primary)!important}.post-manage__table-wrap{width:100%;background:var(--bg-card);border:1px solid var(--pm-border);border-radius:var(--pm-radius);overflow:hidden}.post-manage__table-wrap .ant-table-container{border-radius:var(--pm-radius) var(--pm-radius) 0 0}.post-manage__table-wrap .ant-table{border-spacing:0!important;border-collapse:separate!important;margin:0!important}.post-manage__table-wrap .ant-table-container,.post-manage__table-wrap .ant-table-content{border-spacing:0!important}.post-manage__table-wrap .ant-table-thead>tr:first-child>th{border-top:none!important}.post-manage__table .ant-table-tbody>tr.ant-table-expanded-row>td,.post-manage__table-wrap .ant-table-tbody>tr.ant-table-expanded-row>td{padding:0!important;margin:0!important;border:none!important;height:0!important;max-height:0!important;line-height:0!important;font-size:0!important;overflow:hidden!important;visibility:collapse!important}.post-manage__table .ant-table-tbody>tr.ant-table-measure-row,.post-manage__table-wrap .ant-table-tbody>tr.ant-table-measure-row{display:none!important;height:0!important;visibility:hidden!important}.post-manage__table .ant-table-thead{line-height:1}.post-manage__table .ant-table-thead>tr:last-child>th{border-bottom-width:1px!important}.post-manage__table .ant-table-tbody>tr:first-child>td{border-top:none!important}.post-manage__table-wrap .ant-table-container:before,.post-manage__table-wrap .ant-table-container:after,.post-manage__table-wrap .ant-table-content:before,.post-manage__table-wrap .ant-table-content:after{display:none!important}.post-manage__table .ant-table-thead>tr>th.ant-table-selection-column,.post-manage__table .ant-table-tbody>tr>td.ant-table-selection-column{padding:12px 8px 12px 16px!important}.post-manage__table{width:100%!important}.post-manage__table .ant-table{color:var(--pm-text);border-spacing:0!important;border-collapse:separate!important}.post-manage__table .ant-table-thead>tr>th{background:var(--pm-bg-head)!important;color:var(--pm-muted)!important;font-weight:600!important;font-size:13px;border-bottom:1px solid var(--pm-border)!important;padding:12px 16px!important;text-transform:none;border-radius:0!important}.post-manage__table .ant-table-thead>tr:first-child>th:first-child{border-top-left-radius:var(--pm-radius)!important}.post-manage__table .ant-table-thead>tr:first-child>th:last-child{border-top-right-radius:var(--pm-radius)!important}.post-manage__table .ant-table-thead>tr>th,.post-manage__table .ant-table-tbody>tr>td{border-bottom-width:1px!important}.post-manage__table .ant-table-thead>tr>th:before{display:none!important}.post-manage__table .ant-table-tbody>tr:not(.ant-table-measure-row)>td{border-bottom:1px solid var(--pm-border)!important;padding:12px 16px!important;vertical-align:middle;font-size:14px}.post-manage__table .ant-table-tbody>tr.post-manage__row{background:var(--bg-card);transition:background .15s}.post-manage__table .ant-table-tbody>tr.post-manage__row:hover>td{background:var(--pm-bg-row-hover)!important}.post-manage__table .ant-table-tbody>tr.post-manage__row:last-child>td{border-bottom:none!important}.post-manage__table .ant-table-tbody>tr:not(.ant-table-measure-row) .ant-table-selection-column{padding-left:16px!important;width:48px}.post-manage__title-wrap{display:flex;align-items:center;gap:12px;min-width:0}.post-manage__cover,.post-manage__cover-placeholder{width:56px;height:36px;flex:0 0 56px;display:block;border-radius:6px;object-fit:cover}.post-manage__cover-placeholder{background:var(--bg-subtle)}.post-manage__title-text{flex:1;min-width:0;font-weight:500;color:var(--pm-text);line-height:1.4}.post-manage__title-link{color:var(--pm-text)!important;text-decoration:none!important;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-manage__title-link:hover{color:var(--pm-primary)!important}.post-manage__status{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:6px;font-size:12px;font-weight:500;line-height:1.6}.post-manage__status--pub{color:#16a34a;background:#16a34a1a}.post-manage__status--draft{color:#d97706;background:#d977061a}.post-manage__muted{color:var(--pm-muted);font-size:13px}.post-manage__actions{display:inline-flex;align-items:center;gap:0;white-space:nowrap}.post-manage__act{margin:0;padding:4px 8px;font-size:13px;background:none;border:none;cursor:pointer;border-radius:4px;transition:background .15s}.post-manage__act--edit{color:var(--pm-primary)}.post-manage__act--edit:hover{background:var(--accent-bg)}.post-manage__act--del{color:#ef4444}.post-manage__act--del:hover:not(:disabled){background:#ef444414}.post-manage__act--del:disabled{opacity:.4;cursor:not-allowed}.post-manage__table-wrap .post-manage__pagination.ant-pagination{margin:0;padding:10px 16px;width:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;border-top:1px solid var(--pm-border);box-sizing:border-box;background:var(--bg-card)}.post-manage__table-wrap .post-manage__pagination .ant-pagination-total-text{flex:1 1 auto;margin-inline-end:auto;text-align:left;color:var(--pm-muted);font-size:13px}.post-manage__pagination .ant-pagination-item{border-radius:6px}.post-manage__pagination .ant-pagination-item-active{border-color:var(--pm-primary)!important;background:var(--pm-primary)!important}.post-manage__pagination .ant-pagination-item-active a{color:#fff!important}.post-manage__pagination .ant-pagination-item:not(.ant-pagination-item-active):hover{border-color:var(--pm-primary)!important}.post-manage__pagination .ant-pagination-item:not(.ant-pagination-item-active):hover a{color:var(--pm-primary)!important}@media (max-width: 640px){.post-manage__filters{flex-direction:column;align-items:stretch}.post-manage__search{max-width:none}.post-manage__select-cat{max-width:none;flex:1}}[data-theme=dark] .admin-post-manage{--pm-bg-head: rgba(255, 255, 255, .03);--pm-bg-row-hover: var(--bg-hover)}[data-theme=dark] .post-manage__status--pub{color:#4ade80;background:#4ade801f}[data-theme=dark] .post-manage__status--draft{color:#fbbf24;background:#fbbf241f}[data-theme=dark] .post-manage__act--del:hover:not(:disabled){background:#ef44441f}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}[data-theme=dark] .admin-toolbar .ant-btn-default{color:var(--text-primary);border-color:var(--border-default);background:var(--bg-card)}.admin-page-title{margin-bottom:16px;font-size:20px;font-weight:600;color:var(--text-primary)}.user-manage__avatar,.user-manage__avatar-placeholder{width:40px;height:40px;display:block;border-radius:50%}.user-manage__avatar{object-fit:cover}.user-manage__avatar-placeholder{box-sizing:border-box}.user-manage__asset-cell{display:flex;align-items:center;gap:8px;min-width:0}.user-manage__asset-cell-image{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.user-manage__asset-cell-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-manage__asset-option{display:flex;align-items:center;gap:10px}.user-manage__asset-option-image{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.user-manage__asset-option-name{min-width:0;word-break:break-all}.user-manage__asset-preview{margin-top:4px}.user-manage__asset-preview-label{margin-bottom:8px;color:var(--text-secondary);font-size:13px}.user-manage__asset-preview-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border-default);border-radius:12px;background:var(--bg-card-hover)}.user-manage__asset-preview-image{width:56px;height:56px;border-radius:50%;object-fit:cover;flex-shrink:0}.user-manage__asset-preview-text{word-break:break-all;color:var(--text-primary)}.user-manage__asset-preview-empty{padding:12px;border:1px dashed var(--border-default);border-radius:12px;color:var(--text-secondary);background:var(--bg-subtle)}.admin-page-container .ant-table-wrapper{background:var(--bg-card);border-radius:12px;border:1px solid var(--border-default);overflow:hidden}.admin-page-container .ant-table{color:var(--text-primary)}.admin-page-container .ant-table-thead>tr>th{font-weight:600;font-size:.875rem;padding:14px 16px!important}.admin-page-container .ant-table-thead>tr>th:before{display:none!important}.admin-page-container .ant-table-tbody>tr>td{padding:14px 16px!important;border-bottom-color:var(--divider)!important}.admin-page-container .ant-table-tbody>tr:hover>td{background:var(--bg-hover)!important}.admin-page-container .ant-table-tbody>tr:last-child>td{border-bottom:none!important}[data-theme=dark] .admin-page-container .ant-table{color:var(--text-primary)}.media-asset-manage{display:flex;flex-direction:column;gap:16px}.media-asset-manage__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.media-asset-manage__title{margin:0;font-size:1.25rem;font-weight:700}.media-asset-manage__sub{margin:6px 0 0;color:var(--text-secondary)}.media-asset-manage__actions{display:flex;gap:10px}.media-asset-manage__upload-picker{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.media-asset-manage__upload-filename{color:var(--text-secondary);font-size:13px;word-break:break-all}.media-asset-manage__upload-preview{display:flex;flex-direction:column;gap:8px;margin-top:4px}.media-asset-manage__upload-preview-label{color:var(--text-secondary);font-size:13px}.media-asset-manage__upload-preview-image{width:min(100%,280px);max-height:220px;display:block;object-fit:cover;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-subtle)}.media-asset-manage__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.media-asset-manage__search{width:min(320px,100%)}.media-asset-manage__loading,.media-asset-manage__empty{min-height:220px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-default);border-radius:14px}.media-asset-manage__grid{display:flex;flex-direction:column;gap:16px}.media-card{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:stretch;overflow:hidden;background:var(--bg-card);border:1px solid var(--border-default);border-radius:14px;box-shadow:0 14px 30px -26px #0f172a2e}[data-theme=dark] .media-card{box-shadow:none}.media-card__preview-wrap{min-height:148px;background:linear-gradient(135deg,var(--bg-subtle),var(--bg-card-hover));border-right:1px solid var(--border-default)}.media-card__preview{width:100%;height:100%;display:block;object-fit:cover}.media-card__body{padding:14px;min-width:0}.media-card__topline{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.media-card__title{margin:0;font-size:15px;font-weight:600;line-height:1.4;word-break:break-all}.media-card__meta{margin:8px 0 0;color:var(--text-secondary);font-size:12px}.media-card__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}@media (max-width: 720px){.media-card{grid-template-columns:1fr}.media-card__preview-wrap{min-height:180px;border-right:0;border-bottom:1px solid var(--border-default)}.media-asset-manage__actions,.media-card__actions{width:100%}.media-card__actions .ant-btn{flex:1}}
