*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--j13-font-family);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 210 20% 98%;--foreground: 222 47% 11%;--card: 0 0% 100%;--card-foreground: 222 47% 11%;--popover: 0 0% 100%;--popover-foreground: 222 47% 11%;--primary: 152 72% 36%;--primary-foreground: 0 0% 100%;--secondary: 210 20% 96%;--secondary-foreground: 222 47% 11%;--muted: 210 20% 96%;--muted-foreground: 215 16% 47%;--accent: 152 45% 95%;--accent-foreground: 152 72% 28%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 100%;--border: 214 20% 91%;--input: 214 20% 91%;--ring: 152 72% 36%;--radius: .375rem;--color-text-1: hsl(var(--foreground));--color-text-2: hsl(215 16% 35%);--color-text-3: hsl(var(--muted-foreground));--color-text-4: hsl(215 12% 65%);--color-fill-3: hsl(210 20% 94%)}.dark{--background: 240 6% 10%;--foreground: 0 0% 95%;--card: 240 5% 13%;--card-foreground: 0 0% 95%;--popover: 240 5% 13%;--popover-foreground: 0 0% 95%;--primary: 152 58% 46%;--primary-foreground: 0 0% 100%;--secondary: 240 4% 16%;--secondary-foreground: 0 0% 95%;--muted: 240 4% 16%;--muted-foreground: 240 5% 65%;--accent: 152 30% 14%;--accent-foreground: 152 58% 55%;--destructive: 0 63% 45%;--destructive-foreground: 0 0% 95%;--border: 240 4% 18%;--input: 240 4% 18%;--ring: 152 58% 46%;--color-text-1: hsl(0 0% 96%);--color-text-2: hsl(240 5% 82%);--color-text-3: hsl(240 5% 70%);--color-text-4: hsl(240 5% 56%);--color-fill-3: hsl(240 4% 20%);--muted-foreground: 240 5% 70%;--foreground: 0 0% 96%}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.left-2{left:.5rem}.left-\[50\%\]{left:50%}.right-4{right:1rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-50{z-index:50}.z-\[200\]{z-index:200}.float-right{float:right}.float-left{float:left}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.mb-0\.5{margin-bottom:.125rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.\!block{display:block!important}.block{display:block}.\!inline{display:inline!important}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-px{height:1px}.min-h-\[60px\]{min-height:60px}.w-2{width:.5rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[160px\]{width:160px}.w-\[52px\]{width:52px}.w-\[60px\]{width:60px}.w-\[70px\]{width:70px}.w-\[80px\]{width:80px}.w-full{width:100%}.min-w-\[8rem\]{min-width:8rem}.max-w-\[120px\]{max-width:120px}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[260px\]{max-width:260px}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-input{border-color:hsl(var(--input))}.border-transparent{border-color:transparent}.bg-\[var\(--j13-green-bg\)\]{background-color:var(--j13-green-bg)}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-destructive{background-color:hsl(var(--destructive))}.bg-muted{background-color:hsl(var(--muted))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.fill-current{fill:currentColor}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:var(--j13-font-family)}.text-\[0\.8rem\]{font-size:.8rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.italic{font-style:italic}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-\[var\(--j13-green\)\]{color:var(--j13-green)}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.duration-200{animation-duration:.2s}:root{--j13-font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans SC", "WenQuanYi Micro Hei", system-ui, -apple-system, "Segoe UI", sans-serif;--j13-green: #18a058;--j13-green-hover: #138f4c;--j13-green-bg: rgba(24, 160, 88, .08);--j13-green-soft: #edfbf3;--j13-border: #e8edf2;--j13-border-light: #f0f3f7;--j13-sidebar-w: 210px;--j13-aside-w: 280px;--j13-header-h: 56px;--j13-max-w: 1400px;--j13-article-read-w: 820px;--j13-bg-page: #f5f7fa;--j13-bg-workspace: #f8fafc;--j13-bg-surface: #ffffff;--j13-bg-block: #ffffff;--j13-bg-block-muted: #f1f4f8;--j13-bg-block-accent: #f0faf5;--j13-shadow-soft: 0 1px 2px rgba(15, 23, 42, .04);--j13-shadow-card: 0 2px 8px rgba(15, 23, 42, .05);--board-0-color: #18a058;--board-0-bg: rgba(24, 160, 88, .1);--board-1-color: #3498db;--board-1-bg: rgba(52, 152, 219, .1);--board-2-color: #9b59b6;--board-2-bg: rgba(155, 89, 182, .1);--board-3-color: #e67e22;--board-3-bg: rgba(230, 126, 34, .1);--board-4-color: #e74c3c;--board-4-bg: rgba(231, 76, 60, .1);--board-5-color: #1abc9c;--board-5-bg: rgba(26, 188, 156, .1);--board-6-color: #6366f1;--board-6-bg: rgba(99, 102, 241, .1);--board-7-color: #f59e0b;--board-7-bg: rgba(245, 158, 11, .12)}.dark{--j13-green: #23c36b;--j13-green-hover: #1fb35f;--j13-green-bg: rgba(35, 195, 107, .12);--j13-green-soft: rgba(35, 195, 107, .08);--j13-border: #2e2e32;--j13-border-light: #262629;--j13-bg-page: #141416;--j13-bg-workspace: #18181b;--j13-bg-surface: #1f1f23;--j13-bg-block: #232328;--j13-bg-block-muted: #1c1c20;--j13-bg-block-accent: rgba(35, 195, 107, .06);--j13-shadow-soft: 0 1px 2px rgba(0, 0, 0, .2);--j13-shadow-card: 0 2px 8px rgba(0, 0, 0, .28);--board-0-color: #23c36b;--board-0-bg: rgba(35, 195, 107, .14);--board-1-color: #5dade2;--board-1-bg: rgba(93, 173, 226, .14);--board-2-color: #bb86fc;--board-2-bg: rgba(187, 134, 252, .14);--board-3-color: #f0a050;--board-3-bg: rgba(240, 160, 80, .14);--board-4-color: #ff7b72;--board-4-bg: rgba(255, 123, 114, .14);--board-5-color: #3dd6b5;--board-5-bg: rgba(61, 214, 181, .14);--board-6-color: #818cf8;--board-6-bg: rgba(129, 140, 248, .14);--board-7-color: #fbbf24;--board-7-bg: rgba(251, 191, 36, .14)}.dark .app-shell{background:radial-gradient(ellipse 70% 45% at 50% -10%,rgba(35,195,107,.08),transparent 70%),var(--j13-bg-page)}*{box-sizing:border-box}html{scrollbar-gutter:stable;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;font-family:var(--j13-font-family);text-rendering:optimizeLegibility}html,body,#root{height:100%;margin:0}body{font-family:var(--j13-font-family);font-size:14px;line-height:1.5;color:var(--color-text-1);background:var(--j13-bg-page);overflow:hidden}a{color:var(--j13-green);text-decoration:none}a:hover{text-decoration:underline}.app-shell{height:100%;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse 70% 45% at 50% -10%,rgba(24,160,88,.07),transparent 70%),var(--j13-bg-page)}.app-frame{flex:1;min-height:0;height:100%;max-width:var(--j13-max-w);width:100%;margin:0 auto;display:flex;flex-direction:column;overflow:hidden;border-left:1px solid var(--j13-border);border-right:1px solid var(--j13-border);background:var(--j13-bg-surface)}.app-header{height:var(--j13-header-h);flex-shrink:0;z-index:100;background:var(--j13-bg-surface);border-bottom:1px solid var(--j13-border)}.site-footer{flex-shrink:0;border-top:1px solid var(--j13-border);background:var(--j13-bg-surface);z-index:50}.site-footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:10px 20px;font-size:12px;line-height:1.5;color:var(--color-text-3)}.site-footer__meta,.site-footer__nav{display:flex;flex-wrap:wrap;align-items:center;gap:0 2px;min-width:0}.site-footer__copy{color:var(--color-text-2);font-weight:500}.site-footer__slogan{color:var(--color-text-4)}.site-footer__sep{margin:0 6px;color:var(--color-text-4);-webkit-user-select:none;-moz-user-select:none;user-select:none}.site-footer__nav a,.site-footer__friend a{color:var(--color-text-3);text-decoration:none}.site-footer__nav a:hover,.site-footer__friend a:hover{color:var(--j13-green)}.site-footer__icp{font-variant-numeric:tabular-nums}@media (max-width: 768px){.site-footer__inner{flex-direction:column;align-items:flex-start;padding:10px 14px 12px}.page-wrap>.site-footer{flex-shrink:0;margin-top:auto}.post-list-scroll>.site-footer{flex-shrink:0;margin-top:8px}}.admin-brand-sections>.admin-settings-section{margin-top:20px;padding-top:16px;border-top:1px solid hsl(var(--border))}.admin-brand-sections>.admin-settings-section:first-of-type{margin-top:16px}.admin-friend-links-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.admin-friend-links-row{display:grid;grid-template-columns:minmax(100px,160px) 1fr auto;gap:8px;align-items:center}@media (max-width: 720px){.admin-friend-links-row{grid-template-columns:1fr}}.header-inner{height:100%;width:100%;padding:0 20px;display:flex;align-items:center;gap:20px}.header-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;border:none;background:none;padding:4px 0;cursor:pointer;color:inherit;font:inherit}.header-brand:hover .header-logo-text{color:var(--j13-green)}.header-logo-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--j13-green) 0%,#34c471 100%);color:#fff;font-weight:700;font-size:17px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #1a7f4b47;flex-shrink:0;-o-object-fit:cover;object-fit:cover}img.header-logo-mark,img.logo-mark,img.admin-topbar-mark,img.site-brand-logo-img{background:transparent;box-shadow:none;padding:0;color:transparent}.header-logo-text{font-size:15px;font-weight:600;letter-spacing:.02em;transition:color .15s}.header-search-wrap{flex:1;min-width:0;max-width:420px;display:flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:999px;background:var(--j13-bg-block-muted);border:1px solid var(--j13-border-light);transition:border-color .2s,background .2s,box-shadow .2s}.header-search-wrap:focus-within{background:var(--j13-bg-surface);border-color:color-mix(in srgb,var(--j13-green) 30%,transparent);box-shadow:0 0 0 3px var(--j13-green-bg)}.header-search-icon{flex-shrink:0;font-size:15px;color:var(--color-text-3)}.header-search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-size:14px;color:var(--color-text-1);font-family:inherit}.header-search-input::-moz-placeholder{color:var(--color-text-4)}.header-search-input::placeholder{color:var(--color-text-4)}.header-search-input::-webkit-search-cancel-button{display:none}.header-search-clear{flex-shrink:0;width:20px;height:20px;border:none;border-radius:50%;background:var(--color-fill-3);color:var(--color-text-3);font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s,color .15s}.header-search-clear:hover{background:var(--color-fill-4);color:var(--color-text-1)}.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto}.header-compose-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 16px;border:none;border-radius:999px;background:var(--j13-green);color:#fff;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s;box-shadow:0 2px 6px #1a7f4b38}.header-compose-btn:hover{background:var(--j13-green-hover);box-shadow:0 3px 10px #1a7f4b4d}.header-compose-btn:active{transform:scale(.97)}.header-action-group{display:flex;align-items:center;gap:4px;padding:3px;border-radius:999px;background:var(--j13-bg-block-muted);border:1px solid var(--j13-border-light)}.header-icon-btn{width:32px;height:32px;border:none;border-radius:50%;background:transparent;color:var(--color-text-2);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.header-icon-btn:hover{background:var(--color-fill-3);color:var(--color-text-1)}.header-user-btn{width:32px;height:32px;border:none;border-radius:50%;padding:0;cursor:pointer;overflow:hidden;background:var(--j13-green);display:flex;align-items:center;justify-content:center;transition:box-shadow .15s,transform .1s}@media (hover: hover){.header-user-btn:hover{box-shadow:0 0 0 2px var(--j13-green-bg),0 0 0 3px var(--j13-green)}}.header-user-btn:focus-visible{box-shadow:0 0 0 2px var(--j13-green-bg),0 0 0 3px var(--j13-green)}.header-user-btn:focus:not(:focus-visible){outline:none;box-shadow:none}.header-user-avatar{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.header-user-initial{color:#fff;font-size:14px;font-weight:600}.header-login-btn{height:32px;padding:0 14px;border:none;border-radius:999px;background:transparent;color:var(--j13-green);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s}.header-login-btn:hover{background:var(--j13-green-bg)}.header-auth-slot{display:inline-block;width:32px;height:32px;border-radius:50%;flex-shrink:0}.header-auth-slot--loading{background:var(--color-fill-3)}.app-body{flex:1;display:flex;min-height:0;width:100%;overflow:hidden;background:var(--j13-bg-surface)}.sidebar{width:var(--j13-sidebar-w);flex-shrink:0;border-right:1px solid var(--j13-border-light);background:var(--j13-bg-surface);overflow-y:auto;padding:12px 0}.sidebar-section{padding:4px 12px 8px;font-size:11px;font-weight:600;color:var(--color-text-3)}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:0 8px}.sidebar-nav-item{display:flex;align-items:center;gap:8px;width:100%;margin:0;padding:0 12px;height:36px;border:none;border-radius:6px;background:transparent;color:var(--color-text-1);font-size:14px;cursor:pointer;text-align:left;transition:background .15s,color .15s}.sidebar-nav-item:hover{background:var(--j13-bg-block-muted)}.sidebar-nav-item.active{background:var(--j13-green-bg);color:var(--j13-green);font-weight:600}.sidebar-nav-item svg{width:16px;height:16px;flex-shrink:0}.sidebar-nav-item__meta{margin-left:auto;color:var(--color-text-4);font-size:11px;font-variant-numeric:tabular-nums;font-weight:400;opacity:.85;letter-spacing:.02em}.sidebar-nav-item--board .sidebar-board-icon{opacity:.88}.sidebar-nav-item--board.active .sidebar-board-icon{opacity:1}.sidebar-nav-item--board.active.sidebar-nav-item--board-0{background:var(--board-0-bg);color:var(--board-0-color)}.sidebar-nav-item--board.active.sidebar-nav-item--board-1{background:var(--board-1-bg);color:var(--board-1-color)}.sidebar-nav-item--board.active.sidebar-nav-item--board-2{background:var(--board-2-bg);color:var(--board-2-color)}.sidebar-nav-item--board.active.sidebar-nav-item--board-3{background:var(--board-3-bg);color:var(--board-3-color)}.sidebar-nav-item--board.active.sidebar-nav-item--board-4{background:var(--board-4-bg);color:var(--board-4-color)}.sidebar-nav-item--board.active.sidebar-nav-item--board-5{background:var(--board-5-bg);color:var(--board-5-color)}.sidebar-nav-item--board.active.sidebar-nav-item--board-6{background:var(--board-6-bg);color:var(--board-6-color)}.sidebar-nav-item--board.active.sidebar-nav-item--board-7{background:var(--board-7-bg);color:var(--board-7-color)}.sidebar-board-icon--0{color:var(--board-0-color)}.sidebar-board-icon--1{color:var(--board-1-color)}.sidebar-board-icon--2{color:var(--board-2-color)}.sidebar-board-icon--3{color:var(--board-3-color)}.sidebar-board-icon--4{color:var(--board-4-color)}.sidebar-board-icon--5{color:var(--board-5-color)}.sidebar-board-icon--6{color:var(--board-6-color)}.sidebar-board-icon--7{color:var(--board-7-color)}.sidebar-section--boards{margin-top:8px}.sidebar-actions{padding:12px;border-top:1px solid var(--j13-border);margin-top:8px}.widget-card-icon--tags{color:#2a9d8f}.widget-card--tags .widget-card-body--tags{padding:10px 12px 14px;background:radial-gradient(ellipse 90% 70% at 10% 0%,color-mix(in srgb,var(--j13-green) 10%,transparent),transparent 55%),radial-gradient(ellipse 70% 60% at 95% 100%,rgba(42,157,143,.08),transparent 50%),var(--j13-bg-block)}.tag-cloud{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px 8px;min-height:72px}.tag-cloud--skeleton{justify-content:flex-start;gap:8px}.skeleton--tag-cloud{border-radius:8px}.tag-cloud-empty{width:100%;padding:12px 4px;text-align:center;font-size:12px;color:var(--color-text-4)}.tag-cloud-item{--tag-fg: var(--color-text-2);--tag-bg: var(--j13-bg-block-muted);--tag-bd: var(--j13-border-light);display:inline-flex;align-items:baseline;gap:4px;max-width:100%;margin:0;padding:4px 10px;border:1px solid var(--tag-bd);border-radius:8px;background:var(--tag-bg);color:var(--tag-fg);line-height:1.3;letter-spacing:.01em;cursor:pointer;transform-origin:center;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;word-break:break-word}.tag-cloud-item__name{max-width:9em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-cloud-item__count{font-size:.72em;font-weight:600;opacity:.55;font-variant-numeric:tabular-nums}.tag-cloud-item--w0{font-size:11.5px;font-weight:450;opacity:.82}.tag-cloud-item--w1{font-size:12.5px;font-weight:500}.tag-cloud-item--w2{font-size:13.5px;font-weight:560}.tag-cloud-item--w3{font-size:15px;font-weight:650}.tag-cloud-item--w4{font-size:16.5px;font-weight:700;letter-spacing:-.01em;box-shadow:0 1px color-mix(in srgb,var(--tag-fg) 12%,transparent)}.tag-cloud-item--t0{--tag-fg: #1f7a4d;--tag-bg: color-mix(in srgb, #18a058 12%, var(--j13-bg-block));--tag-bd: color-mix(in srgb, #18a058 22%, var(--j13-border-light))}.tag-cloud-item--t1{--tag-fg: #0f766e;--tag-bg: color-mix(in srgb, #2a9d8f 14%, var(--j13-bg-block));--tag-bd: color-mix(in srgb, #2a9d8f 24%, var(--j13-border-light))}.tag-cloud-item--t2{--tag-fg: #b45309;--tag-bg: color-mix(in srgb, #f59e0b 14%, var(--j13-bg-block));--tag-bd: color-mix(in srgb, #f59e0b 26%, var(--j13-border-light))}.tag-cloud-item--t3{--tag-fg: #1d4e89;--tag-bg: color-mix(in srgb, #3b82c4 13%, var(--j13-bg-block));--tag-bd: color-mix(in srgb, #3b82c4 24%, var(--j13-border-light))}.tag-cloud-item--t4{--tag-fg: #9a3412;--tag-bg: color-mix(in srgb, #ea580c 12%, var(--j13-bg-block));--tag-bd: color-mix(in srgb, #ea580c 24%, var(--j13-border-light))}.tag-cloud-item--t5{--tag-fg: #4d7c0f;--tag-bg: color-mix(in srgb, #84cc16 13%, var(--j13-bg-block));--tag-bd: color-mix(in srgb, #84cc16 24%, var(--j13-border-light))}.tag-cloud-item--r1{transform:translateY(1px) rotate(-.6deg)}.tag-cloud-item--r2{transform:translateY(-1px) rotate(.7deg)}.tag-cloud-item--r3{transform:translateY(.5px) rotate(-.4deg)}.tag-cloud-item--r4{transform:translateY(-.5px) rotate(.5deg)}.tag-cloud-item:hover{z-index:1;transform:translateY(-2px) scale(1.04);border-color:color-mix(in srgb,var(--tag-fg) 45%,var(--tag-bd));box-shadow:0 4px 12px color-mix(in srgb,var(--tag-fg) 14%,transparent)}.tag-cloud-item.active{transform:translateY(-1px) scale(1.03);color:#fff;background:var(--tag-fg);border-color:transparent;box-shadow:0 3px 10px color-mix(in srgb,var(--tag-fg) 28%,transparent)}.tag-cloud-item.active .tag-cloud-item__count{opacity:.8;color:#fff}.dark .widget-card--tags .widget-card-body--tags{background:radial-gradient(ellipse 90% 70% at 10% 0%,color-mix(in srgb,var(--j13-green) 16%,transparent),transparent 55%),radial-gradient(ellipse 70% 60% at 95% 100%,rgba(42,157,143,.12),transparent 50%),var(--j13-bg-block)}.dark .tag-cloud-item--t0{--tag-fg: #6ee7a8;--tag-bg: rgba(24, 160, 88, .16);--tag-bd: rgba(24, 160, 88, .32)}.dark .tag-cloud-item--t1{--tag-fg: #5eead4;--tag-bg: rgba(42, 157, 143, .16);--tag-bd: rgba(42, 157, 143, .32)}.dark .tag-cloud-item--t2{--tag-fg: #fbbf24;--tag-bg: rgba(245, 158, 11, .14);--tag-bd: rgba(245, 158, 11, .3)}.dark .tag-cloud-item--t3{--tag-fg: #7dd3fc;--tag-bg: rgba(59, 130, 196, .16);--tag-bd: rgba(59, 130, 196, .32)}.dark .tag-cloud-item--t4{--tag-fg: #fdba74;--tag-bg: rgba(234, 88, 12, .14);--tag-bd: rgba(234, 88, 12, .3)}.dark .tag-cloud-item--t5{--tag-fg: #bef264;--tag-bg: rgba(132, 204, 22, .14);--tag-bd: rgba(132, 204, 22, .3)}.sidebar--outline{display:flex;flex-direction:column;gap:4px}.sidebar-outline-back{margin:0 8px 4px;width:calc(100% - 16px);color:var(--color-text-2)}.article-outline{display:flex;flex-direction:column;min-height:0;flex:1}.article-outline-head{display:flex;align-items:center;gap:5px;margin-top:4px}.article-outline-head svg{opacity:.7}.article-outline--aside .article-outline-head{display:none}.article-outline--aside .article-outline-empty{padding:4px 0 8px}.article-outline--aside .article-outline-nav{padding:0 0 4px}.article-outline-empty{margin:0;padding:8px 16px 16px;font-size:12px;color:var(--color-text-4);line-height:1.5}.article-outline-nav{display:flex;flex-direction:column;gap:1px;padding:0 8px 16px}.widget-card--outline .widget-card-body{padding-top:2px}.widget-author-panel{display:flex;flex-direction:column;gap:10px;padding:10px 14px 12px}.widget-author-body{display:flex;align-items:center;gap:12px;min-height:52px}.widget-author-avatar{width:52px;height:52px;border-radius:50%;overflow:hidden;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;line-height:0;background:var(--j13-green-bg);color:var(--j13-green);font-size:18px;font-weight:700;box-shadow:0 0 0 1px var(--j13-border-light)}.widget-author-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.widget-author-meta{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px;justify-content:center}.widget-author-name-row{display:flex;align-items:center;gap:6px;min-width:0}.widget-author-name{font-size:15px;font-weight:600;letter-spacing:.01em;color:var(--color-text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.25}.widget-author-name:hover{color:var(--j13-green)}.widget-author-badge{flex-shrink:0;font-size:10px;height:18px;padding:0 6px;font-weight:600}.widget-author-signature{margin:0;font-size:12px;line-height:1.35;color:var(--color-text-3);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.widget-author-stats{margin:0;display:flex;align-items:center;flex-wrap:wrap;gap:0;font-size:11px;line-height:1.25;color:var(--color-text-4)}.widget-author-stats-dot{margin:0 5px;opacity:.55}.widget-author-views{display:inline-flex;align-items:center;gap:3px}.widget-author-views svg{opacity:.7}.widget-author-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding-top:10px;border-top:1px solid var(--j13-border-light)}.widget-author-metric{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border-radius:8px;background:var(--j13-bg-block-muted);color:var(--color-text-3);font-size:11px}.widget-author-metric svg{opacity:.75}.widget-author-metric strong{font-size:14px;font-weight:700;color:var(--color-text-1);line-height:1.2}.widget-author-actions{display:flex;gap:8px}.widget-author-action{flex:1}.widget-card-icon--author,.widget-card-icon--outline{color:var(--j13-green)}.widget-outline-body{max-height:min(42vh,360px);overflow-y:auto;overscroll-behavior:contain}.article-outline-item{position:relative;display:block;width:100%;margin:0;padding:7px 10px 7px 12px;border:none;border-radius:6px;background:transparent;color:var(--color-text-2);font-size:13px;line-height:1.4;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .12s,color .12s}.article-outline-item:hover{background:var(--j13-bg-block-muted);color:var(--color-text-1)}.article-outline-item.active{background:var(--j13-green-bg);color:var(--j13-green);font-weight:600}.article-outline-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:14px;background:var(--j13-green);border-radius:1px}.article-outline-item--l2{padding-left:20px;font-size:12.5px}.article-outline-item--l3{padding-left:28px;font-size:12px;color:var(--color-text-3)}.article-outline-item--l4,.article-outline-item--l5,.article-outline-item--l6{padding-left:36px;font-size:12px;color:var(--color-text-3)}.article-outline-item--l3.active,.article-outline-item--l4.active,.article-outline-item--l5.active,.article-outline-item--l6.active{color:var(--j13-green)}.post-detail-content .post-heading-anchor{scroll-margin-top:16px}.post-detail-content .post-heading-anchor-link{margin-left:.4em;font-weight:500;font-size:.82em;line-height:1;color:var(--j13-green);text-decoration:none!important;opacity:0;transition:opacity .2s ease;vertical-align:.05em}.post-detail-content h1:hover .post-heading-anchor-link,.post-detail-content h2:hover .post-heading-anchor-link,.post-detail-content h3:hover .post-heading-anchor-link,.post-detail-content h4:hover .post-heading-anchor-link,.post-detail-content h5:hover .post-heading-anchor-link,.post-detail-content h6:hover .post-heading-anchor-link,.post-detail-content .post-heading-anchor-link:focus-visible{opacity:.75}.post-detail-content .post-heading-anchor-link:hover{opacity:1!important}.post-detail-toc-mobile{margin:0 0 16px;padding:10px 12px;border:1px solid var(--j13-border-light);border-radius:10px;background:var(--j13-bg-block-muted)}.post-detail-toc-mobile>summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--color-text-2);list-style:none}.post-detail-toc-mobile>summary::-webkit-details-marker{display:none}.post-detail-toc-mobile .article-outline-head{display:none}.post-detail-toc-mobile .article-outline-nav{padding:8px 0 0}.post-detail-toc-mobile .article-outline-item{white-space:normal}.main-content{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--j13-bg-surface)}.content-workspace{flex:1;display:flex;min-width:0;min-height:0;overflow:hidden;background:var(--j13-bg-surface)}.aside-panel{width:var(--j13-aside-w);flex-shrink:0;border-left:1px solid var(--j13-border-light);overflow-y:auto;padding:0;display:flex;flex-direction:column;background:var(--j13-bg-surface);min-height:0}.aside-panel-inner{display:flex;flex-direction:column;gap:10px;padding:12px;flex:1;min-height:0}.aside-panel:has(.aside-panel-inner--post-detail){overflow:hidden}.aside-panel-inner--post-detail{height:100%}.aside-panel-inner--post-detail .widget-card--author{flex-shrink:0}.aside-panel-inner--post-detail .widget-card--outline{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.aside-panel-inner--post-detail .widget-card--outline .widget-card-head{flex-shrink:0}.aside-panel-inner--post-detail .widget-outline-body{flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@media (max-width: 1100px){.aside-panel{display:none}}@media (max-width: 1100px) and (min-width: 769px){.content-workspace--aside-hidden .main-content>.page-wrap,.content-workspace--aside-hidden .main-content>.page-wrap--feed{max-width:920px;width:100%;margin-left:auto;margin-right:auto}.content-workspace--aside-hidden .main-content>.post-detail-page{max-width:min(920px,var(--j13-article-read-w) + 80px)}}.aside-drawer-root,.sidebar-drawer-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95}.aside-drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;background:#0f172a59;cursor:pointer}.aside-drawer{position:absolute;top:0;right:0;bottom:0;width:min(360px,92vw);background:var(--j13-bg-surface);border-left:1px solid var(--j13-border);display:flex;flex-direction:column;box-shadow:-8px 0 24px #0f172a1f;animation:aside-drawer-in .2s ease}.sidebar-drawer{position:absolute;top:0;left:0;bottom:0;width:min(300px,86vw);background:var(--j13-bg-surface);border-right:1px solid var(--j13-border);display:flex;flex-direction:column;box-shadow:8px 0 24px #0f172a1f;animation:sidebar-drawer-in .2s ease}.sidebar-drawer-body{display:flex;flex-direction:column}.sidebar-drawer-body .sidebar{display:block;width:100%;border-right:none;flex:1;min-height:0}@keyframes aside-drawer-in{0%{transform:translate(12px);opacity:.6}to{transform:translate(0);opacity:1}}@keyframes sidebar-drawer-in{0%{transform:translate(-12px);opacity:.6}to{transform:translate(0);opacity:1}}.aside-drawer-head{height:var(--j13-header-h);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 16px;border-bottom:1px solid var(--j13-border);font-size:14px;font-weight:600;background:var(--j13-bg-surface)}.aside-drawer-body{flex:1;min-height:0;overflow-y:auto}@media (prefers-reduced-motion: reduce){.aside-drawer,.sidebar-drawer{animation:none}}@media (max-width: 768px){.app-frame{border-left:none;border-right:none}.sidebar{display:none}.header-inner{padding:0 12px;gap:8px}.header-search-wrap{max-width:none}.header-search-wrap--expanded{flex:1;max-width:none}.header-search-cancel{flex-shrink:0;border:none;background:transparent;color:var(--j13-green);font-size:13px;font-family:inherit;padding:0 4px;cursor:pointer}.header-compose-btn{width:34px;padding:0;justify-content:center}.feed-banner-row{flex-direction:row;gap:10px}.sidebar-drawer-extras{margin-top:auto;padding:12px 8px 8px;border-top:1px solid var(--j13-border-light);display:flex;flex-direction:column;gap:4px}.sidebar-drawer-extra-btn{display:flex;align-items:center;gap:10px;width:100%;height:40px;padding:0 12px;border:none;border-radius:8px;background:transparent;color:var(--color-text-1);font-size:14px;font-family:inherit;cursor:pointer}.sidebar-drawer-extra-btn:hover{background:var(--j13-bg-block-muted)}}.page-wrap{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;scrollbar-width:none;-ms-overflow-style:none;padding:12px}.page-wrap--feed{overflow:hidden}.back-to-top-stack{position:fixed;right:max(16px,calc((100vw - min(100vw,var(--j13-max-w)))/2 + 16px));bottom:28px;z-index:90;display:flex;flex-direction:column;gap:10px;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}.back-to-top-stack--visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.back-to-top{position:relative;right:auto;bottom:auto;width:42px;height:42px;padding:0;border:1px solid var(--j13-border);border-radius:50%;background:var(--j13-bg-surface);color:var(--j13-green);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--j13-shadow-card);transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.back-to-top:hover{background:var(--j13-green);color:#fff;border-color:var(--j13-green);box-shadow:0 3px 12px #1a7f4b47}.back-to-top:active{transform:scale(.96)}.ptr-indicator{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;justify-content:center;pointer-events:none;transition:transform .12s ease-out}.ptr-indicator__chip{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--j13-border);background:var(--j13-bg-surface);color:var(--color-text-2);font-size:12px;font-weight:500;box-shadow:var(--j13-shadow-card)}.ptr-indicator--ready .ptr-indicator__chip{color:var(--j13-green);border-color:color-mix(in srgb,var(--j13-green) 35%,var(--j13-border));background:var(--j13-green-bg)}.ptr-indicator__arrow{transition:transform .15s ease}.ptr-indicator__spin{animation:ptr-spin .7s linear infinite}@keyframes ptr-spin{to{transform:rotate(360deg)}}@media (hover: hover) and (pointer: fine){.ptr-indicator{display:none}}@media (max-width: 768px){.back-to-top-stack{right:14px;bottom:20px}.back-to-top{width:40px;height:40px}}@media (prefers-reduced-motion: reduce){.back-to-top-stack{transition:opacity .15s ease,visibility .15s ease;transform:none}.back-to-top-stack--visible,.back-to-top:active{transform:none}}.feed-panel{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid var(--j13-border-light);border-radius:12px;background:var(--j13-bg-block);box-shadow:var(--j13-shadow-card);overflow:hidden}.page-wrap::-webkit-scrollbar{display:none}.virtual-list-wrap,.post-list-scroll{flex:1;overflow:auto;min-height:0;scrollbar-width:none;-ms-overflow-style:none}.virtual-list-wrap::-webkit-scrollbar,.post-list-scroll::-webkit-scrollbar{display:none}.feed-list-footer{display:flex;justify-content:center;align-items:center;padding:12px 16px 16px}.feed-list-footer--end{font-size:12px;color:var(--color-text-3);padding:10px 12px}.feed-list-footer--pagination{border-top:1px solid var(--j13-border-light);margin-top:4px}.feed-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;width:100%;flex-wrap:wrap}.feed-pagination__meta{margin:0;font-size:12px;color:var(--color-text-3);white-space:nowrap;min-width:4.5rem}.feed-pagination__meta strong{font-weight:600;color:var(--color-text-2);font-variant-numeric:tabular-nums}.feed-pagination__pages{display:flex;align-items:center;justify-content:center;gap:2px;flex:1;min-width:0}.feed-pagination__nav,.feed-pagination__page{display:inline-flex;align-items:center;justify-content:center;height:30px;min-width:30px;padding:0 6px;border:none;border-radius:7px;background:transparent;color:var(--color-text-2);font-family:inherit;font-size:13px;font-variant-numeric:tabular-nums;cursor:pointer;transition:background .15s,color .15s}.feed-pagination__nav:hover:not(:disabled),.feed-pagination__page:hover:not(:disabled){background:var(--j13-bg-block-muted);color:var(--color-text-1)}.feed-pagination__page.is-active{background:var(--j13-green-bg);color:var(--j13-green);font-weight:600;cursor:default}.feed-pagination__nav:disabled,.feed-pagination__page:disabled:not(.is-active){opacity:.35;cursor:not-allowed}.feed-pagination__gap{display:inline-flex;align-items:center;justify-content:center;width:22px;color:var(--color-text-4);font-size:13px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.feed-pagination__jump{display:inline-flex;align-items:center;gap:6px;margin:0;padding:2px 8px 2px 10px;border-radius:8px;background:var(--j13-bg-block-muted);border:1px solid transparent;transition:border-color .15s,background .15s,box-shadow .15s}.feed-pagination__jump:focus-within{background:var(--j13-bg-surface);border-color:color-mix(in srgb,var(--j13-green) 30%,transparent);box-shadow:0 0 0 3px var(--j13-green-bg)}.feed-pagination__jump-label,.feed-pagination__jump-suffix{font-size:12px;color:var(--color-text-3);white-space:nowrap}.feed-pagination__jump-input{width:2.4rem;height:24px;border:none;outline:none;background:transparent;text-align:center;font-family:inherit;font-size:13px;color:var(--color-text-1);font-variant-numeric:tabular-nums}.feed-pagination__jump-input:disabled{opacity:.5}@media (max-width: 640px){.feed-pagination{justify-content:center}.feed-pagination__meta{width:100%;text-align:center;min-width:0}.feed-pagination__pages{flex:1 1 100%;order:1}.feed-pagination__jump{order:2}}.page-inner{padding:20px 24px;max-width:720px}.page-inner-wide{padding:20px 24px}.page-inner-wide--profile{max-width:820px}.page-title{font-size:20px;font-weight:600;margin:0 0 4px}.page-desc{font-size:13px;color:var(--color-text-3);margin:0 0 20px}.content-surface{background:var(--j13-bg-block);border:1px solid var(--j13-border-light);border-radius:12px;box-shadow:var(--j13-shadow-soft);overflow:hidden}.feed-panel .content-surface{background:transparent;border:none;border-radius:0;box-shadow:none}.section-card{background:var(--j13-bg-block);border:1px solid var(--j13-border-light);border-radius:12px;box-shadow:var(--j13-shadow-soft);padding:20px;margin-bottom:16px}.section-card-title{font-size:15px;font-weight:600;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid var(--j13-border-light)}.feed-top{flex-shrink:0;border-bottom:1px solid var(--j13-border-light);background:var(--j13-bg-block);position:relative}.feed-top:after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:1px;background:linear-gradient(90deg,var(--j13-green) 0%,transparent 55%);opacity:.35;pointer-events:none}@media (min-width: 900px){.feed-top__bar:not(:has(.feed-head--solo)){display:flex;align-items:center;gap:16px;padding:6px 16px}.feed-top__bar:not(:has(.feed-head--solo)) .feed-head{padding:0;flex-shrink:0}.feed-top__bar:not(:has(.feed-head--solo)) .feed-toolbar{padding:0;flex:1;min-width:0}}.feed-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px 6px}.feed-head--solo{padding-bottom:8px}.feed-head--stats-only .feed-head__title{align-items:center}.feed-head__title{display:flex;align-items:baseline;gap:10px;min-width:0;flex:1}.feed-head h1,.feed-head h2{margin:0;font-size:15px;font-weight:600;white-space:nowrap}.feed-head__meta{font-size:12px;color:var(--color-text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-head__stats{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.feed-stat-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:11px;color:var(--color-text-3);background:var(--j13-bg-block-muted);white-space:nowrap}.feed-stat-chip svg{width:12px;height:12px;color:var(--j13-green);opacity:.85}.feed-stat-chip strong{color:var(--j13-green);font-weight:600}.feed-stat-chip--muted{background:transparent;color:var(--color-text-4);padding-left:2px}.feed-head__meta strong{color:var(--j13-green);font-weight:600}.feed-head__dot{margin:0 4px;opacity:.55}.feed-head__clear{flex-shrink:0;border:none;background:transparent;padding:0;font-size:12px;color:var(--j13-green);cursor:pointer;font-family:inherit}.feed-head__clear:hover{text-decoration:underline}.feed-toolbar{display:flex;align-items:center;gap:10px;padding:0 16px 8px}.feed-toolbar__spacer{flex:1;min-width:0}.feed-toolbar__count{flex-shrink:0;font-size:12px;color:var(--color-text-3);white-space:nowrap}.feed-banner{padding:8px 16px;border-bottom:1px solid var(--j13-border-light)}.feed-banner-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.feed-banner-title{flex:1;min-width:0}.feed-banner h2{margin:0;font-size:15px;font-weight:600}.feed-banner p{margin:0;font-size:12px;color:var(--color-text-3);line-height:1.45}.feed-stats{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:6px;font-size:12px;color:var(--color-text-3)}.feed-stats strong{color:var(--j13-green);font-weight:600}.feed-action-slot{display:inline-block;width:88px;height:28px;border-radius:4px;background:var(--color-fill-3)}.feed-actions{min-height:28px}.mobile-board-bar{display:none;padding:8px 12px;gap:8px;overflow-x:auto;border-bottom:1px solid var(--j13-border);background:var(--j13-bg-surface)}@media (max-width: 768px){.mobile-board-bar{display:flex}}.board-chip{flex-shrink:0;padding:4px 12px;border-radius:16px;font-size:13px;font-family:inherit;color:inherit;border:1px solid var(--j13-border-light);background:var(--j13-bg-block);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.board-chip:focus-visible{outline:2px solid var(--j13-green);outline-offset:2px}.board-chip.active{background:var(--j13-green-bg);border-color:transparent;color:var(--j13-green);font-weight:600}.board-chip.active.board-chip--0{background:var(--board-0-bg);color:var(--board-0-color)}.board-chip.active.board-chip--1{background:var(--board-1-bg);color:var(--board-1-color)}.board-chip.active.board-chip--2{background:var(--board-2-bg);color:var(--board-2-color)}.board-chip.active.board-chip--3{background:var(--board-3-bg);color:var(--board-3-color)}.board-chip.active.board-chip--4{background:var(--board-4-bg);color:var(--board-4-color)}.board-chip.active.board-chip--5{background:var(--board-5-bg);color:var(--board-5-color)}.board-chip.active.board-chip--6{background:var(--board-6-bg);color:var(--board-6-color)}.board-chip.active.board-chip--7{background:var(--board-7-bg);color:var(--board-7-color)}.feed-sort-bar{display:flex;align-items:center;gap:2px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.feed-sort-bar::-webkit-scrollbar{display:none}.feed-sort-tab{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border:none;border-radius:6px;background:transparent;color:var(--color-text-2);font-family:inherit;font-size:12px;cursor:pointer;flex-shrink:0;white-space:nowrap;transition:background .15s,color .15s}.feed-sort-tab:hover{background:var(--j13-bg-block-muted);color:var(--color-text-1)}.feed-sort-tab.active{background:var(--j13-green-bg);color:var(--j13-green);font-weight:600}.feed-sort-tab svg{width:14px;height:14px;flex-shrink:0}@media (max-width: 768px){.feed-head{flex-wrap:wrap;padding:8px 12px 6px}.feed-head__meta,.feed-head__stats{display:none}.feed-toolbar{padding:0 12px 8px}.page-wrap{padding:0}.feed-panel{border:none;border-radius:0;box-shadow:none}.main-content--feed-mobile-scroll{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.main-content--feed-mobile-scroll .page-wrap--feed,.main-content--feed-mobile-scroll .feed-panel{overflow:visible;flex:0 0 auto;min-height:auto;height:auto}.main-content--feed-mobile-scroll .feed-top{flex-shrink:0}.main-content--feed-mobile-scroll .post-list-scroll{overflow:visible;flex:0 0 auto;min-height:auto;height:auto}.main-content--feed-mobile-scroll .mobile-board-bar{flex-shrink:0;position:static}}.post-list-bar{display:flex;justify-content:space-between;padding:10px 20px;font-size:13px;color:var(--color-text-3);border-bottom:1px solid var(--j13-border-light)}.post-row{display:flex;align-items:flex-start;gap:12px;width:100%;padding:16px 20px;border:none;border-bottom:1px solid var(--j13-border-light);border-radius:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .15s;position:relative}.post-row:hover{background:var(--j13-bg-block-accent)}.post-row:focus-visible{outline:none;background:var(--j13-bg-block-accent);box-shadow:inset 0 0 0 2px var(--j13-green-bg)}.post-row:hover .post-title,.post-row:focus-visible .post-title{color:var(--j13-green)}.post-avatar{width:40px;height:40px;border-radius:50%;background:var(--j13-green);color:#fff;font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;margin-top:2px}.post-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.post-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.post-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.post-head-meta{display:flex;align-items:center;gap:6px;flex:1;min-width:0;font-size:13px;color:var(--color-text-3)}.post-author{color:var(--color-text-2);font-weight:500;flex-shrink:0;max-width:none;overflow:visible;white-space:nowrap}.post-author:hover{color:var(--j13-green)}.post-head-dot{color:var(--color-text-4);flex-shrink:0}.post-time{flex-shrink:0;color:var(--color-text-4);font-variant-numeric:tabular-nums}.post-head-badges{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.post-pin-badge,.post-feature-badge{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;height:20px;padding:0 7px 0 5px;border-radius:4px;font-size:11px;font-weight:600;line-height:1}.post-pin-badge{color:#dc2626;background:#dc26261a;border:1px solid rgba(220,38,38,.22)}.post-pin-badge--icon{width:20px;padding:0;justify-content:center}.post-pin-badge--detail{width:24px;height:24px;margin-right:8px;vertical-align:-3px}.dark .post-pin-badge{color:#f87171;background:#f8717124;border-color:#f8717147}.post-status-badge{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:4px;font-size:11px;font-weight:600;line-height:1}.post-status-badge--pending{color:#b45309;background:#f59e0b1f;border:1px solid rgba(245,158,11,.22)}.post-status-badge--rejected{color:#be123c;background:#f43f5e1a;border:1px solid rgba(244,63,94,.2)}.post-qa-badge{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:4px;font-size:11px;font-weight:600;line-height:1;vertical-align:middle}.post-qa-badge--detail{margin-right:8px;height:22px;padding:0 8px;font-size:12px}.post-qa-badge--open{color:#c2410c;background:#ea580c1a;border:1px solid rgba(234,88,12,.22)}.post-qa-badge--resolved{color:var(--j13-green);background:var(--j13-green-bg);border:1px solid color-mix(in srgb,var(--j13-green) 20%,transparent)}.post-moderation-banner{margin:0 0 12px;padding:10px 14px;border-radius:8px;font-size:13px;line-height:1.5}.post-moderation-banner--pending{color:#92400e;background:#f59e0b1f;border:1px solid rgba(245,158,11,.22)}.post-moderation-banner--rejected{color:#9f1239;background:#f43f5e1a;border:1px solid rgba(244,63,94,.2)}.dark .post-moderation-banner--pending{color:#fbbf24}.dark .post-moderation-banner--rejected{color:#fb7185}.waline-comment-status--pending{color:#d97706}.waline-comment-status--rejected{color:#e11d48}.post-feature-badge{color:#b45309;background:#f59e0b1f;border:1px solid rgba(245,158,11,.22)}.dark .post-feature-badge{color:#fbbf24;background:#fbbf2424;border-color:#fbbf2438}.post-pin-badge .post-pinned-icon,.post-feature-badge .post-featured-icon{color:inherit;vertical-align:0}.post-title-row{display:flex;align-items:center;gap:6px;min-width:0}.post-title-row .post-qa-badge,.post-title-row .post-pin-badge,.post-title-row .post-feature-badge,.post-title-row .post-status-badge{flex-shrink:0}.post-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;line-height:1.4;font-family:inherit;color:var(--color-text-1);text-decoration:none;transition:color .15s;min-width:0;flex:1}a.post-title:visited{color:var(--color-text-1)}.post-excerpt{margin:0;font-size:13px;line-height:1.45;color:var(--color-text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px;min-width:0}.post-foot-left{min-width:0;display:flex;align-items:center;gap:8px}.post-stats{display:flex;align-items:center;gap:10px;flex-shrink:0;color:var(--color-text-4)}.post-stat{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-4);font-variant-numeric:tabular-nums}.post-stat svg{width:14px;height:14px;flex-shrink:0;opacity:.85}.post-row:hover .post-stat,.post-row:focus-visible .post-stat{color:var(--color-text-3)}.post-stat--zero{opacity:.55}.post-stat--media{opacity:.8}.post-pinned-icon{display:inline-block;vertical-align:-.15em;flex-shrink:0;color:var(--j13-green);stroke-width:1.75}.post-featured-icon{display:inline-block;vertical-align:-.15em;flex-shrink:0;color:#d97706;stroke-width:1.75}.dark .post-featured-icon{color:#fbbf24}.post-meta{font-size:12px;color:var(--color-text-3);display:flex;flex-wrap:wrap;gap:8px;align-items:center}.board-badge{display:inline-flex;align-items:center;padding:1px 7px;border-radius:4px;font-size:11px;font-weight:600;line-height:1.5;white-space:nowrap}.board-badge--0{background:var(--board-0-bg);color:var(--board-0-color)}.board-badge--1{background:var(--board-1-bg);color:var(--board-1-color)}.board-badge--2{background:var(--board-2-bg);color:var(--board-2-color)}.board-badge--3{background:var(--board-3-bg);color:var(--board-3-color)}.board-badge--4{background:var(--board-4-bg);color:var(--board-4-color)}.board-badge--5{background:var(--board-5-bg);color:var(--board-5-color)}.board-badge--6{background:var(--board-6-bg);color:var(--board-6-color)}.board-badge--7{background:var(--board-7-bg);color:var(--board-7-color)}.board-manage-dialog{max-width:520px}.board-appearance-picker__preview{display:flex;align-items:center;gap:10px;margin-bottom:10px}.board-appearance-picker__preview-icon{width:36px;height:36px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--j13-bg-block-muted)}.board-appearance-picker__preview-icon svg{width:20px;height:20px}.board-appearance-picker__preview-hint{font-size:12px;color:var(--color-text-3)}.board-icon-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.board-icon-option{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;border:1px solid var(--j13-border-light);border-radius:8px;background:var(--j13-bg-block);color:var(--color-text-2);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.board-icon-option svg{width:18px;height:18px}.board-icon-option:hover{border-color:var(--j13-green);background:var(--j13-bg-block-muted)}.board-icon-option--active{border-color:var(--j13-green);background:var(--j13-green-bg);color:var(--j13-green)}.board-icon-option__auto{font-size:12px;font-weight:700;color:var(--color-text-3)}.board-color-grid{display:flex;flex-wrap:wrap;gap:8px}.board-color-option{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;flex-shrink:0;transition:transform .12s,box-shadow .12s}.board-color-option:hover{transform:scale(1.08)}.board-color-option--active{box-shadow:0 0 0 2px var(--j13-bg-block),0 0 0 3px var(--j13-green)}.board-color-option--auto{display:inline-flex;align-items:center;justify-content:center;background:var(--j13-bg-block-muted);font-size:11px;font-weight:700;color:var(--color-text-3)}.board-color-option--0{background:var(--board-0-color)}.board-color-option--1{background:var(--board-1-color)}.board-color-option--2{background:var(--board-2-color)}.board-color-option--3{background:var(--board-3-color)}.board-color-option--4{background:var(--board-4-color)}.board-color-option--5{background:var(--board-5-color)}.board-color-option--6{background:var(--board-6-color)}.board-color-option--7{background:var(--board-7-color)}.board-table-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:var(--j13-bg-block-muted)}.board-table-icon svg{width:18px;height:18px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{background:linear-gradient(90deg,var(--j13-bg-block-muted) 0%,var(--j13-bg-block) 45%,var(--j13-bg-block-muted) 90%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:6px}.post-row--skeleton{pointer-events:none;cursor:default}.post-row--skeleton:hover{background:transparent}.skeleton--avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;margin-top:2px}.skeleton--title{height:18px;max-width:100%}.skeleton--excerpt{height:13px;max-width:100%}.skeleton-meta-row{display:flex;align-items:center;gap:8px}.skeleton--badge{width:52px;height:18px;border-radius:4px;flex-shrink:0}.skeleton--meta{height:12px;width:56px;flex-shrink:0}.skeleton--meta-short{width:72px}.skeleton--stat{width:28px;height:14px;border-radius:4px}.skeleton--feed-title{width:96px;height:18px}.skeleton--stat-chip{width:72px;height:22px;border-radius:999px}.feed-toolbar--skeleton{pointer-events:none}.skeleton--sort-tab{width:72px;height:28px;border-radius:8px}.skeleton--count{width:56px;height:14px;margin-left:auto}.sidebar-nav-item--skeleton{pointer-events:none;cursor:default;gap:10px}.sidebar-nav-item--skeleton:hover{background:transparent}.skeleton--sidebar-icon{width:18px;height:18px;border-radius:4px;flex-shrink:0}.skeleton--sidebar-label{height:12px;flex:1;max-width:120px}.widget-item--skeleton{pointer-events:none;cursor:default}.widget-item--skeleton:hover{background:transparent}.skeleton--widget-rank{width:18px;height:18px;border-radius:4px;flex-shrink:0}.skeleton--widget-avatar{width:22px;height:22px;border-radius:50%;flex-shrink:0}.skeleton--widget-title{height:12px;flex:1;min-width:0}.skeleton--widget-time{width:36px;height:10px;flex-shrink:0}.empty-state{text-align:center;padding:60px 24px;color:var(--color-text-3);display:flex;flex-direction:column;align-items:center;gap:12px}.error-page-shell{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:32px 16px;background:var(--j13-bg, var(--background))}.error-page{text-align:center;padding:48px 24px 64px;max-width:420px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:10px}.error-page__code{font-size:72px;font-weight:700;line-height:1;letter-spacing:-.04em;color:var(--j13-green, var(--primary));opacity:.18;-webkit-user-select:none;-moz-user-select:none;user-select:none}.error-page__icon{color:var(--color-text-4);margin-top:-28px}.error-page__title{margin:0;font-size:20px;font-weight:600;color:var(--color-text-1)}.error-page__desc{margin:0;font-size:14px;line-height:1.6;color:var(--color-text-3)}.error-page__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px}.empty-feed{text-align:center;padding:48px 24px;color:var(--color-text-3);display:flex;flex-direction:column;align-items:center;gap:8px}.empty-state-icon,.empty-feed-icon,.comment-empty-icon{display:block;color:var(--color-text-4);margin-bottom:4px;opacity:.9}.comment-empty-icon{margin:0 auto 8px}.empty-feed-hint{margin:0;font-size:12px;color:var(--color-text-4)}.empty-feed-actions{display:flex;justify-content:center;gap:8px;margin-top:12px}.projects-list .project-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--color-border)}.projects-list .project-row:last-child{border-bottom:none}.project-row-body{min-width:0;flex:1}.project-row-title{margin:0 0 6px;font-size:15px;font-weight:600;color:var(--color-text)}.project-row-desc{margin:0 0 8px;font-size:13px;line-height:1.5;color:var(--color-text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-row-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--color-text-3)}.project-row-link{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:13px;color:var(--color-primary);text-decoration:none;white-space:nowrap;padding-top:2px}.project-row-link:hover{text-decoration:underline}.projects-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px}.projects-pager-info{font-size:13px;color:var(--color-text-3)}.admin-entry-desc{font-size:13px;color:var(--color-text-3);margin:0 0 12px}.sidebar-section--spaced{margin-top:8px}.error-boundary{padding:24px;text-align:center}.error-boundary-msg{color:var(--color-text-3);font-size:13px;margin:8px 0 16px}.auth-footer{text-align:center;margin-top:16px;font-size:13px;color:var(--color-text-3)}.post-detail-loading{display:flex;align-items:center;justify-content:center;padding:60px;flex:1}.post-detail-page{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;gap:16px;padding:16px 20px 24px;background:var(--j13-bg-workspace);scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--j13-green) 45%,var(--j13-border)) transparent;-ms-overflow-style:auto}.post-detail-page::-webkit-scrollbar{width:8px}.post-detail-page::-webkit-scrollbar-track{background:transparent}.post-detail-page::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--j13-green) 40%,var(--j13-border));border-radius:999px;border:2px solid transparent;background-clip:padding-box}.post-detail-page::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--j13-green) 65%,var(--j13-border));background-clip:padding-box;border:2px solid transparent}.post-detail-header{padding:16px 20px 20px;background:var(--j13-bg-surface);border:1px solid var(--j13-border-light);border-radius:12px;box-shadow:var(--j13-shadow-card);flex-shrink:0}.post-detail-nav{display:flex;align-items:center;gap:8px;margin-bottom:8px}.post-detail-board-tag{margin:0!important}.post-detail-head{margin-bottom:12px}.post-detail-title{font-size:20px;font-weight:600;margin:0 0 12px;line-height:1.45;word-break:break-word}.post-detail-author-row{display:flex;align-items:center;gap:10px}.post-avatar-lg{width:40px;height:40px;font-size:16px}.post-detail-author-info{display:flex;flex-direction:column;gap:2px}.post-detail-author-name{font-size:14px;font-weight:400;color:var(--color-text-1)}.post-detail-meta-line{font-size:12px;color:var(--color-text-3);display:flex;flex-wrap:wrap;align-items:center;gap:4px}.post-detail-locked-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;color:hsl(var(--destructive));font-size:11px}.post-detail-edit-hint{font-size:12px;color:var(--color-text-3);align-self:center}.post-revision-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#00000080;display:flex;align-items:center;justify-content:center;padding:16px}.post-revision-overlay--fullscreen{padding:0}.post-revision-panel{background:hsl(var(--background));border-radius:12px;width:min(1080px,100%);height:min(88vh,900px);display:flex;flex-direction:column;box-shadow:0 12px 48px #00000038;overflow:hidden}.post-revision-panel--fullscreen{width:100%;height:100%;max-height:none;border-radius:0}.post-revision-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--j13-border-light);flex-shrink:0}.post-revision-head-left{display:flex;align-items:center;gap:8px;min-width:0}.post-revision-head-left h3{font-size:15px;font-weight:600;margin:0}.post-revision-head-sub{font-size:12px;color:var(--color-text-3);padding-left:8px;border-left:1px solid var(--j13-border-light)}.post-revision-head-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.post-revision-view-tabs{display:flex;gap:2px;background:hsl(var(--muted));border-radius:8px;padding:3px}.post-revision-tab{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:none;background:none;border-radius:6px;font-size:12px;color:var(--color-text-2);cursor:pointer;white-space:nowrap}.post-revision-tab:hover{color:var(--color-text-1)}.post-revision-tab.active{background:hsl(var(--background));color:var(--color-text-1);font-weight:500;box-shadow:0 1px 3px #00000014}.post-revision-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;border-radius:8px;cursor:pointer;color:var(--color-text-3)}.post-revision-icon-btn:hover{background:hsl(var(--muted));color:var(--color-text-1)}.post-revision-loading,.post-revision-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 24px;color:var(--color-text-3);font-size:14px}.post-revision-body{display:flex;flex:1;min-height:0;overflow:hidden}.post-revision-sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--j13-border-light);min-height:0}.post-revision-sidebar-label{padding:10px 14px 6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-3)}.post-revision-list{list-style:none;margin:0;padding:4px 8px;overflow-y:auto;flex:1;min-height:0}.post-revision-item{display:flex;flex-direction:column;gap:4px;width:100%;text-align:left;padding:10px 12px;border:none;background:none;border-radius:8px;cursor:pointer;font-size:13px;margin-bottom:2px}.post-revision-item:hover,.post-revision-item.active{background:hsl(var(--muted))}.post-revision-item-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.post-revision-item-num{font-size:11px;font-weight:600;color:var(--color-text-3)}.post-revision-item-title{font-weight:500;color:var(--color-text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-revision-item-meta{font-size:11px;color:var(--color-text-3)}.post-revision-badge{font-size:10px;padding:1px 6px;border-radius:4px;background:hsl(var(--primary) / .12);color:hsl(var(--primary));font-weight:500}.post-revision-badge--none{background:hsl(var(--muted));color:var(--color-text-3)}.post-revision-current{padding:12px 14px;border-top:1px solid var(--j13-border-light);background:hsl(var(--muted) / .4);flex-shrink:0}.post-revision-current-label{display:block;font-size:11px;color:var(--color-text-3);margin-bottom:4px}.post-revision-current-title{font-size:13px;font-weight:500;color:var(--color-text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-revision-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.post-revision-main-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-bottom:1px solid var(--j13-border-light);flex-shrink:0}.post-revision-main-editor{font-size:14px;font-weight:600;color:var(--color-text-1);margin-right:8px}.post-revision-main-time{font-size:12px;color:var(--color-text-3)}.post-revision-scroll{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;padding:16px 20px 24px;-webkit-overflow-scrolling:touch}.revision-diff-view{display:flex;flex-direction:column;gap:20px}.revision-diff-section h4{font-size:12px;font-weight:600;color:var(--color-text-3);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px}.revision-diff-block{padding:12px 14px;background:hsl(var(--muted) / .35);border-radius:8px;font-size:14px;line-height:1.6;word-break:break-word}.revision-diff-inline del{background:#fbe9e9;color:#8f2424;text-decoration:line-through;border-radius:2px;padding:0 2px}.revision-diff-inline ins{background:#e2f8ea;color:#246b3c;text-decoration:none;border-radius:2px;padding:0 2px}.revision-diff-unchanged{color:var(--color-text-3);font-size:13px}.revision-diff-stats{display:flex;gap:8px;margin-bottom:8px}.revision-diff-stat{font-size:11px;padding:2px 8px;border-radius:4px;font-weight:500}.revision-diff-stat--add{background:#e2f8ea;color:#246b3c}.revision-diff-stat--del{background:#fbe9e9;color:#8f2424}.revision-diff-pre{margin:0;font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:13px;line-height:1.55;border:1px solid var(--j13-border-light);border-radius:8px;overflow:hidden}.revision-diff-line{display:flex;padding:1px 0;white-space:pre-wrap;word-break:break-word}.revision-diff-line--add{background:#ebfaf0}.revision-diff-line--del{background:#fceeee}.revision-diff-line--same{background:hsl(var(--background))}.revision-diff-gutter{flex-shrink:0;width:24px;text-align:center;color:var(--color-text-3);-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:12px}.revision-diff-line--add .revision-diff-gutter{color:#395}.revision-diff-line--del .revision-diff-gutter{color:#b82e2e}.revision-diff-text{flex:1;padding-right:12px}.comment-rev-layout{display:grid;grid-template-columns:minmax(140px,200px) 1fr;gap:12px;min-height:280px;max-height:min(60vh,480px)}.comment-rev-list{overflow-y:auto;border-right:1px solid var(--j13-border-light);padding-right:8px}.comment-rev-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:8px 10px;margin-bottom:4px;border:none;border-radius:8px;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer}.comment-rev-item:hover,.comment-rev-item.active{background:var(--j13-bg-block-accent)}.comment-rev-item__ver{font-size:13px;font-weight:600;color:var(--color-text-1)}.comment-rev-item__meta{font-size:11px;color:var(--color-text-3)}.comment-rev-detail{min-width:0;overflow:auto}.comment-rev-detail__hint{margin:0 0 8px;font-size:12px;color:var(--color-text-3)}@media (max-width: 640px){.comment-rev-layout{grid-template-columns:1fr;max-height:none}.comment-rev-list{border-right:none;border-bottom:1px solid var(--j13-border-light);padding-right:0;padding-bottom:8px;max-height:140px}}.revision-diff-line--add .revision-diff-text{color:#1f5130}.revision-diff-line--del .revision-diff-text{color:#722;text-decoration:line-through}.revision-full-view h4{font-size:18px;font-weight:600;margin:0 0 8px;line-height:1.4}.revision-full-tags{font-size:13px;color:var(--color-text-3);margin:0 0 16px}@media (max-width: 768px){.post-revision-overlay:not(.post-revision-overlay--fullscreen){padding:0;align-items:stretch}.post-revision-panel:not(.post-revision-panel--fullscreen){width:100%;height:100%;border-radius:0}.post-revision-head{flex-wrap:wrap}.post-revision-head-actions{width:100%;justify-content:space-between}.post-revision-view-tabs{flex:1}.post-revision-tab-label{display:none}.post-revision-tab.active .post-revision-tab-label{display:inline}.post-revision-body{flex-direction:column}.post-revision-sidebar{width:100%;max-height:180px;border-right:none;border-bottom:1px solid var(--j13-border-light)}.post-revision-current{display:none}}.post-detail-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.post-detail-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid var(--j13-border-light);clear:both;position:relative}.post-detail-actions-primary,.post-detail-actions-manage{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}.post-detail-actions-manage{width:100%;padding-top:12px;border-top:1px dashed var(--j13-border-light)}.post-detail-more-btn{min-width:36px;padding-inline:10px}.report-more-menu{min-width:0!important;width:-moz-max-content;width:max-content;padding:4px}.report-more-menu__item{justify-content:center;gap:6px;padding:6px 12px;color:hsl(var(--destructive));font-size:13px;cursor:pointer}.report-more-menu__item:focus,.report-more-menu__item:hover{color:hsl(var(--destructive));background:color-mix(in srgb,hsl(var(--destructive)) 10%,transparent)}.report-more-menu__item svg{width:14px;height:14px}.post-detail-content{font-size:15.5px;line-height:1.8;word-break:break-word;color:var(--color-text-1);letter-spacing:.01em;display:flow-root}.post-detail-content h1,.post-detail-content h2,.post-detail-content h3,.post-detail-content h4,.post-detail-content h5,.post-detail-content h6{font-weight:700;line-height:1.35;letter-spacing:-.02em;color:var(--color-text-1);margin:1.55em 0 .65em}.post-detail-content h1:after,.post-detail-content h2:after,.post-detail-content h3:after,.post-detail-content h4:after,.post-detail-content h5:after,.post-detail-content h6:after{content:"";display:block;box-sizing:border-box;margin-top:.38em;background:var(--j13-green);border-radius:1px;transition:width .35s cubic-bezier(.4,0,.2,1)}.post-detail-content>:first-child,.post-detail-content h1:first-child,.post-detail-content h2:first-child,.post-detail-content h3:first-child,.post-detail-content h4:first-child,.post-detail-content h5:first-child,.post-detail-content h6:first-child{margin-top:0}.post-detail-content h1{font-size:1.7em}.post-detail-content h1:after{width:48px;height:3px}.post-detail-content h1:hover:after{width:72px}.post-detail-content h2{font-size:1.4em}.post-detail-content h2:after{width:40px;height:2px}.post-detail-content h2:hover:after{width:60px}.post-detail-content h3{font-size:1.22em}.post-detail-content h3:after{width:32px;height:2px}.post-detail-content h3:hover:after{width:48px}.post-detail-content h4{font-size:1.1em}.post-detail-content h4:after{width:26px;height:2px}.post-detail-content h4:hover:after{width:40px}.post-detail-content h5{font-size:1em}.post-detail-content h5:after{width:20px;height:1px}.post-detail-content h5:hover:after{width:32px}.post-detail-content h6{font-size:.92em;color:var(--color-text-2);font-weight:600}.post-detail-content h6:after{width:16px;height:1px}.post-detail-content h6:hover:after{width:26px}.post-detail-content ul,.post-detail-content ol{margin:0 0 1em;padding-left:1.55em}.post-detail-content ul{list-style-type:disc}.post-detail-content ol{list-style-type:decimal}.post-detail-content li{display:list-item;margin-bottom:.35em;padding-left:.15em}.post-detail-content li::marker{color:var(--color-text-3)}.post-detail-content li>ul,.post-detail-content li>ol{margin-top:.35em;margin-bottom:0}.post-detail-content hr{margin:1.75em 0;border:none;height:1px;background:linear-gradient(90deg,transparent,var(--j13-border),transparent)}.post-detail-content members-only,.post-detail-content .post-members-only{display:block;margin:16px 0;border-radius:0;overflow:visible}.post-detail-content .post-members-only--visible{border:none;border-left:3px solid rgba(24,160,88,.45);background:transparent;box-shadow:none;padding:2px 0 2px 14px}.post-detail-content .post-members-only__badge{display:none}.post-detail-content .post-members-only__body{padding:0}.post-detail-content .post-members-only__body--empty{color:var(--color-text-4);font-style:italic}.post-detail-content .post-members-only--locked{position:relative;border:1px solid rgba(24,160,88,.22);border-left:3px solid rgba(24,160,88,.55);border-radius:8px;background:var(--j13-bg-surface);overflow:hidden}.post-detail-content .post-members-only__locked-wrap{position:relative;min-height:0}.post-detail-content .post-members-only__gate{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 14px;text-align:left}.post-detail-content .post-members-only__gate-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#18a0581a;color:var(--j13-green);border:none;margin:0;box-shadow:none}.post-detail-content .post-members-only__gate-text{flex:1 1 160px;min-width:0}.post-detail-content .post-members-only__gate-title{margin:0;font-size:13px;font-weight:600;color:var(--color-text-1)}.post-detail-content .post-members-only__gate-desc{margin:2px 0 0;font-size:12px;color:var(--color-text-3);line-height:1.4;max-width:none}.post-detail-content .post-members-only__gate-actions{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.post-detail-content .post-members-only__gate-btn{padding:6px 14px;border:none;border-radius:6px;background:var(--j13-green);color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.post-detail-content .post-members-only__gate-btn:hover{background:var(--j13-green-hover)}.post-detail-content .post-members-only__gate-link{padding:0;border:none;background:none;color:var(--j13-green);font-size:12px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.post-detail-content .post-members-only__gate-link:hover{color:var(--j13-green-hover)}.dark .post-detail-content .post-members-only--visible{border-left-color:#23c36b80;background:transparent;box-shadow:none}.dark .post-detail-content .post-members-only--locked{border-color:#23c36b40;border-left-color:#23c36b8c;background:var(--j13-bg-surface)}.dark .post-detail-content .post-members-only__gate{background:transparent}.article-editor-tools-members{display:inline-flex;align-items:center;gap:6px;margin-left:4px}.article-editor-tools-sep{display:inline-block;width:1px;height:20px;background:var(--j13-border-light);flex-shrink:0}.article-editor-tools .article-tool-btn--members{color:var(--j13-green)}.article-editor-tools .article-tool-btn--members:hover,.article-editor-tools .article-tool-btn--members.active{background:var(--j13-green-bg);color:var(--j13-green-hover)}.article-editor-tools .article-tool-btn--reply{color:#c27803}.article-editor-tools .article-tool-btn--reply:hover,.article-editor-tools .article-tool-btn--reply.active{background:#c278031a;color:#a16207}.dark .article-editor-tools .article-tool-btn--reply{color:#e8b84a}.dark .article-editor-tools .article-tool-btn--reply:hover,.dark .article-editor-tools .article-tool-btn--reply.active{background:#e8b84a1f;color:#f0c85a}.post-detail-content reply-only,.post-detail-content .post-reply-only{display:block;margin:16px 0;border-radius:0;overflow:visible}.post-detail-content .post-reply-only--visible{border:none;border-left:3px solid rgba(194,120,3,.5);background:transparent;box-shadow:none;padding:2px 0 2px 14px}.post-detail-content .post-reply-only__badge{display:none}.post-detail-content .post-reply-only__body{padding:0}.post-detail-content .post-reply-only--locked{position:relative;border:1px solid rgba(194,120,3,.28);border-left:3px solid rgba(194,120,3,.65);border-radius:8px;background:var(--j13-bg-surface);overflow:hidden}.post-detail-content .post-reply-only__locked-wrap{position:relative;min-height:0}.post-detail-content .post-reply-only__gate{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 14px;text-align:left}.post-detail-content .post-reply-only__gate-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#c278031f;color:#c27803;border:none;margin:0;box-shadow:none}.post-detail-content .post-reply-only__gate-text{flex:1 1 160px;min-width:0}.post-detail-content .post-reply-only__gate-title{margin:0;font-size:13px;font-weight:600;color:var(--color-text-1)}.post-detail-content .post-reply-only__gate-desc{margin:2px 0 0;font-size:12px;color:var(--color-text-3);line-height:1.4}.post-detail-content .post-reply-only__gate-actions{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.post-detail-content .post-reply-only__gate-btn{padding:6px 14px;border:none;border-radius:6px;background:#c27803;color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.post-detail-content .post-reply-only__gate-btn:hover{background:#a16207}.post-detail-content .post-reply-only__gate-link{padding:0;border:none;background:none;color:#c27803;font-size:12px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.post-detail-content .post-reply-only__gate-link:hover{color:#a16207}.dark .post-detail-content .post-reply-only--visible{border-left-color:#e8b84a8c}.dark .post-detail-content .post-reply-only--locked{border-color:#e8b84a4d;border-left-color:#e8b84a99}.dark .post-detail-content .post-reply-only__gate-icon{background:#e8b84a24;color:#e8b84a}.dark .post-detail-content .post-reply-only__gate-btn{background:#c27803}.dark .post-detail-content .post-reply-only__gate-link{color:#e8b84a}.post-members-only__unwrap-btn{margin-left:0;padding:2px 8px;border:none;border-radius:12px;background:transparent;color:var(--color-text-3);font-size:11px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:3px;transition:background .12s,color .12s}.post-members-only__unwrap-btn:hover{background:var(--j13-bg-block-muted);color:var(--color-text-2)}.post-members-only__badge-actions{margin-left:auto;display:inline-flex;align-items:center;gap:4px}.post-members-only__remove-btn{padding:2px 8px;border:none;border-radius:12px;background:transparent;color:var(--color-text-3);font-size:11px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:3px;transition:background .12s,color .12s}.post-members-only__remove-btn:hover{background:#dc26261a;color:#dc2626}.editor-members-only--empty .post-members-only__remove-btn{color:#dc2626;background:#dc262614}.post-detail-content strong,.post-detail-content b{font-weight:700;color:var(--color-text-1)}.post-detail-content em,.post-detail-content i{font-style:italic}.post-detail-content img{max-width:100%;height:auto;border-radius:10px;margin:.75em 0;box-shadow:var(--j13-shadow-soft);display:block;clear:both}.post-detail-content img.post-content-img--zoomable{cursor:zoom-in;transition:box-shadow .15s,transform .15s}.post-detail-content img.post-content-img--zoomable:hover{box-shadow:0 4px 18px #0f172a24}.post-detail-content img.post-content-img--zoomable:focus-visible{outline:2px solid var(--j13-green);outline-offset:3px}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:24px}.image-lightbox-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;padding:0;margin:0;background:#080c14e0;cursor:zoom-out}.image-lightbox-close{position:absolute;top:16px;right:16px;z-index:2;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:999px;background:#ffffff1f;color:#fff;cursor:pointer;transition:background .15s}.image-lightbox-close:hover{background:#ffffff38}.image-lightbox-stage{position:relative;z-index:1;max-width:min(96vw,1400px);max-height:90vh;display:flex;align-items:center;justify-content:center}.image-lightbox-img{max-width:100%;max-height:90vh;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:8px;box-shadow:0 12px 40px #00000073;-webkit-user-select:none;-moz-user-select:none;user-select:none}.image-lightbox-hint{position:absolute;bottom:18px;left:50%;transform:translate(-50%);z-index:1;margin:0;font-size:12px;color:#ffffff8c;pointer-events:none}@media (max-width: 768px){.image-lightbox{padding:12px}.image-lightbox-hint{display:none}}.post-detail-content p{margin:0 0 1em}.post-detail-content p:last-child{margin-bottom:0}.post-detail-content>p:first-child{font-size:1.06em;line-height:1.75;letter-spacing:.015em;color:var(--color-text-1)}.post-detail-content a{color:var(--j13-green);text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--j13-green) 35%,transparent)}.post-detail-content a:hover{text-decoration-color:var(--j13-green)}.post-detail-content blockquote{margin:1.1em 0;padding:.75em 1em;border-left:3px solid var(--j13-green);background:color-mix(in srgb,var(--j13-green) 6%,var(--j13-bg-block-muted));color:var(--color-text-2);border-radius:0 10px 10px 0;transition:border-left-width .28s cubic-bezier(.4,0,.2,1),background .28s ease,padding-left .28s cubic-bezier(.4,0,.2,1)}.post-detail-content blockquote:hover{border-left-width:5px;padding-left:calc(1em - 2px);background:color-mix(in srgb,var(--j13-green) 11%,var(--j13-bg-block-muted))}.post-detail-content blockquote p:last-child{margin-bottom:0}.post-detail-content .md-table-wrap{display:block;width:-moz-fit-content;width:fit-content;max-width:100%;margin:1.25em 0;overflow-x:auto;border:1px solid var(--j13-border);border-radius:8px;background:var(--j13-bg-surface)}.post-detail-content table{width:auto;max-width:100%;margin:1.25em 0;border-collapse:separate;border-spacing:0;font-size:14px;line-height:1.55;display:table;border:1px solid var(--j13-border);border-radius:8px;overflow:hidden;background:var(--j13-bg-surface);color:var(--color-text-1)}.post-detail-content .md-table-wrap table{margin:0;max-width:none;border:none;border-radius:0;overflow:visible}.post-detail-content th,.post-detail-content td{padding:9px 14px;border-right:1px solid var(--j13-border);border-bottom:1px solid var(--j13-border);text-align:left;vertical-align:top;min-width:64px}.post-detail-content th:last-child,.post-detail-content td:last-child{border-right:none}.post-detail-content tr:last-child th,.post-detail-content tr:last-child td{border-bottom:none}.post-detail-content th{background:color-mix(in srgb,var(--j13-bg-block-muted) 88%,var(--j13-bg-surface));color:var(--color-text-2);font-weight:600;font-size:13px;letter-spacing:.01em;white-space:nowrap}.post-detail-content tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--j13-bg-block-muted) 35%,transparent)}.post-detail-content tbody tr:hover td{background:color-mix(in srgb,var(--j13-green) 6%,var(--j13-bg-surface))}.post-detail-content table p{margin:0}.post-detail-content pre,.post-detail-content code,.post-detail-content .md-codeblock{font-family:ui-monospace,Cascadia Code,SF Mono,Consolas,Liberation Mono,monospace}.post-detail-content :not(pre)>code{padding:.15em .45em;font-size:.88em;background:color-mix(in srgb,var(--j13-green) 8%,var(--j13-bg-block-muted));color:color-mix(in srgb,var(--j13-green) 55%,var(--color-text-1));border-radius:5px;border:1px solid color-mix(in srgb,var(--j13-green) 12%,var(--j13-border-light))}.post-detail-content .md-codeblock{margin:1.15em 0;border:1px solid #d8dee4;border-radius:12px;background:#f6f8fa;overflow:hidden;box-shadow:var(--j13-shadow-soft)}.post-detail-content .md-codeblock__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:#eef1f4;border-bottom:1px solid #d8dee4}.post-detail-content .md-codeblock__lang{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#656d76}.post-detail-content .md-codeblock[data-lang=aardio] .md-codeblock__lang{text-transform:none;letter-spacing:.02em}.post-detail-content .md-codeblock__actions{display:inline-flex;align-items:center;gap:6px}.post-detail-content .md-codeblock__editor-meta{font-size:11px;font-weight:500;letter-spacing:.02em;color:#656d76}.article-prosemirror .md-codeblock--editor{margin:1em 0}.article-prosemirror .md-codeblock--editor .md-codeblock__head{cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none}.article-prosemirror .md-codeblock--editor .md-codeblock__pre{min-height:1.65em;max-height:none!important;overflow:visible!important}.article-prosemirror .md-codeblock--editor .md-codeblock__pre:after{display:none!important}.article-prosemirror .md-codeblock--editor .md-codeblock__pre code,.article-prosemirror .md-codeblock--editor.md-codeblock--lines .md-codeblock__pre code{display:block;outline:none;white-space:pre-wrap;overflow-wrap:normal;word-break:normal}.post-detail-content .md-codeblock__copy,.post-detail-content .md-codeblock__fold{padding:3px 10px;border:1px solid #d0d7de;border-radius:6px;background:#fff;color:#57606a;font-size:12px;line-height:1.4;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.post-detail-content .md-codeblock__copy:hover,.post-detail-content .md-codeblock__fold:hover{background:#f3f4f6;color:#24292f}.post-detail-content .md-codeblock__copy.is-copied{border-color:color-mix(in srgb,var(--j13-green) 50%,transparent);color:color-mix(in srgb,var(--j13-green) 55%,#24292f)}.post-detail-content .md-codeblock__pre,.post-detail-content pre{margin:0;padding:14px 16px;background:transparent;border-radius:0;overflow-x:auto;color:#24292f;font-size:13px;line-height:1.65;-moz-tab-size:2;-o-tab-size:2;tab-size:2;position:relative}.post-detail-content .md-codeblock__pre code,.post-detail-content pre code{padding:0;background:transparent;border:none;border-radius:0;color:inherit;font-size:inherit;white-space:pre;display:block}.post-detail-content .md-codeblock--lines .md-codeblock__pre code{white-space:normal}.post-detail-content .md-codeblock--lines{--md-lineno-col: 1ch}.post-detail-content .md-codeblock--lines[data-lineno-digits="2"]{--md-lineno-col: 2ch}.post-detail-content .md-codeblock--lines[data-lineno-digits="3"]{--md-lineno-col: 3ch}.post-detail-content .md-codeblock--lines[data-lineno-digits="4"]{--md-lineno-col: 4ch}.post-detail-content .md-code-line{display:block;min-height:1.65em}.post-detail-content .md-codeblock--lines .md-code-line{display:grid;grid-template-columns:var(--md-lineno-col) minmax(0,1fr);-moz-column-gap:10px;column-gap:10px}.post-detail-content .md-code-line__num{-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:right;color:#8c959f;font-variant-numeric:tabular-nums;white-space:nowrap}.post-detail-content .md-code-line__body{min-width:0;overflow-wrap:normal;white-space:pre}.post-detail-content .md-codeblock--collapsed .md-codeblock__pre{max-height:calc(8.25em + 28px);overflow:hidden}.post-detail-content .md-codeblock--collapsed.md-codeblock--short .md-codeblock__pre{max-height:calc(3.3em + 20px)}.post-detail-content .md-codeblock--collapsed .md-codeblock__pre:after{content:"";position:absolute;left:0;right:0;bottom:0;height:56px;pointer-events:none;background:linear-gradient(to bottom,transparent,#f6f8fa 85%)}.post-detail-content>pre{margin:1.15em 0;padding:14px 16px;background:#f6f8fa;border:1px solid #d8dee4;border-radius:12px;color:#24292f;overflow-x:auto}.post-detail-content .hljs-comment,.post-detail-content .hljs-quote{color:#6e7781;font-style:italic}.post-detail-content .hljs-keyword,.post-detail-content .hljs-selector-tag,.post-detail-content .hljs-addition{color:#cf222e}.post-detail-content .hljs-string,.post-detail-content .hljs-meta .hljs-string,.post-detail-content .hljs-attribute{color:#0a3069}.post-detail-content .hljs-number,.post-detail-content .hljs-literal,.post-detail-content .hljs-variable,.post-detail-content .hljs-template-variable{color:#0550ae}.post-detail-content .hljs-title,.post-detail-content .hljs-section,.post-detail-content .hljs-name{color:#8250df}.post-detail-content .hljs-type,.post-detail-content .hljs-class .hljs-title,.post-detail-content .hljs-built_in,.post-detail-content .hljs-params{color:#953800}.post-detail-content .hljs-attr,.post-detail-content .hljs-symbol,.post-detail-content .hljs-bullet{color:#116329}.post-detail-content .hljs-meta,.post-detail-content .hljs-deletion{color:#82071e}.post-detail-content .hljs-regexp,.post-detail-content .hljs-link{color:#0a3069}.post-detail-content .hljs-operator{color:#cf222e}.post-detail-content .hljs-emphasis{font-style:italic}.post-detail-content .hljs-strong{font-weight:700}.dark .post-detail-content .md-codeblock{background:#0f1419;border-color:#2a2f36}.dark .post-detail-content .md-codeblock__head{background:#161b22;border-bottom-color:#ffffff0f}.dark .post-detail-content .md-codeblock__lang{color:#ffffff73}.dark .post-detail-content .md-codeblock__editor-meta{color:#fff6}.dark .post-detail-content .md-codeblock__copy,.dark .post-detail-content .md-codeblock__fold{border-color:#ffffff1f;background:#ffffff0a;color:#ffffffb8}.dark .post-detail-content .md-codeblock__copy:hover,.dark .post-detail-content .md-codeblock__fold:hover{background:#ffffff1a;color:#fff}.dark .post-detail-content .md-codeblock__copy.is-copied{border-color:color-mix(in srgb,var(--j13-green) 50%,transparent);color:#7ee2a8}.dark .post-detail-content .md-codeblock__pre,.dark .post-detail-content pre{color:#e6edf3}.dark .post-detail-content .md-code-line__num{color:#ffffff47}.dark .post-detail-content .md-codeblock--collapsed .md-codeblock__pre:after{background:linear-gradient(to bottom,transparent,#0f1419 85%)}.dark .post-detail-content>pre{background:#0f1419;border-color:#2a2f36;color:#e6edf3}.dark .post-detail-content .hljs-comment,.dark .post-detail-content .hljs-quote{color:#8b949e}.dark .post-detail-content .hljs-keyword,.dark .post-detail-content .hljs-selector-tag,.dark .post-detail-content .hljs-addition{color:#ff7b72}.dark .post-detail-content .hljs-string,.dark .post-detail-content .hljs-meta .hljs-string,.dark .post-detail-content .hljs-attribute{color:#a5d6ff}.dark .post-detail-content .hljs-number,.dark .post-detail-content .hljs-literal,.dark .post-detail-content .hljs-variable,.dark .post-detail-content .hljs-template-variable{color:#79c0ff}.dark .post-detail-content .hljs-title,.dark .post-detail-content .hljs-section,.dark .post-detail-content .hljs-name{color:#d2a8ff}.dark .post-detail-content .hljs-type,.dark .post-detail-content .hljs-class .hljs-title,.dark .post-detail-content .hljs-built_in,.dark .post-detail-content .hljs-params{color:#ffa657}.dark .post-detail-content .hljs-attr,.dark .post-detail-content .hljs-symbol,.dark .post-detail-content .hljs-bullet{color:#7ee787}.dark .post-detail-content .hljs-meta,.dark .post-detail-content .hljs-deletion{color:#ffa198}.dark .post-detail-content .hljs-regexp,.dark .post-detail-content .hljs-link{color:#a5d6ff}.dark .post-detail-content .hljs-operator{color:#ff7b72}.comment-section{display:flex;flex-direction:column;background:var(--j13-bg-surface);border:1px solid var(--j13-border-light);border-radius:12px;box-shadow:var(--j13-shadow-card);flex-shrink:0;overflow:hidden}.comment-section-bar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px 12px;font-size:15px;font-weight:600;flex-shrink:0;border-bottom:1px solid var(--j13-border-light)}.comment-section-bar:after{content:"";position:absolute;bottom:-1px;left:20px;width:36px;height:2px;background:var(--j13-green);border-radius:1px;transition:width .35s cubic-bezier(.4,0,.2,1)}.comment-section:hover .comment-section-bar:after{width:52px}.comment-section-title{color:var(--color-text-1)}.comment-section-count{font-size:13px;font-weight:400;color:var(--color-text-3)}.floor-jump-tools{display:flex;align-items:center;gap:4px}.comment-list-area{display:flex;flex-direction:column}.comment-empty{text-align:center;padding:48px 24px;color:var(--color-text-3)}.comment-empty p{margin:0;font-size:13px}.reply-bar{padding:12px 20px 16px;border-top:1px solid var(--j13-border-light);background:var(--j13-bg-block-muted);flex-shrink:0}.comment-login-gate{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;padding:14px 16px;border:1px dashed var(--j13-border);border-radius:8px;background:var(--j13-bg-block-muted)}.comment-login-gate--inline{margin-top:4px}.comment-login-gate__text{margin:0;font-size:13px;color:var(--color-text-2)}.comment-login-gate__actions{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.comment-login-gate__register{font-size:13px;color:var(--j13-green);text-decoration:none}.comment-login-gate__register:hover{text-decoration:underline}.comment-box-wrap{padding:16px 20px;border-bottom:1px solid var(--j13-border-light);background:var(--j13-bg-surface);flex-shrink:0}.comment-box-wrap.inline{padding:12px 0 4px;border-bottom:none;background:transparent}.comment-box-wrap.inline .comment-box-avatar,.comment-box-wrap.inline .comment-box-avatar-img,.comment-box-wrap.inline .comment-box-avatar-placeholder{width:32px;height:32px;font-size:13px}.waline-comment-reply-btn.cancel{color:#e74c3c}.waline-comment-reply-btn.cancel:hover{color:#c0392b}.comment-box{display:flex;gap:12px;align-items:flex-start}.comment-box-avatar{flex-shrink:0}.comment-box-avatar-img,.comment-box-avatar-placeholder{width:40px;height:40px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.comment-box-avatar-placeholder{display:flex;align-items:center;justify-content:center;background:var(--j13-green);color:#fff;font-size:16px;font-weight:600}.comment-box-avatar-placeholder.guest{background:var(--color-fill-3);color:var(--color-text-3)}.comment-box-main{flex:1;min-width:0}.comment-box-reply-hint{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--j13-green);margin-bottom:8px}.comment-box-reply-cancel{border:none;background:none;color:var(--color-text-3);cursor:pointer;font-size:12px;padding:0}.comment-box-reply-cancel:hover{color:var(--color-text-1)}.comment-box-input-wrap{position:relative;border:1px solid var(--j13-border-light);border-radius:10px;background:var(--j13-bg-block);transition:border-color .2s,background .2s}.comment-box-input-wrap:focus-within{border-color:rgb(var(--primary-6))}.comment-box-input-wrap.private-mode{background:var(--j13-bg-block-muted);border-color:var(--j13-border)}.comment-box-textarea{display:block;width:100%;min-height:72px;max-height:200px;padding:10px 48px 10px 12px;border:none;outline:none;resize:vertical;font-size:14px;line-height:1.6;font-family:inherit;color:var(--color-text-1);background:transparent;box-sizing:border-box}.comment-box-textarea::-moz-placeholder{color:var(--color-text-4)}.comment-box-textarea::placeholder{color:var(--color-text-4)}.comment-box-send{position:absolute;right:8px;bottom:8px;width:32px;height:32px;border:none;border-radius:50%;background:#27c;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:background .15s,opacity .15s}.comment-box-send:hover:not(:disabled){background:#1a9bd8}.comment-box-send:disabled{opacity:.45;cursor:not-allowed}.comment-box-guest-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 10px;margin-bottom:8px}.comment-box-guest-field{display:flex;flex-direction:column;gap:4px;min-width:0}.comment-box-guest-field--error .comment-box-guest-input{border-color:rgb(var(--danger-6));box-shadow:0 0 0 3px color-mix(in srgb,rgb(var(--danger-6)) 14%,transparent)}.comment-box-guest-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-3)}.comment-box-guest-required,.comment-box-guest-optional{font-style:normal;font-size:11px;line-height:1;padding:2px 6px;border-radius:4px}.comment-box-guest-required{color:rgb(var(--danger-6));background:color-mix(in srgb,rgb(var(--danger-6)) 12%,transparent)}.comment-box-guest-optional{color:var(--color-text-4);background:var(--color-fill-2)}.comment-box-guest-hint{grid-column:1 / -1;margin:0;font-size:12px;color:var(--color-text-4);line-height:1.5}.comment-box-guest-input{height:32px;padding:0 10px;border:1px solid var(--j13-border);border-radius:6px;font-size:13px;color:var(--color-text-1);background:var(--color-bg-1);outline:none;transition:border-color .2s}.comment-box-guest-input:focus{border-color:rgb(var(--primary-6))}.comment-box-guest-input::-moz-placeholder{color:var(--color-text-4)}.comment-box-guest-input::placeholder{color:var(--color-text-4)}.comment-box-toolbar{display:flex;align-items:center;gap:16px;margin-top:8px}.comment-box-owo{border:none;background:none;padding:2px 6px;font-size:13px;font-weight:600;color:var(--color-text-2);cursor:pointer;border-radius:4px;transition:background .15s,color .15s}.comment-box-owo:hover,.comment-box-owo.active{background:#27ccff1f;color:#27c}.comment-box-private{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-3);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.comment-box-private-hint{margin-left:-8px;font-size:11px;color:var(--color-text-4)}.emoji-picker{display:grid;grid-template-columns:repeat(12,1fr);gap:2px;margin-top:8px;padding:10px;border:1px solid #dcdfe6;border-radius:8px;background:var(--color-bg-1);max-height:200px;overflow-y:auto;box-shadow:0 2px 12px #00000014}.emoji-picker-item{border:none;background:none;font-size:20px;line-height:1;padding:4px;cursor:pointer;border-radius:4px;transition:background .1s}.emoji-picker-item:hover,.emoji-picker-item:focus-visible,.emoji-picker-item--active{background:var(--color-fill-2);outline:none}.emoji-picker-item:focus-visible{box-shadow:inset 0 0 0 2px var(--j13-green)}.waline-comment{display:flex;gap:12px;padding:16px 20px;border-bottom:1px solid var(--j13-border-light)}.waline-comment.nested{display:grid;grid-template-columns:32px 1fr;gap:6px 10px;align-items:start;padding:12px 0 0;border-bottom:none}.waline-comment.highlight{animation:floor-highlight 2s ease-out}@keyframes floor-highlight{0%,30%{background:var(--j13-green-bg)}to{background:transparent}}.waline-replies{margin-top:8px}.waline-comment.nested .waline-comment-avatar{grid-column:1;grid-row:1;width:32px;height:32px;font-size:13px}.waline-comment.nested .waline-comment-main{display:contents}.waline-comment.nested .waline-comment-head{grid-column:2;grid-row:1;margin-bottom:0;align-self:center;min-width:0}.waline-comment.nested .waline-comment-bubble,.waline-comment.nested .waline-comment-private-mask,.waline-comment.nested .waline-comment-edit,.waline-comment.nested .waline-comment-meta,.waline-comment.nested .comment-box-wrap.inline,.waline-comment.nested .waline-replies{grid-column:1 / -1}.waline-comment.nested .waline-replies{margin-top:4px}.waline-comment-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;overflow:hidden;background:var(--j13-green);color:#fff;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center}.waline-comment-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.waline-comment-avatar.guest{background:var(--color-fill-3);color:var(--color-text-3)}.waline-comment-main{flex:1;min-width:0}.waline-comment-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.waline-comment-author{font-size:14px;font-weight:400;color:var(--color-text-1);text-decoration:none;min-width:0}a.waline-comment-author:hover{color:var(--j13-green);text-decoration:none}.waline-comment-like{margin-left:auto;display:inline-flex;align-items:center;gap:4px;border:none;background:none;padding:2px 4px;font-size:12px;font-weight:500;color:var(--color-text-3);cursor:pointer;flex-shrink:0;border-radius:6px;transition:color .15s,background .15s}.waline-comment-like:hover{color:var(--j13-green);background:var(--j13-green-bg)}.waline-comment-like.is-liked{color:var(--j13-green)}.waline-comment-like:disabled{opacity:.6;cursor:wait}.waline-comment-floor{display:none}.waline-comment-bubble{padding:10px 14px;background:var(--j13-bg-block-muted);border-radius:10px;font-size:14px;line-height:1.65;color:var(--color-text-1);word-break:break-word}.waline-reply-at{color:inherit;font-weight:400;line-height:1.5}.waline-comment-private-mask{padding:14px 16px;text-align:center;font-size:13px;color:#999;line-height:1.5;border-radius:8px;background:repeating-linear-gradient(-45deg,#f6f6f6,#f6f6f6 8px,#ececec 8px,#ececec 16px)}.waline-comment-bubble .floor-body{font-size:inherit;line-height:inherit;word-break:break-word}.floor-body{font-size:14px;line-height:1.65;word-break:break-word}.waline-comment-bubble .quote-block{margin:6px 0;background:var(--j13-bg-block)}.waline-comment-meta{display:flex;align-items:center;gap:16px;margin-top:8px;font-size:12px;color:var(--color-text-3)}.waline-comment-date{display:flex;align-items:center;gap:4px}.waline-comment-reply-btn{display:flex;align-items:center;gap:4px;border:none;background:none;padding:0;font-size:12px;color:var(--color-text-3);cursor:pointer;transition:color .15s}.waline-comment-reply-btn:hover{color:var(--j13-green)}.waline-comment-approve-btn{color:var(--j13-green);font-weight:600}.waline-comment-approve-btn:hover{color:var(--j13-green-hover)}.waline-comment-edited{color:var(--color-text-4)}.waline-comment-edit{margin-top:4px}.waline-comment-edit-input{width:100%;min-height:72px;padding:10px 12px;border:1px solid var(--j13-border);border-radius:8px;background:var(--j13-bg-surface);color:var(--color-text-1);font-size:14px;line-height:1.6;resize:vertical}.waline-comment-edit-input:focus{outline:none;border-color:var(--j13-green)}.waline-comment-edit-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}@media (max-width: 768px){.comment-box-wrap{padding:12px 14px}.comment-box-guest-fields{grid-template-columns:1fr}.comment-box-private-hint{display:none}.comment-box-toolbar{flex-wrap:wrap;gap:10px 16px}.emoji-picker{grid-template-columns:repeat(8,1fr)}.waline-comment{padding:12px 14px}}.mention{color:var(--j13-green);font-weight:400}.quote-block{border-left:3px solid var(--j13-green);padding:8px 12px;margin:6px 0 8px;background:var(--j13-bg-block-muted);font-size:13px;color:var(--color-text-3);border-radius:0 8px 8px 0;line-height:1.5;white-space:pre-wrap;word-break:break-word}.quote-block.clickable{cursor:pointer;transition:background .15s,border-color .15s}.quote-block.clickable:hover{background:var(--j13-green-bg);border-left-color:var(--j13-green-hover)}@media (max-width: 768px){.post-detail-page{padding:12px 14px 20px;gap:12px}.post-detail-header{padding:12px 14px 16px}.post-detail-title{font-size:17px}.post-detail-actions{margin-top:20px;padding-top:16px;gap:10px}.post-detail-actions-primary,.post-detail-actions-manage{gap:8px}.comment-section-bar{padding:12px 14px 10px}.comment-section-bar:after{left:14px;width:32px}.comment-section:hover .comment-section-bar:after{width:46px}}.widget-card{background:var(--j13-bg-block);border:1px solid var(--j13-border-light);border-radius:10px;box-shadow:var(--j13-shadow-soft);margin-bottom:0;overflow:hidden;flex-shrink:0}.widget-card-head{display:flex;align-items:center;gap:6px;padding:10px 14px 8px;font-size:13px;font-weight:600;border-bottom:1px solid var(--j13-border-light);background:var(--j13-bg-block-muted);color:var(--color-text-2)}.widget-card-icon{width:15px;height:15px;flex-shrink:0}.widget-card-icon--hot{color:#e74c3c}.widget-card-icon--notice{color:#3498db}.widget-card-body{padding:6px 14px 12px}.widget-card--about{display:flex;flex-direction:column;border-bottom:none;min-height:72px}.widget-card--about .widget-card-body{display:flex;align-items:center;justify-content:center;text-align:center;padding:20px 16px}.widget-about-text{margin:0;font-size:12px;color:var(--color-text-3);line-height:1.65}.widget-about-title{margin:0 0 4px;color:var(--j13-green);font-size:13px;font-weight:700;line-height:1.4}.widget-about-desc{margin:0;font-size:12px;font-weight:400;color:var(--color-text-3);line-height:1.65;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.widget-about-slogan{margin:8px 0 0;font-size:11px;color:var(--color-text-4)}.widget-card-icon--welcome{color:var(--j13-green)}.widget-welcome-body{font-size:12px;color:var(--color-text-3);line-height:1.65}.widget-welcome-body p{margin:0 0 8px}.widget-welcome-body ul{margin:0;padding-left:1.1em;display:flex;flex-direction:column;gap:4px}.widget-item{width:100%;padding:7px 0;font-size:13px;font-family:inherit;color:inherit;text-align:left;cursor:pointer;border:none;border-bottom:1px solid var(--j13-border-light);background:transparent;display:flex;align-items:center;gap:8px;border-radius:4px;transition:background .12s,color .12s}.widget-item:last-child{border-bottom:none}.widget-item:hover,.widget-item:focus-visible{color:var(--j13-green);background:var(--j13-bg-block-accent);padding-left:6px;padding-right:6px;margin-left:-6px;margin-right:-6px}.widget-item:focus-visible{outline:2px solid var(--j13-green);outline-offset:1px}.widget-item-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-item-avatar{width:22px;height:22px;border-radius:50%;background:var(--j13-green);color:#fff;font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.widget-item-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.widget-item-time{font-size:11px;color:var(--color-text-4);flex-shrink:0}.widget-rank{min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;font-size:11px;font-weight:700;color:var(--color-text-3);background:var(--j13-bg-block-muted);flex-shrink:0}.widget-rank--1{color:#fff;background:linear-gradient(135deg,#e74c3c,#c0392b)}.widget-rank--2{color:#fff;background:linear-gradient(135deg,#e67e22,#d35400)}.widget-rank--3{color:#fff;background:linear-gradient(135deg,#f1c40f,#e67e22)}.widget-empty{font-size:13px;color:var(--color-text-3);padding:8px 0}.widget-empty--inline{padding:0}.profile-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.profile-header-card{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"avatar info" "stats stats";align-items:start;gap:20px 24px;padding:24px;margin-bottom:16px;background:var(--j13-bg-block);border:1px solid var(--j13-border-light);border-radius:12px;box-shadow:var(--j13-shadow-soft);transition:border-color .2s,box-shadow .2s}.profile-header-card>.profile-avatar-btn{grid-area:avatar}.profile-header-card>.profile-header-info{grid-area:info}.profile-header-card>.profile-stat-grid{grid-area:stats}.profile-header-card>input[type=file]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.profile-header-card--dragover{border-color:color-mix(in srgb,var(--j13-green) 50%,var(--j13-border-light));box-shadow:0 0 0 3px color-mix(in srgb,var(--j13-green) 15%,transparent)}.profile-drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:12px;background:color-mix(in srgb,var(--j13-green) 12%,var(--j13-bg-block));color:var(--j13-green);font-size:14px;font-weight:500;pointer-events:none}.profile-avatar-btn{flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;border-radius:50%;line-height:0}.profile-avatar-btn:disabled{cursor:not-allowed}.profile-avatar-lg{position:relative;width:88px;height:88px;border-radius:50%;background:var(--j13-green);color:#fff;font-size:32px;font-weight:600;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:box-shadow .2s}.profile-avatar-lg--pending{box-shadow:0 0 0 3px color-mix(in srgb,var(--j13-green) 40%,transparent)}.profile-avatar-lg img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.profile-avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000073;color:#fff;opacity:0;transition:opacity .2s}.profile-avatar-btn:hover .profile-avatar-overlay,.profile-avatar-btn:focus-visible .profile-avatar-overlay{opacity:1}.profile-avatar-btn:disabled .profile-avatar-overlay{opacity:1}.profile-header-info{flex:1;min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.profile-header-main{min-width:0}.profile-name-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:4px}.profile-display-name{margin:0;font-size:22px;font-weight:600;line-height:1.3}.profile-username{font-size:13px;color:var(--color-text-3)}.profile-id-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}.profile-id-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;background:color-mix(in srgb,var(--j13-green) 10%,var(--j13-bg-surface));color:var(--j13-green);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.profile-id-copy{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border:1px solid var(--j13-border-light);border-radius:6px;background:var(--j13-bg-surface);color:var(--color-text-3);font-size:12px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.profile-id-copy:hover{border-color:var(--j13-green);color:var(--j13-green)}.profile-meta-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px 16px;margin:14px 0 0}.profile-meta-list dt{margin:0;font-size:11px;color:var(--color-text-4);letter-spacing:.02em}.profile-meta-list dd{margin:2px 0 0;font-size:13px;color:var(--color-text-2);word-break:break-all}.profile-avatar-tip{margin:10px 0 0;font-size:12px;color:var(--color-text-3);line-height:1.4}.profile-signature{margin:12px 0 0;font-size:13px;line-height:1.55;color:var(--color-text-2);white-space:pre-wrap;word-break:break-word}.profile-signature--empty{color:var(--color-text-4);font-style:italic}.profile-form-divider{height:1px;margin:24px 0;background:var(--j13-border-light)}.profile-posts-heading{display:flex;align-items:center;gap:8px;margin:8px 0 12px}.profile-header-card--public .profile-stat-grid{grid-template-columns:repeat(auto-fit,minmax(72px,1fr))}.user-link{color:inherit;text-decoration:none;transition:color .12s}.user-link:hover,.user-link:focus-visible{color:var(--j13-green);text-decoration:none}.user-link--static{cursor:default}.user-link--avatar-only{flex-shrink:0}a.user-link--avatar-only:hover,a.user-link--avatar-only:focus-visible{color:#fff;outline:none}.post-meta-user{font-weight:500}.post-detail-author-name.user-link{font-size:inherit;font-weight:400}.waline-comment-author.user-link{font-weight:400}.widget-item--comment{cursor:default}.widget-item.widget-item--comment:hover,.widget-item.widget-item--comment:focus-visible,.widget-item.widget-item--comment:focus-within{color:inherit;padding-left:0;padding-right:0;margin-left:0;margin-right:0;background:var(--j13-bg-block-accent)}.widget-item--comment .widget-item-title{color:var(--color-text-2);transition:color .12s}.widget-item-comment-main{flex:1;min-width:0;display:flex;align-items:center;gap:8px;margin:0;padding:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.widget-item-comment-main:hover .widget-item-title,.widget-item-comment-main:focus-visible .widget-item-title{color:var(--j13-green)}.widget-item-comment-main:focus-visible{outline:none}a.widget-item-avatar.user-link{text-decoration:none}.post-revision-editor-link{font-weight:500}.profile-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding-top:4px;border-top:1px solid var(--j13-border-light)}.profile-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border:1px solid transparent;border-radius:10px;background:var(--j13-bg-surface);color:var(--color-text-3);font:inherit;cursor:default;transition:border-color .15s,background .15s,color .15s}button.profile-stat{cursor:pointer}button.profile-stat:hover{border-color:color-mix(in srgb,var(--j13-green) 35%,var(--j13-border-light));color:var(--j13-green);background:color-mix(in srgb,var(--j13-green) 6%,var(--j13-bg-surface))}.profile-stat strong{font-size:18px;font-weight:700;color:var(--color-text-1);font-variant-numeric:tabular-nums;line-height:1.2}button.profile-stat:hover strong{color:var(--j13-green)}.profile-stat span{font-size:12px}.profile-tabs{display:flex;gap:4px;margin:4px 0 16px;padding:4px;border:1px solid var(--j13-border-light);border-radius:12px;background:var(--j13-bg-block);overflow-x:auto}.profile-tab{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--color-text-3);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.profile-tab:hover{color:var(--color-text-1);background:var(--j13-bg-surface)}.profile-tab.active{color:var(--j13-green);background:color-mix(in srgb,var(--j13-green) 10%,var(--j13-bg-surface));box-shadow:var(--j13-shadow-soft)}.profile-tab-count{min-width:1.4em;padding:0 6px;border-radius:999px;background:color-mix(in srgb,var(--j13-green) 14%,transparent);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.profile-panel{margin-bottom:24px}.profile-avatar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.profile-avatar-hint{font-size:13px;color:var(--color-text-3);white-space:nowrap}.profile-form{display:flex;flex-direction:column;gap:16px}.profile-form-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px}.profile-form-footer--end{justify-content:flex-end}.profile-form-hint{font-size:12px;color:var(--color-text-3);line-height:1.4}@media (max-width: 640px){.profile-header-card{grid-template-columns:1fr;grid-template-areas:"avatar" "info" "stats";justify-items:center;text-align:center;padding:20px 16px}.profile-header-info{flex-direction:column;align-items:center;width:100%}.profile-name-row,.profile-id-row{justify-content:center}.profile-meta-list{width:100%;text-align:left}.profile-stat-grid{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.profile-form-footer{flex-direction:column;align-items:stretch}.profile-form-hint{text-align:center}}.avatar-crop-dialog{max-width:420px;padding:20px}.avatar-crop-stage{position:relative;width:100%;height:280px;border-radius:8px;overflow:hidden;background:#111}.avatar-crop-loading{display:flex;align-items:center;justify-content:center;height:100%}.avatar-crop-zoom{display:flex;align-items:center;gap:12px;padding:4px 0}.avatar-crop-zoom-label{flex-shrink:0;font-size:13px;color:var(--color-text-3);width:32px}.avatar-crop-zoom input[type=range]{flex:1;height:4px;accent-color:var(--j13-green);cursor:pointer}.admin-entry-card{border-color:color-mix(in srgb,var(--j13-green) 25%,var(--j13-border));background:var(--j13-bg-block-accent)}.page-loader{display:flex;align-items:center;justify-content:center;width:100%;flex:1;min-height:200px;padding:48px 24px;box-sizing:border-box}.page-loader--viewport{min-height:100dvh;height:100%;background:var(--j13-bg-page)}.auth-page{position:relative;height:100%;min-height:100dvh;overflow-y:auto;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(24,160,88,.14),transparent 65%),radial-gradient(ellipse 50% 40% at 100% 100%,rgba(24,160,88,.06),transparent 55%),var(--j13-bg-page)}.dark .auth-page{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(35,195,107,.12),transparent 65%),radial-gradient(ellipse 50% 40% at 100% 100%,rgba(35,195,107,.05),transparent 55%),var(--j13-bg-page)}.auth-brand-link{display:flex;justify-content:center;text-decoration:none}.auth-brand-link .logo-mark{margin-bottom:16px;transition:transform .15s ease,box-shadow .15s ease}.auth-brand-link:hover .logo-mark{transform:translateY(-1px);box-shadow:0 4px 12px #18a05838}.auth-back{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:16px;padding:10px 12px;border:1px solid var(--j13-border);border-radius:8px;font-size:13px;font-weight:500;color:var(--color-text-2);text-decoration:none;background:var(--j13-bg-block-muted);transition:color .15s,background .15s,border-color .15s}.auth-back:hover{color:var(--j13-green);background:var(--j13-green-bg);border-color:color-mix(in srgb,var(--j13-green) 35%,var(--j13-border))}.auth-box{position:relative;width:100%;max-width:400px;background:var(--j13-bg-surface);border:1px solid var(--j13-border);border-radius:12px;box-shadow:var(--j13-shadow-card);padding:32px}.auth-box--loading{display:flex;align-items:center;justify-content:center;min-height:220px}.auth-password-field{position:relative}.auth-password-field__input{padding-right:40px}.auth-password-field__toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--color-text-4);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.auth-password-field__toggle:hover{color:var(--color-text-2);background:var(--j13-bg-block-muted)}.auth-box .logo-mark{width:48px;height:48px;border-radius:12px;background:var(--j13-green);color:#fff;font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto;-o-object-fit:cover;object-fit:cover}.auth-box h1{text-align:center;font-size:20px;margin:0 0 4px}.auth-box .subtitle{text-align:center;font-size:13px;color:var(--color-text-3);margin-bottom:24px}.auth-captcha-row{display:flex;gap:10px;align-items:stretch}.auth-captcha-row input{flex:1;min-width:0}.auth-captcha-img{flex-shrink:0;width:120px;height:40px;padding:0;border:1px solid var(--j13-border);border-radius:8px;background:var(--j13-bg-page);cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--color-text-3)}.auth-captcha-img img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.auth-captcha-img:hover{border-color:var(--j13-green)}.auth-code-btn{flex-shrink:0;min-width:108px;height:40px}.auth-hint{margin:0;font-size:12px;color:var(--color-text-3);line-height:1.5}.auth-email-code-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.28em;font-variant-numeric:tabular-nums}.app-body--compose,.content-workspace--compose{background:var(--j13-bg-workspace)}.main-content--compose{overflow:hidden;background:var(--j13-bg-workspace)}.compose-page{--compose-header-sticky-h: 57px;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--j13-bg-workspace)}.compose-page--empty{align-items:center;justify-content:center}.compose-empty-card{text-align:center;padding:48px 40px;background:var(--j13-bg-surface);border:1px solid var(--j13-border);border-radius:16px;box-shadow:var(--j13-shadow-card);max-width:400px}.compose-empty-icon{width:56px;height:56px;margin:0 auto 20px;border-radius:14px;background:var(--j13-green-bg);color:var(--j13-green);display:flex;align-items:center;justify-content:center}.compose-empty-card h2{margin:0 0 8px;font-size:18px;font-weight:600}.compose-empty-card p{margin:0 0 24px;font-size:14px;color:var(--color-text-3);line-height:1.5}.compose-primary-btn,.compose-ghost-btn{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:background .15s,transform .1s}.compose-primary-btn{background:var(--j13-green);color:#fff}.compose-primary-btn:hover{background:var(--j13-green-hover)}.compose-ghost-btn{background:var(--j13-bg-block-muted);color:var(--color-text-2)}.compose-canvas{flex:1;min-height:0;display:flex;flex-direction:column;max-width:calc(var(--j13-article-read-w) + 64px);width:100%;margin:0 auto;padding:16px 20px;box-sizing:border-box;overflow:hidden;transition:max-width .2s ease}.compose-page:has(.article-editor--markdown) .compose-canvas{max-width:min(1560px,100%)}.compose-shell{flex:1;min-height:0;display:flex;flex-direction:column;min-width:0;max-width:100%;width:100%;background:var(--j13-bg-surface);border:1px solid var(--j13-border-light);border-radius:12px;box-shadow:var(--j13-shadow-card);overflow:hidden}.compose-shell-body{flex:1;min-height:0;display:flex;flex-direction:column;min-width:0;max-width:100%;overflow:hidden;border-radius:0 0 12px 12px}.compose-header{position:relative;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;flex-shrink:0;background:var(--j13-bg-surface);border-bottom:1px solid var(--j13-border-light);border-radius:12px 12px 0 0;box-shadow:0 1px #0f172a08}.compose-header-left{display:flex;align-items:center;gap:10px;min-width:0}.compose-header-title{margin:0;font-size:15px;font-weight:600;color:var(--color-text-1);line-height:1.3;white-space:nowrap}.compose-back{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--j13-border);border-radius:8px;background:var(--j13-bg-surface);color:var(--color-text-2);font-size:13px;cursor:pointer;transition:border-color .15s,color .15s,background .15s;flex-shrink:0}.compose-back:hover{border-color:var(--j13-green);color:var(--j13-green);background:var(--j13-green-bg)}.compose-publish-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border:none;border-radius:8px;background:var(--j13-green);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.compose-publish-btn:hover:not(:disabled){background:var(--j13-green-hover)}.compose-publish-btn:disabled{opacity:.6;cursor:not-allowed}.compose-header-actions{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.compose-draft-hint{font-size:12px;color:var(--color-text-3);max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compose-edit-window{color:var(--color-text-3);font-weight:400}.compose-context{display:flex;flex-direction:column;gap:10px;padding:14px 20px;border-bottom:1px solid var(--j13-border-light);background:var(--j13-bg-surface);flex-shrink:0}.compose-context-row{display:flex;align-items:flex-start;gap:12px;min-width:0}.compose-context-label{flex-shrink:0;width:32px;margin-top:6px;font-size:12px;font-weight:500;color:var(--color-text-3)}.compose-context-row--tags .compose-context-label{margin-top:9px}.compose-context-row--tags .compose-tags-field{flex:1;min-width:0}.compose-board-pills,.compose-type-pills{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.compose-type-hint{font-size:12px;color:var(--color-text-3);align-self:center}.compose-board-pill,.compose-type-pill{padding:5px 12px;border:1px solid var(--j13-border);border-radius:999px;background:var(--j13-bg-block-muted);color:var(--color-text-2);font-size:13px;line-height:1.3;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.compose-board-pill:hover,.compose-type-pill:hover{border-color:var(--j13-green);color:var(--j13-green);background:var(--j13-green-bg)}.compose-board-pill.active,.compose-type-pill.active{background:var(--j13-green);border-color:var(--j13-green);color:#fff;font-weight:500}.compose-tags-field{display:flex;align-items:flex-start;gap:8px;padding:6px 12px;border:1px solid var(--j13-border);border-radius:8px;background:var(--j13-bg-block-muted);min-width:0;max-width:100%;cursor:text;transition:border-color .15s,background .15s}.compose-tags-field:focus-within{border-color:var(--j13-green);background:var(--j13-bg-surface)}.compose-tags-field--disabled{opacity:.6;cursor:not-allowed}.compose-tags-icon{color:var(--color-text-4);flex-shrink:0;margin-top:5px}.compose-tags-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex:1;min-width:0}.compose-tag-chip{position:relative;display:inline-flex;align-items:center;max-width:100%;height:26px;padding:0 10px;border-radius:999px;background:var(--j13-green-bg);color:var(--j13-green);font-size:12px;font-weight:500;line-height:1}.compose-tag-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.compose-tag-chip-remove{position:absolute;top:-5px;right:-5px;width:16px;height:16px;padding:0;border:1px solid var(--j13-bg-surface);border-radius:50%;background:var(--color-text-2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:scale(.85);pointer-events:none;transition:opacity .12s ease,transform .12s ease,background .12s ease}.compose-tag-chip:hover .compose-tag-chip-remove,.compose-tag-chip:focus-within .compose-tag-chip-remove{opacity:1;transform:scale(1);pointer-events:auto}.compose-tag-chip-remove:hover{background:#e53935}.compose-tag-chip-remove:focus-visible{opacity:1;transform:scale(1);pointer-events:auto;outline:2px solid var(--j13-green);outline-offset:1px}@media (hover: none){.compose-tag-chip-remove{opacity:.85;transform:scale(1);pointer-events:auto}}.compose-tags-input{flex:1;min-width:96px;height:26px;border:none;background:transparent;outline:none;font-size:13px;font-family:inherit;color:var(--color-text-1);padding:0 2px}.compose-tags-input::-moz-placeholder{color:var(--color-text-4)}.compose-tags-input::placeholder{color:var(--color-text-4)}.compose-document{flex:1;min-height:0;display:flex;flex-direction:column;min-width:0;max-width:100%;padding:0;overflow:hidden}.compose-title{width:100%;margin:0;padding:20px 24px 12px;border:none;background:transparent;font-size:24px;font-weight:600;line-height:1.35;letter-spacing:-.01em;color:var(--color-text-1);outline:none;flex-shrink:0}.compose-title::-moz-placeholder{color:var(--color-text-4);font-weight:500}.compose-title::placeholder{color:var(--color-text-4);font-weight:500}.compose-subtitle{margin-top:8px;font-size:13px;color:var(--color-text-3)}.compose-subtitle strong{color:var(--j13-green);font-weight:500}.article-editor{flex:1;min-height:0;display:flex;flex-direction:column;min-width:0;max-width:100%;border-top:1px solid var(--j13-border-light);overflow:hidden}.article-editor-bar{position:relative;z-index:30;display:flex;align-items:center;gap:12px;margin:0;padding:8px 16px;flex-shrink:0;flex-wrap:wrap;background:var(--j13-bg-surface);border-bottom:1px solid var(--j13-border-light);box-shadow:0 1px #0f172a05}.ui-tooltip{position:relative;display:inline-flex}.ui-tooltip-bubble{position:absolute;z-index:50;pointer-events:none;opacity:0;visibility:hidden;width:-moz-max-content;width:max-content;background:var(--j13-bg-surface);border:1px solid var(--j13-border);border-radius:8px;box-shadow:var(--j13-shadow-card);transition:opacity .1s ease,transform .1s ease,visibility .1s}.ui-tooltip-bubble--compact{padding:5px 10px}.ui-tooltip-bubble--rich{min-width:148px;max-width:220px;padding:7px 12px}.ui-tooltip-bubble__title{display:block;font-size:12px;font-weight:500;line-height:1.4;color:var(--color-text-1)}.ui-tooltip-bubble--compact .ui-tooltip-bubble__title{white-space:nowrap}.ui-tooltip-bubble__hint{display:block;margin-top:3px;font-size:11px;line-height:1.45;color:var(--color-text-3)}.ui-tooltip-bubble--bottom{top:calc(100% + 8px)}.ui-tooltip-bubble--top{bottom:calc(100% + 8px)}.ui-tooltip-bubble--center.ui-tooltip-bubble--bottom{left:50%;transform:translate(-50%) translateY(-2px)}.ui-tooltip-bubble--center.ui-tooltip-bubble--top{left:50%;transform:translate(-50%) translateY(2px)}.ui-tooltip-bubble--start.ui-tooltip-bubble--bottom,.ui-tooltip-bubble--start.ui-tooltip-bubble--top{left:0;transform:translateY(-2px)}.ui-tooltip-bubble--end.ui-tooltip-bubble--bottom,.ui-tooltip-bubble--end.ui-tooltip-bubble--top{right:0;left:auto;transform:translateY(-2px)}.ui-tooltip:hover .ui-tooltip-bubble,.ui-tooltip:focus-within .ui-tooltip-bubble{opacity:1;visibility:visible}.ui-tooltip:hover .ui-tooltip-bubble--center.ui-tooltip-bubble--bottom,.ui-tooltip:focus-within .ui-tooltip-bubble--center.ui-tooltip-bubble--bottom{transform:translate(-50%) translateY(0)}.ui-tooltip:hover .ui-tooltip-bubble--center.ui-tooltip-bubble--top,.ui-tooltip:focus-within .ui-tooltip-bubble--center.ui-tooltip-bubble--top{transform:translate(-50%) translateY(0)}.ui-tooltip:hover .ui-tooltip-bubble--start.ui-tooltip-bubble--bottom,.ui-tooltip:hover .ui-tooltip-bubble--start.ui-tooltip-bubble--top,.ui-tooltip:hover .ui-tooltip-bubble--end.ui-tooltip-bubble--bottom,.ui-tooltip:hover .ui-tooltip-bubble--end.ui-tooltip-bubble--top,.ui-tooltip:focus-within .ui-tooltip-bubble--start.ui-tooltip-bubble--bottom,.ui-tooltip:focus-within .ui-tooltip-bubble--start.ui-tooltip-bubble--top,.ui-tooltip:focus-within .ui-tooltip-bubble--end.ui-tooltip-bubble--bottom,.ui-tooltip:focus-within .ui-tooltip-bubble--end.ui-tooltip-bubble--top{transform:translateY(0)}.article-editor-tools{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.article-tool-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--color-text-2);font-size:13px;cursor:pointer;transition:background .12s,color .12s}.article-tool-btn:hover{background:var(--j13-bg-block-muted);color:var(--j13-green)}.article-tool-btn.active{background:#18a0581f;color:var(--j13-green)}.article-tool-btn strong{font-size:12px;font-weight:700}.article-editor-body{flex:1;min-height:0;display:flex;flex-direction:column;min-width:0;max-width:100%;overflow:hidden}.article-editor-pane{display:flex;flex:1;min-width:0;max-width:100%;min-height:0;border:none;border-radius:0;overflow:hidden;background:transparent;box-shadow:none}.article-editor-pane--source{min-height:0;border:1px solid var(--j13-border-light);border-radius:12px;background:var(--j13-bg-block)}.article-editor-scroll ::-moz-selection,.article-editor-markdown-input::-moz-selection{background:color-mix(in srgb,var(--j13-green) 24%,#d6e8f0);color:inherit}.article-editor-scroll ::selection,.article-editor-markdown-input::selection{background:color-mix(in srgb,var(--j13-green) 24%,#d6e8f0);color:inherit}.article-prosemirror ::-moz-selection{background:color-mix(in srgb,var(--j13-green) 24%,#d6e8f0);color:inherit}.article-prosemirror ::selection{background:color-mix(in srgb,var(--j13-green) 24%,#d6e8f0);color:inherit}.article-prosemirror .ProseMirror-selectednode{outline:2px solid color-mix(in srgb,var(--j13-green) 45%,transparent);outline-offset:2px}.dark .article-editor-scroll ::-moz-selection,.dark .article-editor-markdown-input::-moz-selection,.dark .article-prosemirror ::-moz-selection{background:color-mix(in srgb,var(--j13-green) 35%,#2a3f50);color:inherit}.dark .article-editor-scroll ::selection,.dark .article-editor-markdown-input::selection,.dark .article-prosemirror ::selection{background:color-mix(in srgb,var(--j13-green) 35%,#2a3f50);color:inherit}.article-editor-scroll{flex:1;min-width:0;min-height:0;max-width:100%;overflow:auto;background:transparent}.article-editor-pane--source .article-editor-scroll{background:var(--j13-bg-block)}.article-editor-content{flex:1;min-height:0;display:flex;flex-direction:column}.article-editor-content .tiptap,.article-prosemirror{flex:1;min-width:0;max-width:100%;min-height:200px;padding:16px 24px 32px;outline:none;font-size:15.5px;line-height:1.7;overflow-wrap:anywhere;word-break:break-word}.article-prosemirror.post-detail-content table,.article-prosemirror table{width:100%;max-width:100%;margin:1em 0;box-sizing:border-box;table-layout:fixed;border:1px solid color-mix(in srgb,var(--j13-border) 80%,var(--color-text-3));border-radius:8px;overflow:hidden;background:var(--j13-bg-surface)}.article-prosemirror.post-detail-content th,.article-prosemirror.post-detail-content td,.article-prosemirror th,.article-prosemirror td{white-space:normal;overflow-wrap:anywhere;word-break:break-word;position:relative;min-width:72px;min-height:2.4em;padding:8px 10px;border-right:1px solid color-mix(in srgb,var(--j13-border) 80%,var(--color-text-3));border-bottom:1px solid color-mix(in srgb,var(--j13-border) 80%,var(--color-text-3));vertical-align:top;background-clip:padding-box}.article-prosemirror.post-detail-content th:last-child,.article-prosemirror.post-detail-content td:last-child,.article-prosemirror th:last-child,.article-prosemirror td:last-child{border-right:none}.article-prosemirror.post-detail-content tr:last-child th,.article-prosemirror.post-detail-content tr:last-child td,.article-prosemirror tr:last-child th,.article-prosemirror tr:last-child td{border-bottom:none}.article-prosemirror.post-detail-content th,.article-prosemirror th{background:color-mix(in srgb,var(--j13-bg-block-muted) 92%,var(--j13-bg-surface));font-weight:600;font-size:13px;color:var(--color-text-2)}.article-prosemirror.post-detail-content tbody tr:nth-child(2n) td,.article-prosemirror tbody tr:nth-child(2n) td,.article-prosemirror.post-detail-content tbody tr:hover td,.article-prosemirror tbody tr:hover td{background:transparent}.article-prosemirror.post-detail-content th.selectedCell,.article-prosemirror.post-detail-content td.selectedCell,.article-prosemirror th.selectedCell,.article-prosemirror td.selectedCell{background:color-mix(in srgb,var(--j13-green) 12%,var(--j13-bg-surface))!important;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--j13-green) 55%,transparent)}.article-prosemirror table p{margin:0;min-height:1.45em}.article-prosemirror table p+p{margin-top:.35em}.article-table-dialog__body{display:flex;flex-direction:column;gap:18px;margin-top:4px}.article-table-dialog__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.article-table-dialog__field{display:flex;flex-direction:column;gap:8px}.article-table-dialog__toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--j13-border-light);border-radius:12px;background:var(--j13-bg-block-muted)}.article-table-dialog__toggle-text{display:flex;flex-direction:column;gap:4px;min-width:0}.article-table-dialog__toggle-text p{margin:0;font-size:12px;color:var(--color-text-3);line-height:1.4}.article-table-dialog__footer{gap:8px}.article-table-dialog__remove{margin-right:auto}.article-editor--markdown .article-editor-body{min-height:0}.compose-page:has(.article-editor--markdown) .article-editor-markdown{min-height:0}.article-prosemirror p.is-editor-empty:first-child:before{color:var(--color-text-4);content:attr(data-placeholder);float:left;height:0;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.article-prosemirror p.is-editor-empty::-moz-selection,.article-prosemirror p.is-editor-empty *::-moz-selection{background:transparent}.article-prosemirror p.is-editor-empty::selection,.article-prosemirror p.is-editor-empty *::selection{background:transparent}.article-prosemirror.ProseMirror-focused p.is-editor-empty::-moz-selection{background:transparent}.article-prosemirror.ProseMirror-focused p.is-editor-empty::selection{background:transparent}.article-prosemirror a{color:var(--j13-green);text-decoration:underline;text-underline-offset:2px}.article-prosemirror img{max-width:100%;height:auto;border-radius:8px;margin:12px 0}.image-group{margin:1.25em 0;border-radius:12px}.image-group__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding:6px 8px;border:1px solid var(--j13-border-light);border-radius:10px;background:var(--j13-bg-block-muted)}.image-group__toolbar-label{font-size:12px;font-weight:600;color:var(--color-text-3)}.image-group__toolbar-actions{display:flex;flex-wrap:wrap;gap:4px}.image-group__layout-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--color-text-3);font-size:12px;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.image-group__layout-btn:hover{color:var(--j13-green);background:color-mix(in srgb,var(--j13-green) 8%,transparent)}.image-group__layout-btn.is-active{color:var(--j13-green);border-color:color-mix(in srgb,var(--j13-green) 35%,transparent);background:color-mix(in srgb,var(--j13-green) 10%,transparent)}.image-group--selected{outline:2px solid color-mix(in srgb,var(--j13-green) 45%,transparent);outline-offset:3px}.image-group__grid,.image-group[data-image-group]:not(:has(.image-group__toolbar)){display:grid;gap:8px}.article-prosemirror .image-group__grid>div{display:contents}.image-group--cols-2 .image-group__grid,.image-group--cols-2[data-image-group]:not(:has(.image-group__toolbar)){grid-template-columns:repeat(2,minmax(0,1fr))}.image-group--cols-3 .image-group__grid,.image-group--cols-3[data-image-group]:not(:has(.image-group__toolbar)){grid-template-columns:repeat(3,minmax(0,1fr))}.image-group--cols-4 .image-group__grid,.image-group--cols-4[data-image-group]:not(:has(.image-group__toolbar)){grid-template-columns:repeat(4,minmax(0,1fr))}.image-group__grid img,.image-group__grid .ProseMirror-selectednode,.image-group[data-image-group]:not(:has(.image-group__toolbar))>img{width:100%;max-width:none;height:auto;aspect-ratio:1 / 1;-o-object-fit:cover;object-fit:cover;margin:0;border-radius:10px;box-shadow:var(--j13-shadow-soft)}.article-prosemirror .image-group__grid img{margin:0;max-width:none}.post-detail-content img.article-img--wide,.article-prosemirror img.article-img--wide{width:100%;max-width:min(100%,960px);margin-left:auto;margin-right:auto;display:block;clear:both;float:none}.post-detail-content img.article-img--float-left,.article-prosemirror img.article-img--float-left{float:left;clear:none;display:block;width:min(42%,280px);max-width:42%;margin:0 1em .75em 0;shape-outside:margin-box}.post-detail-content img.article-img--float-right,.article-prosemirror img.article-img--float-right{float:right;clear:none;display:block;width:min(42%,280px);max-width:42%;margin:0 0 .75em 1em;shape-outside:margin-box}.post-detail-content img.article-img--float-left+p,.post-detail-content img.article-img--float-right+p,.article-prosemirror img.article-img--float-left+p,.article-prosemirror img.article-img--float-right+p,.post-detail-content img.article-img--float-left+p:is(:empty,:has(>br:only-child))+p,.post-detail-content img.article-img--float-right+p:is(:empty,:has(>br:only-child))+p,.article-prosemirror img.article-img--float-left+p:is(:empty,:has(>br:only-child))+p,.article-prosemirror img.article-img--float-right+p:is(:empty,:has(>br:only-child))+p{margin-top:-.4em}.post-detail-content .image-group img,.article-prosemirror .image-group img{clear:none;float:none}.post-detail-content .image-group,.article-prosemirror .image-group,.post-detail-content .article-clear-float,.article-prosemirror .article-clear-float,.post-detail-content [data-clear-float],.article-prosemirror [data-clear-float]{clear:both}.article-prosemirror{display:flow-root}@media (max-width: 640px){.image-group--cols-3 .image-group__grid,.image-group--cols-3[data-image-group]:not(:has(.image-group__toolbar)),.image-group--cols-4 .image-group__grid,.image-group--cols-4[data-image-group]:not(:has(.image-group__toolbar)){grid-template-columns:repeat(2,minmax(0,1fr))}.image-group__layout-btn span{display:none}.post-detail-content img.article-img--float-left,.post-detail-content img.article-img--float-right,.article-prosemirror img.article-img--float-left,.article-prosemirror img.article-img--float-right{float:none;width:100%;max-width:100%;margin:.75em 0}}.editor-members-only.post-members-only--visible{border:none;border-left:3px solid rgba(24,160,88,.5);background:#18a0580a;border-radius:0 8px 8px 0;overflow:hidden;box-shadow:none;padding:0}.editor-members-only .post-members-only__badge{display:flex;align-items:center;flex-wrap:nowrap;gap:6px;margin:0;padding:6px 12px;border-bottom:none;border-radius:0;background:transparent;color:var(--j13-green);font-size:12px;font-weight:600;width:100%}.editor-members-only .post-members-only__badge-icon{display:inline-flex;align-items:center;justify-content:center}.editor-members-only .post-members-only__body{padding:0 12px 12px;min-height:48px;background:transparent}.editor-members-only .post-members-only__body p.is-empty:before,.editor-members-only .post-members-only__body[data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--color-text-4);font-style:italic;pointer-events:none;float:left;height:0}.dark .editor-members-only .post-members-only__body{background:transparent}.editor-members-only{margin:16px 0}.editor-members-only--selected{background:#18a05812;box-shadow:inset 0 0 0 1px #18a05847}.editor-reply-only.post-reply-only--visible{border:none;border-left:3px solid rgba(194,120,3,.55);background:#c278030d;border-radius:0 8px 8px 0;overflow:hidden;box-shadow:none;padding:0}.editor-reply-only .post-reply-only__badge{display:flex;align-items:center;flex-wrap:nowrap;gap:6px;margin:0;padding:6px 12px;border-bottom:none;border-radius:0;background:transparent;color:#c27803;font-size:12px;font-weight:600;width:100%}.editor-reply-only .post-reply-only__badge-icon{display:inline-flex;align-items:center;justify-content:center}.editor-reply-only .post-reply-only__badge-actions{display:inline-flex;align-items:center;gap:4px;margin-left:auto}.editor-reply-only .post-reply-only__unwrap-btn{margin-left:0;padding:2px 8px;border:none;border-radius:12px;background:transparent;color:var(--color-text-3);font-size:11px;cursor:pointer}.editor-reply-only .post-reply-only__unwrap-btn:hover{color:#c27803;background:#c278031a}.editor-reply-only .post-reply-only__remove-btn{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border:none;border-radius:12px;background:transparent;color:var(--color-text-3);font-size:11px;cursor:pointer}.editor-reply-only .post-reply-only__remove-btn:hover{color:#c0392b;background:#c0392b14}.editor-reply-only--empty .post-reply-only__remove-btn{color:#c0392b}.editor-reply-only .post-reply-only__body{padding:0 12px 12px;min-height:48px;background:transparent}.editor-reply-only .post-reply-only__body p.is-empty:before,.editor-reply-only .post-reply-only__body[data-placeholder]:empty:before{content:attr(data-placeholder);color:var(--color-text-4);font-style:italic;pointer-events:none;float:left;height:0}.dark .editor-reply-only.post-reply-only--visible{border-left-color:#e8b84a8c;background:#e8b84a0f}.dark .editor-reply-only .post-reply-only__badge{color:#e8b84a}.editor-reply-only{margin:16px 0}.editor-reply-only--selected{background:#c2780314;box-shadow:inset 0 0 0 1px #c278034d}.article-editor-status{position:relative;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:10px 20px;border-top:1px solid var(--j13-border-light);background:var(--j13-bg-surface);box-shadow:0 -4px 12px #0f172a0a;font-size:12px;color:var(--color-text-4);flex-shrink:0;border-radius:0 0 12px 12px}.article-editor-status-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}.article-editor-wordcount{font-variant-numeric:tabular-nums;color:var(--color-text-3);font-weight:500}.article-editor-mode-label{color:var(--color-text-4)}.article-editor-status-sep{color:var(--color-text-4);opacity:.55}.article-editor-status-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.article-editor-view-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--j13-border-light);border-radius:6px;background:var(--j13-bg-block-muted);color:var(--color-text-2);font-size:12px;font-weight:500;cursor:pointer;transition:background .12s,border-color .12s,color .12s;flex-shrink:0}.article-editor-view-btn:hover{border-color:var(--j13-green);color:var(--j13-green);background:var(--j13-green-bg)}.article-editor-view-btn.active{border-color:#18a05866;color:var(--j13-green);background:#18a0581a}.article-editor--fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;margin:0!important;padding:12px 24px 0;background:var(--j13-bg-surface);border-top:none}.article-editor--fullscreen .article-editor-bar{top:0;margin:0 auto;padding:6px 8px}.article-editor--fullscreen .article-editor-status{margin:0 -24px;padding:10px 24px 14px;border-radius:0}.article-editor--fullscreen.article-editor--rich .article-editor-bar{width:100%;max-width:var(--j13-article-read-w);margin:0 auto}.article-editor--fullscreen .article-editor-body{min-height:0;flex:1}.article-editor--fullscreen .article-editor-pane,.article-editor--fullscreen .article-editor-scroll{flex:1;min-height:0;overflow:auto}.article-editor--fullscreen.article-editor--rich .article-editor-body{overflow-y:auto;padding:20px 0 0;background:var(--j13-bg-workspace)}.article-editor--fullscreen.article-editor--rich .article-editor-pane{width:100%;max-width:var(--j13-article-read-w);margin:0 auto;min-height:calc(100vh - 176px);border-radius:14px;background:var(--j13-bg-surface);border:1px solid var(--j13-border-light);box-shadow:0 8px 28px #0f172a0f}.article-editor--fullscreen .article-editor-scroll,.article-editor--fullscreen .article-editor-content .tiptap,.article-editor--fullscreen .article-prosemirror{min-height:calc(100vh - 220px)}.article-editor--fullscreen .article-editor-markdown{min-height:calc(100vh - 176px)}.article-editor--fullscreen .article-editor-markdown-input,.article-editor--fullscreen .article-editor-markdown-preview,.article-editor--fullscreen .article-editor-pane--source{min-height:calc(100vh - 220px)}.article-editor-tools--markdown{display:flex;align-items:center;gap:8px}.article-editor-tools--markdown-hint{font-size:12px;color:var(--color-text-3)}.article-link-dialog__footer{gap:8px}.article-codeblock-dialog__body{display:flex;flex-direction:column;gap:20px;margin-top:4px}.article-codeblock-dialog__section{display:flex;flex-direction:column;gap:10px}.article-codeblock-dialog__langs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:220px;overflow:auto;padding:10px;border:1px solid var(--j13-border-light);border-radius:12px;background:var(--j13-bg-block-muted)}.article-codeblock-dialog__lang{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:9px 12px;border:1px solid transparent;border-radius:9px;background:var(--j13-bg-surface);color:var(--color-text-1, inherit);font-size:13px;text-align:left;cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s}.article-codeblock-dialog__lang:hover{border-color:color-mix(in srgb,var(--j13-green) 25%,var(--j13-border))}.article-codeblock-dialog__lang.is-active{border-color:color-mix(in srgb,var(--j13-green) 45%,transparent);background:var(--j13-green-bg);color:var(--j13-green-hover);font-weight:600;box-shadow:0 0 0 1px color-mix(in srgb,var(--j13-green) 20%,transparent)}.article-codeblock-dialog__lang-id{font-size:11px;opacity:.55;font-family:ui-monospace,Consolas,monospace;font-weight:400}.article-codeblock-dialog__empty{grid-column:1 / -1;margin:0;padding:16px;font-size:13px;color:var(--color-text-3, #8b949e);text-align:center}.article-codeblock-dialog__codehint{display:inline;padding:1px 5px;border-radius:4px;background:var(--j13-bg-block-muted);font-family:ui-monospace,Consolas,monospace;font-size:11px;color:var(--color-text-2, inherit)}.article-codeblock-dialog__toggles{display:flex;flex-direction:column;gap:12px;padding-top:2px}.article-codeblock-dialog__toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--j13-border-light);border-radius:12px;background:var(--j13-bg-block-muted)}.article-codeblock-dialog__toggle-text{display:flex;flex-direction:column;gap:5px;min-width:0}.article-codeblock-dialog__toggle-text p{margin:0;font-size:12px;color:var(--color-text-3, #8b949e);line-height:1.45}.article-codeblock-dialog__footer{gap:8px;margin-top:4px}.article-codeblock-dialog__remove{margin-right:auto}@media (max-width: 560px){.article-codeblock-dialog__langs{grid-template-columns:repeat(2,minmax(0,1fr))}}.article-editor-markdown{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;padding:0;border-top:none;overflow:hidden}.article-editor--markdown .article-editor-pane--source{border:none;border-radius:0;border-right:1px solid var(--j13-border-light);min-height:0;height:100%}.article-editor--markdown .article-editor-markdown-preview{border:none;border-radius:0}.article-editor-markdown-input{display:block;width:100%;min-height:100%;padding:14px 16px 20px;border:none;outline:none;resize:none;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.65;color:var(--color-text-1);background:transparent}.article-editor-markdown-preview{display:flex;flex-direction:column;min-height:0;height:100%;background:var(--j13-bg-surface);border:1px solid var(--j13-border);border-radius:10px;overflow:hidden}.article-editor-markdown-preview-label{padding:8px 16px;border-bottom:1px solid var(--j13-border-light);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-4);flex-shrink:0}.article-editor-markdown-preview-body{flex:1;padding:14px 16px;overflow-y:auto}@media (max-width: 768px){.compose-page{--compose-header-sticky-h: 53px}.compose-canvas{padding:10px 12px 20px}.compose-shell{border-radius:10px}.compose-header{padding:10px 12px;gap:8px;border-radius:10px 10px 0 0}.compose-draft-hint,.compose-back span{display:none}.compose-back{padding:6px 8px}.compose-context{padding:12px;gap:8px}.compose-context-row{flex-direction:column;gap:6px}.compose-context-label,.compose-context-row--tags .compose-context-label{margin-top:0;width:auto}.compose-title{font-size:20px;padding:14px 14px 8px}.article-editor--fullscreen{padding:8px 12px 0}.article-editor--fullscreen .article-editor-bar{margin:0;padding:8px 0}.article-editor-markdown{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.article-editor--markdown .article-editor-pane--source{border-right:none;border-bottom:1px solid var(--j13-border-light)}.article-editor-pane--source{min-height:0}.article-editor--fullscreen.article-editor--rich .article-editor-pane{max-width:none;margin:0}.article-editor-bar{padding:8px 10px}.article-editor-content .tiptap,.article-prosemirror{min-height:160px;padding:12px 14px 20px}.article-editor-status{padding:10px 12px;flex-wrap:wrap;align-items:flex-start;border-radius:0 0 10px 10px}.article-editor--fullscreen .article-editor-status{margin:0 -12px;padding:10px 12px;border-radius:0}.article-editor-status-actions{width:100%;justify-content:flex-end}.compose-tags-field{min-width:0}}.admin-shell{min-height:100vh;background:hsl(var(--background))}.admin-topbar{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 20px;border-bottom:1px solid var(--j13-border);background:hsl(var(--card))}.admin-topbar-brand{display:flex;align-items:center;gap:10px}.admin-topbar-mark{width:32px;height:32px;border-radius:8px;background:var(--j13-green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;-o-object-fit:cover;object-fit:cover;flex-shrink:0}.admin-brand-preview{display:flex;align-items:center;gap:14px;padding:14px 16px;margin-bottom:16px;border:1px solid var(--j13-border-light);border-radius:10px;background:var(--j13-bg-block-muted)}.admin-brand-preview-mark{width:48px;height:48px;border-radius:12px;background:var(--j13-green);color:#fff;font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-brand-preview-logo{width:48px;height:48px;border-radius:12px;-o-object-fit:cover;object-fit:cover;flex-shrink:0}.admin-brand-upload-row{display:flex;align-items:center;gap:8px}.admin-brand-upload-row input[type=file]{flex:1;min-width:0}.admin-topbar-title{font-size:14px;font-weight:600;line-height:1.2}.admin-topbar-sub{font-size:12px;color:hsl(var(--muted-foreground))}.admin-topbar-actions{display:flex;align-items:center;gap:12px}.admin-topbar-user{font-size:13px;color:hsl(var(--muted-foreground))}.admin-link-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--j13-green);background:none;border:none;cursor:pointer}.admin-body{display:flex;height:calc(100vh - 56px);overflow:hidden}.admin-sidebar{width:220px;flex-shrink:0;padding:12px 10px 20px;border-right:1px solid var(--j13-border);background:hsl(var(--card));overflow-y:auto}.admin-nav-group{margin-bottom:14px}.admin-nav-group:last-child{margin-bottom:0}.admin-nav-group-label{padding:6px 12px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--muted-foreground) / .85)}.admin-nav-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;margin-bottom:2px;border-radius:8px;font-size:13px;color:hsl(var(--muted-foreground));text-decoration:none;border-left:2px solid transparent;transition:background .15s,color .15s,border-color .15s}.admin-nav-icon{flex-shrink:0}.admin-nav-text{flex:1;min-width:0}.admin-nav-badge{flex-shrink:0;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:11px;font-weight:600;line-height:18px;text-align:center;background:#e9640c29;color:#c2540a}.dark .admin-nav-badge{background:#f4782538;color:#fbaa74}.admin-nav-item:hover{background:var(--j13-green-bg);color:var(--j13-green)}.admin-nav-item.active{background:var(--j13-green-bg);color:var(--j13-green);font-weight:600;border-left-color:var(--j13-green)}.admin-main{flex:1;min-width:0;min-height:0;padding:24px;overflow-y:auto}.admin-page-head{margin-bottom:20px}.admin-page-head h1{font-size:22px;font-weight:700;margin-bottom:4px}.admin-page-head p{font-size:13px;color:hsl(var(--muted-foreground))}.admin-section-label{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:600}.admin-section-muted{font-size:12px;font-weight:500;color:hsl(var(--muted-foreground))}.admin-queue-section{margin-bottom:22px}.admin-queue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.admin-queue-card{display:block;width:100%;text-align:left;padding:14px 16px;border-radius:10px;border:1px solid var(--j13-border);background:hsl(var(--card));cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.admin-queue-card:hover{border-color:var(--j13-green);background:var(--j13-green-bg)}.admin-queue-card.has-work{border-color:#e87a3073;background:#e9640c0f}.admin-queue-card.has-work:hover{border-color:#e66b19;background:#e9640c1a}.admin-queue-card-top{display:flex;align-items:center;justify-content:space-between;color:hsl(var(--muted-foreground));margin-bottom:8px}.admin-queue-count{font-size:22px;font-weight:700;color:hsl(var(--foreground));line-height:1}.admin-queue-card.has-work .admin-queue-count{color:#c2540a}.dark .admin-queue-card.has-work .admin-queue-count{color:#fb9e60}.admin-queue-label{font-size:13px;font-weight:600}.admin-queue-hint{font-size:12px;color:hsl(var(--muted-foreground));margin-top:2px;line-height:1.4}.admin-stat-section{margin-bottom:8px}.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:20px}.admin-stat-card{padding:16px;border-radius:10px;border:1px solid var(--j13-border);background:hsl(var(--card))}.admin-stat-value{font-size:24px;font-weight:700;color:var(--j13-green)}.admin-stat-label{font-size:12px;color:hsl(var(--muted-foreground));margin-top:4px}.admin-card{border:1px solid var(--j13-border);border-radius:10px;background:hsl(var(--card));margin-bottom:16px;overflow-x:auto}.admin-card-body{padding:16px 20px 20px}.admin-card-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--j13-border);font-weight:600;font-size:14px}.admin-card-desc{padding:12px 16px 0;font-size:13px;color:hsl(var(--muted-foreground));line-height:1.5}.admin-card .admin-card-desc+button{margin:12px 16px 16px}.admin-form-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px 16px;font-size:13px}.admin-form-row label{color:hsl(var(--muted-foreground));white-space:nowrap}.admin-settings-page{max-width:880px;padding-bottom:24px}.admin-settings-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:20px;padding-bottom:0;border-bottom:1px solid var(--j13-border)}.admin-settings-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;margin-bottom:-1px;border:none;border-bottom:2px solid transparent;background:none;font-size:13px;font-weight:500;color:hsl(var(--muted-foreground));cursor:pointer;transition:color .15s,border-color .15s}.admin-settings-tab:hover{color:hsl(var(--foreground))}.admin-settings-tab.active{color:var(--j13-green);border-bottom-color:var(--j13-green)}.admin-settings-panel{display:flex;flex-direction:column;gap:0}.admin-settings-card{margin-bottom:0}.admin-settings-card-badge{font-size:12px;font-weight:500;color:hsl(var(--muted-foreground));padding:2px 8px;border-radius:999px;background:hsl(var(--muted) / .45)}.admin-settings-sections{display:flex;flex-direction:column;gap:20px}.admin-settings-section-head h3{font-size:13px;font-weight:600;margin-bottom:2px}.admin-settings-section-head p{font-size:12px;color:hsl(var(--muted-foreground));line-height:1.45;margin-bottom:10px}.admin-settings-table{border:1px solid var(--j13-border);border-radius:8px;overflow:hidden;background:hsl(var(--background))}.admin-settings-row{display:grid;grid-template-columns:140px 140px 1fr;align-items:center;gap:8px 16px;padding:10px 14px;border-bottom:1px solid var(--j13-border);font-size:13px}.admin-settings-row:last-child{border-bottom:none}.admin-settings-row-label{color:hsl(var(--foreground));font-weight:500}.admin-settings-row-input{display:flex;align-items:center;gap:8px}.admin-settings-input{width:88px;height:32px;padding-top:0;padding-bottom:0}.admin-settings-unit{font-size:12px;color:hsl(var(--muted-foreground));white-space:nowrap}.admin-settings-row-hint{font-size:12px;color:hsl(var(--muted-foreground))}.admin-settings-switch{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;width:40px;height:24px;padding:0;border:none;background:transparent;cursor:pointer;flex-shrink:0}.admin-settings-switch-ui{position:relative;display:block;width:40px;height:24px;border-radius:999px;background:hsl(var(--muted-foreground) / .28);transition:background .18s}.admin-settings-switch-ui:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f172a2e;transition:transform .18s}.admin-settings-switch.is-on .admin-settings-switch-ui{background:var(--j13-green)}.admin-settings-switch.is-on .admin-settings-switch-ui:after{transform:translate(16px)}.admin-settings-switch:focus-visible{outline:2px solid var(--j13-green);outline-offset:2px;border-radius:999px}.admin-settings-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:14px 16px;border:1px solid var(--j13-border);border-radius:10px;background:hsl(var(--card))}.admin-settings-bar p{margin:0;font-size:12px;color:hsl(var(--muted-foreground));line-height:1.45;max-width:420px}.admin-settings-bar-actions{display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap}.admin-settings-check{display:inline-flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.admin-settings-row-input--wide{flex:1;min-width:0}.admin-settings-row-input--stack{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0;flex:1}.admin-permalink-presets{display:flex;flex-wrap:wrap;gap:6px}.admin-permalink-chip{height:28px;padding:0 10px;border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--background));color:hsl(var(--muted-foreground));font-size:12px;cursor:pointer}.admin-permalink-chip:hover:not(:disabled){border-color:var(--j13-green, hsl(var(--primary)));color:var(--j13-green, hsl(var(--primary)))}.admin-permalink-chip.is-active{border-color:var(--j13-green, hsl(var(--primary)));background:color-mix(in srgb,var(--j13-green, hsl(var(--primary))) 12%,transparent);color:var(--j13-green, hsl(var(--primary)));font-weight:600}.admin-permalink-chip:disabled{opacity:.45;cursor:not-allowed}.admin-permalink-preview{margin:0 2px;padding:1px 6px;border-radius:4px;background:hsl(var(--muted));font-size:12px}.admin-settings-input--text{width:100%;max-width:360px}.admin-settings-select{height:36px;min-width:220px;max-width:360px;width:100%;border:1px solid hsl(var(--border));border-radius:8px;background:hsl(var(--background));padding:0 10px;font-size:13px}.admin-mail-panel .admin-settings-card{margin-bottom:0}.admin-mail-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:hsl(var(--muted-foreground));padding:3px 10px;border-radius:999px;background:hsl(var(--muted) / .5)}.admin-mail-status.is-on{color:var(--j13-green);background:#18a0581a}.admin-mail-status-dot{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.55}.admin-mail-status.is-on .admin-mail-status-dot{opacity:1;box-shadow:0 0 0 3px #18a0582e}.admin-mail-body{display:flex;flex-direction:column;gap:20px}.admin-mail-switch{position:relative;display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--j13-border);border-radius:10px;background:var(--j13-bg-block-muted, hsl(var(--muted) / .35));cursor:pointer}.admin-mail-switch input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0;pointer-events:none}.admin-mail-switch-ui{position:relative;flex-shrink:0;width:40px;height:24px;margin-top:1px;border-radius:999px;background:hsl(var(--muted-foreground) / .28);transition:background .18s}.admin-mail-switch-ui:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f172a2e;transition:transform .18s}.admin-mail-switch:has(input:checked) .admin-mail-switch-ui{background:var(--j13-green)}.admin-mail-switch:has(input:checked) .admin-mail-switch-ui:after{transform:translate(16px)}.admin-mail-switch:has(input:focus-visible) .admin-mail-switch-ui{outline:2px solid var(--j13-green);outline-offset:2px}.admin-mail-switch-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.admin-mail-switch-copy strong{font-size:13px;font-weight:600;color:hsl(var(--foreground))}.admin-mail-switch-copy small{font-size:12px;line-height:1.45;color:hsl(var(--muted-foreground))}.admin-mail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.admin-mail-field{display:flex;flex-direction:column;gap:6px;min-width:0}.admin-mail-field--span2{grid-column:1 / -1}.admin-mail-field label{font-size:12px;font-weight:600;color:hsl(var(--foreground))}.admin-mail-field-hint{font-size:11px;color:hsl(var(--muted-foreground))}.admin-mail-field input,.admin-mail-select{width:100%;height:36px}.admin-mail-select{border:1px solid hsl(var(--border));border-radius:8px;background:hsl(var(--background));padding:0 10px;font-size:13px;color:hsl(var(--foreground))}.admin-mail-select:focus{outline:none;border-color:var(--j13-green);box-shadow:0 0 0 3px #18a05826}.admin-mail-test{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px dashed var(--j13-border);border-radius:10px;background:hsl(var(--background))}.admin-mail-test-head{display:flex;flex-direction:column;gap:2px}.admin-mail-test-head strong{font-size:13px;font-weight:600}.admin-mail-test-head span{font-size:12px;color:hsl(var(--muted-foreground));line-height:1.4}.admin-mail-test-row{display:flex;gap:10px;align-items:center}.admin-mail-test-row input{flex:1;min-width:0;height:36px}.admin-mail-test-row button{flex-shrink:0}.admin-oidc-url{display:block;margin-top:8px;padding:10px 12px;border-radius:8px;background:hsl(var(--muted) / .55);font-size:12.5px;word-break:break-all;line-height:1.45}.admin-oauth-list{display:flex;flex-direction:column;gap:10px;margin-bottom:8px}.admin-oauth-row{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;padding:12px;border:1px solid hsl(var(--border));border-radius:10px}.admin-oauth-actions{display:flex;flex-wrap:wrap;gap:6px;flex-shrink:0}@media (max-width: 640px){.admin-mail-grid{grid-template-columns:1fr}.admin-mail-field--span2{grid-column:auto}.admin-mail-test-row{flex-direction:column;align-items:stretch}.admin-oauth-row{flex-direction:column}}.admin-settings-filter-body{display:flex;flex-direction:column;gap:12px}.admin-settings-filter-tip{margin:0;font-size:12px;color:hsl(var(--muted-foreground));line-height:1.5}.admin-settings-filter-tip code,.admin-settings-backup-name code{font-size:11px;background:hsl(var(--muted));padding:1px 5px;border-radius:4px}.admin-settings-filter-textarea{min-height:320px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55;resize:vertical}.admin-settings-info{display:flex;flex-direction:column;gap:0}.admin-settings-info-row{display:grid;grid-template-columns:88px 1fr;gap:12px 16px;padding:10px 0;border-bottom:1px solid var(--j13-border);font-size:13px}.admin-settings-info-row:last-child{border-bottom:none;padding-bottom:0}.admin-settings-info-row:first-child{padding-top:0}.admin-settings-info-row dt{color:hsl(var(--muted-foreground))}.admin-settings-info-row dd{margin:0;word-break:break-all}.admin-settings-info-row dd code{font-size:12px;background:hsl(var(--muted));padding:2px 6px;border-radius:4px}.admin-settings-backup-body{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.admin-settings-backup-body>p{margin:0;font-size:13px;color:hsl(var(--muted-foreground));line-height:1.5}.admin-settings-backup-name{font-size:12px!important}@media (max-width: 640px){.admin-settings-row{grid-template-columns:1fr;gap:6px;padding:12px 14px}.admin-settings-row-hint{padding-left:0}.admin-settings-bar{flex-direction:column;align-items:stretch}.admin-settings-bar p{max-width:none}.admin-settings-info-row{grid-template-columns:1fr;gap:4px}}@media (max-width: 768px){.admin-body{height:calc(100dvh - 56px)}.admin-main{padding:16px}.admin-topbar{padding:0 12px;gap:8px}.admin-topbar-brand{gap:8px;min-width:0}.admin-topbar-sub{display:none}.admin-dl{grid-template-columns:1fr}}.admin-nav-drawer-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95}.admin-nav-drawer{position:absolute;top:0;left:0;bottom:0;width:min(280px,88vw);background:hsl(var(--card));border-right:1px solid var(--j13-border);display:flex;flex-direction:column;box-shadow:8px 0 24px #0f172a1f;animation:admin-nav-drawer-in .2s ease}@keyframes admin-nav-drawer-in{0%{transform:translate(-12px);opacity:.6}to{transform:translate(0);opacity:1}}.admin-nav-drawer-head{height:56px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 16px;border-bottom:1px solid var(--j13-border);font-size:14px;font-weight:600}.admin-nav-drawer-body{flex:1;min-height:0;overflow-y:auto;padding:12px 10px}@media (prefers-reduced-motion: reduce){.admin-nav-drawer{animation:none}}.admin-page-head-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--j13-border)}.admin-table th{font-weight:600;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .3)}.admin-table tr:last-child td{border-bottom:none}.admin-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table-email{max-width:200px;word-break:break-all}.admin-table-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.admin-empty{padding:32px;text-align:center;color:hsl(var(--muted-foreground));font-size:13px}.admin-text-link{background:none;border:none;padding:0;color:var(--j13-green);cursor:pointer;font-size:inherit}.admin-text-link:hover{text-decoration:underline}.admin-tabs{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}.admin-tab{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border:1px solid var(--j13-border);border-radius:999px;background:var(--j13-bg-surface);color:var(--color-text-2);font-size:13px;font-family:inherit;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.admin-tab:hover{border-color:color-mix(in srgb,var(--j13-green) 35%,var(--j13-border));color:var(--j13-green)}.admin-tab.active{background:var(--j13-green-bg);border-color:color-mix(in srgb,var(--j13-green) 45%,var(--j13-border));color:var(--j13-green);font-weight:600}.admin-search-bar{display:flex;gap:8px;margin-bottom:16px;max-width:480px}.admin-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px;border-top:1px solid var(--j13-border);font-size:13px}.admin-media-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:16px}.admin-media-search{display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex:1;min-width:220px;max-width:520px}.admin-media-toolbar-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;padding:16px}.admin-media-card{position:relative;border:1px solid var(--j13-border);border-radius:10px;background:var(--j13-bg-surface);overflow:hidden;display:flex;flex-direction:column}.admin-media-card.is-selected{border-color:color-mix(in srgb,var(--j13-green) 55%,var(--j13-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--j13-green) 35%,transparent)}.admin-media-check{position:absolute;top:8px;left:8px;z-index:2;width:22px;height:22px;display:grid;place-items:center;border-radius:6px;background:color-mix(in srgb,var(--j13-bg-surface) 88%,transparent);border:1px solid var(--j13-border)}.admin-media-thumb{display:block;aspect-ratio:1;background:hsl(var(--muted) / .35);overflow:hidden}.admin-media-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.admin-media-meta{padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px;min-width:0}.admin-media-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-media-sub,.admin-media-time{display:flex;align-items:center;gap:8px;font-size:12px;color:hsl(var(--muted-foreground))}.admin-media-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.admin-dl{padding:16px;display:grid;grid-template-columns:120px 1fr;gap:10px 16px;font-size:13px}.admin-dl dt{color:hsl(var(--muted-foreground))}.admin-dl dd code{font-size:12px;background:hsl(var(--muted));padding:2px 6px;border-radius:4px}.header-msg-btn{position:relative}.header-msg-badge{position:absolute;top:-2px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#e11d48;color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;pointer-events:none}.pm-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.pm-layout{display:grid;grid-template-columns:minmax(200px,240px) 1fr;height:min(72vh,680px);min-height:480px;overflow:hidden}.pm-list{border-right:1px solid var(--j13-border-light);overflow-y:auto;background:var(--j13-bg-block-muted)}.pm-avatar{width:40px;height:40px;border-radius:50%;-o-object-fit:cover;object-fit:cover;flex-shrink:0;background:var(--j13-bg-surface)}.pm-avatar--fallback,.pm-avatar--system{display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;color:var(--j13-green);background:var(--j13-green-bg)}.pm-avatar--system{color:var(--color-text-2);background:color-mix(in srgb,var(--j13-border) 35%,var(--j13-bg-surface))}.pm-conv-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:none;border-bottom:1px solid var(--j13-border-light);background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:background .15s}.pm-conv-item:hover{background:color-mix(in srgb,var(--j13-bg-surface) 70%,transparent)}.pm-conv-item.active{background:var(--j13-bg-surface);box-shadow:inset 3px 0 0 var(--j13-green)}.pm-conv-item.unread .pm-conv-item__name{font-weight:700;color:var(--color-text-1)}.pm-conv-item.unread .pm-conv-item__preview>span:first-child{color:var(--color-text-1);font-weight:500}.pm-conv-item__body{min-width:0;flex:1}.pm-conv-item__top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:3px}.pm-conv-item__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;color:var(--color-text-1)}.pm-conv-item__time{flex-shrink:0;font-size:11px;color:var(--color-text-4)}.pm-conv-item__preview{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-text-3)}.pm-conv-item__preview>span:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pm-conv-item__badge{flex-shrink:0;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#e11d48;color:#fff;font-size:10px;font-weight:700;line-height:18px;text-align:center}.pm-list-more{padding:8px;text-align:center}.pm-thread{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--j13-bg-surface)}.pm-thread-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--j13-border-light);flex-shrink:0}.pm-thread-back{display:none;align-items:center;justify-content:center;width:32px;height:32px;margin-right:-2px;border:none;border-radius:8px;background:transparent;color:var(--color-text-2);cursor:pointer}.pm-thread-back:hover{background:var(--j13-bg-block-muted)}.pm-thread-head__meta{min-width:0;display:flex;flex-direction:column;gap:2px}.pm-thread-head__name{font-size:15px;font-weight:600;color:var(--color-text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.pm-thread-head__name:hover{color:var(--j13-green)}.pm-thread-head__sub{font-size:12px;color:var(--color-text-3)}.pm-thread-scroll{flex:1;min-height:0;overflow-y:auto;padding:16px 18px;background:radial-gradient(ellipse at top,var(--j13-green-bg),transparent 55%),var(--j13-bg-workspace)}.pm-thread-older{display:flex;justify-content:center;margin-bottom:12px}.pm-bubble-row{display:flex;justify-content:flex-start;margin-bottom:10px}.pm-bubble-row--mine{justify-content:flex-end}.pm-bubble-row--system{justify-content:center}.pm-bubble{max-width:min(78%,480px);padding:10px 12px;border-radius:14px 14px 14px 4px;background:var(--j13-bg-surface);border:1px solid var(--j13-border-light);box-shadow:0 1px 2px #0f172a0a}.pm-bubble--mine{border-radius:14px 14px 4px;background:var(--j13-green-soft);border-color:color-mix(in srgb,var(--j13-green) 22%,var(--j13-border-light))}.pm-bubble--system{max-width:min(92%,520px);border-radius:12px;background:var(--j13-bg-surface);border-color:var(--j13-border)}.pm-bubble__kind{display:inline-block;margin-bottom:6px;padding:1px 7px;border-radius:999px;background:var(--j13-bg-block-muted);color:var(--color-text-2);font-size:11px;font-weight:600}.pm-bubble__subject{margin-bottom:4px;font-size:13px;font-weight:600;color:var(--color-text-1)}.pm-bubble__text{white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.65;color:var(--color-text-1)}.pm-bubble__link{display:inline-block;margin-top:8px;font-size:12px;font-weight:500}.pm-bubble__meta{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:11px;color:var(--color-text-4)}.pm-bubble-row--mine .pm-bubble__meta{justify-content:flex-end}.pm-composer{display:flex;align-items:flex-end;gap:10px;padding:12px 14px;border-top:1px solid var(--j13-border-light);background:var(--j13-bg-surface);flex-shrink:0}.pm-composer--readonly{display:block;font-size:12px;color:var(--color-text-3);text-align:center;padding:14px}.pm-composer__input{flex:1;min-height:44px;max-height:140px;resize:none;border:1px solid var(--j13-border);border-radius:12px;padding:10px 12px;font:inherit;font-size:14px;line-height:1.5;color:var(--color-text-1);background:var(--j13-bg-block-muted);outline:none}.pm-composer__input:focus{border-color:var(--j13-green);background:var(--j13-bg-surface)}.pm-composer__send{flex-shrink:0}.pm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:48px 20px;text-align:center;color:var(--color-text-3);font-size:13px}.pm-empty p{margin:8px 0 0;font-size:14px;font-weight:600;color:var(--color-text-2)}.pm-empty span{font-size:12px}.pm-empty--thread{flex:1}.pm-compose-fields{display:flex;flex-direction:column;gap:12px}.pm-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--color-text-2)}.pm-field input,.pm-field textarea,.pm-field select{width:100%;border:1px solid var(--j13-border);border-radius:6px;padding:8px 10px;font:inherit;font-size:13px;color:var(--color-text-1);background:var(--j13-bg-surface);outline:none}.pm-field input:focus,.pm-field textarea:focus,.pm-field select:focus{border-color:var(--j13-green)}.pm-field textarea{resize:vertical;min-height:96px}@media (max-width: 768px){.pm-layout{grid-template-columns:1fr;height:min(78vh,720px)}.pm-list{border-right:none}.pm-layout:not(.pm-layout--thread) .pm-thread{display:none}.pm-layout.pm-layout--thread .pm-list{display:none}.pm-thread-back{display:inline-flex}}.user-badges{display:inline-flex;align-items:center;gap:.25rem;margin-left:.35rem;vertical-align:middle;flex-wrap:wrap}.user-badges--compact{gap:.2rem}.user-badge{display:inline-flex;align-items:center;gap:.15rem;font-size:.7rem;font-weight:600;line-height:1;padding:.15rem .35rem;border-radius:.25rem;background:color-mix(in srgb,var(--j13-muted, #94a3b8) 18%,transparent);color:var(--j13-text-secondary, #64748b)}.user-badge--owner{background:color-mix(in srgb,#d97706 22%,transparent);color:#b45309}.user-badge--verified{background:color-mix(in srgb,var(--j13-green, #16a34a) 20%,transparent);color:var(--j13-green, #16a34a)}.user-badge--level-muted{color:#64748b}.user-badge--level-blue{background:color-mix(in srgb,#2563eb 18%,transparent);color:#1d4ed8}.user-badge--level-amber{background:color-mix(in srgb,#d97706 20%,transparent);color:#b45309}.user-badge--level-gold{background:color-mix(in srgb,#ca8a04 22%,transparent);color:#a16207}.user-badge--ach{padding:.15rem}.points-wallet{margin-top:1.25rem;padding:1rem 1.1rem;border:1px solid var(--j13-border, #e2e8f0);border-radius:.5rem;background:var(--j13-card, #fff)}.points-wallet-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.points-wallet-head h3{display:inline-flex;align-items:center;gap:.4rem;margin:0;font-size:1rem}.points-wallet-balance{display:flex;align-items:baseline;gap:.4rem}.points-wallet-balance strong{font-size:1.5rem;font-variant-numeric:tabular-nums}.points-wallet-balance span{color:var(--j13-text-secondary, #64748b);font-size:.85rem}.points-wallet-balance em{font-style:normal;font-size:.8rem;color:var(--j13-text-secondary, #64748b);margin-left:.5rem}.points-wallet-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.points-wallet-ledger h4{margin:0 0 .5rem;font-size:.9rem}.points-wallet-ledger ul{list-style:none;margin:0;padding:0}.points-wallet-ledger li{display:grid;grid-template-columns:4rem 1fr auto;gap:.5rem;padding:.35rem 0;border-top:1px solid var(--j13-border, #e2e8f0);font-size:.85rem}.points-wallet-ledger .pos{color:var(--j13-green, #16a34a);font-weight:600}.points-wallet-ledger .neg{color:#dc2626;font-weight:600}.points-wallet-empty{margin:0;color:var(--j13-text-secondary, #64748b);font-size:.85rem}.post-points-only__gate,.post-points-only__badge{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.post-points-only--locked .post-points-only__gate{margin:.75rem 0;padding:.75rem 1rem;border:1px dashed color-mix(in srgb,#ca8a04 45%,transparent);border-radius:.5rem;background:color-mix(in srgb,#ca8a04 8%,transparent)}.post-points-only__gate-btn,.post-points-only__remove-btn{cursor:pointer;border:1px solid color-mix(in srgb,#ca8a04 40%,transparent);background:#fff;border-radius:.35rem;padding:.3rem .65rem;font-size:.85rem}.post-points-only__cost{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem}.post-points-only__cost input{width:4rem;padding:.15rem .3rem;border:1px solid var(--j13-border, #e2e8f0);border-radius:.25rem}.editor-points-only{margin:.5rem 0;padding:.5rem;border:1px solid color-mix(in srgb,#ca8a04 35%,transparent);border-radius:.4rem}.admin-user-actions{display:flex;flex-wrap:wrap;gap:.35rem}.admin-users-page{max-width:920px}.admin-users-page .admin-page-head{margin-bottom:28px}.admin-users-page .admin-page-head h1{font-size:26px;letter-spacing:-.02em}.admin-users-page .admin-page-head p{margin-top:6px;font-size:14px}.admin-users-panel{border:1px solid var(--j13-border);border-radius:14px;background:hsl(var(--card));overflow:hidden}.admin-users-panel-head{display:flex;flex-direction:column;gap:14px;padding:18px 20px 16px;border-bottom:1px solid var(--j13-border);background:linear-gradient(180deg,hsl(var(--muted) / .35),hsl(var(--card)))}.admin-users-search{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.admin-users-search-field{position:relative;flex:1;min-width:200px}.admin-users-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:hsl(var(--muted-foreground));pointer-events:none}.admin-users-search-field input{height:40px;padding-left:38px;border-radius:10px;background:hsl(var(--background))}.admin-users-filters{display:flex;flex-wrap:wrap;gap:6px}.admin-users-filter{height:32px;padding:0 12px;border:1px solid transparent;border-radius:999px;background:transparent;font-size:13px;font-weight:500;color:hsl(var(--muted-foreground));cursor:pointer;transition:background .15s,color .15s,border-color .15s}.admin-users-filter:hover{color:hsl(var(--foreground));background:hsl(var(--muted) / .5)}.admin-users-filter.active{color:var(--j13-green);background:var(--j13-green-bg);border-color:color-mix(in srgb,var(--j13-green) 28%,transparent)}.admin-users-cols{display:none;grid-template-columns:minmax(0,1fr) 72px 72px 96px 72px;gap:12px;padding:10px 20px 8px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--muted-foreground) / .9)}.admin-users-cols-who{padding-left:56px}.admin-users-cols>span:not(.admin-users-cols-who):not(.admin-users-cols-action){text-align:right}.admin-users-list{list-style:none;margin:0;padding:4px 0}.admin-users-row{display:grid;grid-template-columns:minmax(0,1fr);gap:10px 12px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--j13-border);transition:background .15s}.admin-users-row:last-of-type{border-bottom:none}.admin-users-row:hover{background:hsl(var(--muted) / .28)}.admin-users-row--banned{background:#d9262609}.admin-users-row--banned:hover{background:#d926260f}.admin-users-who{display:flex;align-items:flex-start;gap:14px;min-width:0}.admin-users-who .admin-user-avatar{width:44px;height:44px;margin-top:1px;box-shadow:0 0 0 1px var(--j13-border)}.admin-users-who-text{min-width:0}.admin-users-who-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.admin-user-nick{border:none;background:none;padding:0;font-size:15px;font-weight:600;letter-spacing:-.01em;color:hsl(var(--foreground));cursor:pointer;line-height:1.3}.admin-user-nick:hover{color:var(--j13-green)}.admin-users-handle{margin-top:3px;font-size:13px;color:hsl(var(--muted-foreground))}.admin-users-mail{margin-top:2px;font-size:12.5px;color:hsl(var(--muted-foreground) / .92);max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-users-metric{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-users-metric:before{content:attr(data-label);font-size:11px;font-weight:500;color:hsl(var(--muted-foreground))}.admin-users-metric-value{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;color:hsl(var(--foreground))}.admin-users-action{display:flex;justify-content:flex-start}.admin-users-manage-btn{gap:4px;color:hsl(var(--muted-foreground))}.admin-users-manage-btn:hover{color:var(--j13-green);background:var(--j13-green-bg)}.admin-users-empty{padding:56px 24px;text-align:center;font-size:14px;color:hsl(var(--muted-foreground))}.admin-users-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-top:1px solid var(--j13-border);background:hsl(var(--muted) / .18)}.admin-users-total{font-size:13px;color:hsl(var(--muted-foreground))}.admin-users-pager{display:flex;align-items:center;gap:10px;font-size:13px;color:hsl(var(--muted-foreground))}.admin-user-avatar{width:36px;height:36px;border-radius:50%;-o-object-fit:cover;object-fit:cover;flex-shrink:0;background:hsl(var(--muted))}.admin-user-avatar--fallback{display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--j13-green);background:var(--j13-green-bg)}.admin-user-badges{display:flex;flex-wrap:wrap;gap:4px}.admin-user-email{font-size:12px;color:hsl(var(--muted-foreground));margin-top:2px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-manage-dialog{gap:0}.admin-user-manage-head{display:flex;align-items:center;gap:12px;margin:8px 0 16px}.admin-user-manage-head .admin-user-avatar{width:52px;height:52px}.admin-user-manage-name{font-weight:600;font-size:16px;letter-spacing:-.01em}.admin-user-manage-section{padding:14px 0;border-top:1px solid var(--j13-border)}.admin-user-manage-section-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;margin-bottom:10px}.admin-user-fact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:0}.admin-user-fact-grid dt{font-size:11px;font-weight:500;color:hsl(var(--muted-foreground));margin-bottom:2px}.admin-user-fact-grid dd{margin:0;font-size:13px;font-weight:500}.admin-user-manage-actions,.admin-user-manage-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.admin-user-manage-row>input,.admin-user-manage-row>.admin-user-select{flex:1;min-width:120px}.admin-user-manage-hint{margin-top:6px;font-size:12px;color:hsl(var(--muted-foreground));line-height:1.4}.admin-user-select{height:36px;border-radius:8px;border:1px solid hsl(var(--input));background:hsl(var(--background));padding:0 10px;font-size:13px;color:hsl(var(--foreground))}.admin-user-badge-preview{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;border-radius:8px;background:hsl(var(--muted) / .35);font-size:13px}.admin-user-badge-preview .admin-user-manage-hint{margin:0}@media (min-width: 760px){.admin-users-cols{display:grid}.admin-users-row{grid-template-columns:minmax(0,1fr) 72px 72px 96px 72px;gap:12px;padding:16px 20px}.admin-users-metric:before{display:none}.admin-users-metric{align-items:flex-end;text-align:right}.admin-users-metric-value{font-size:13.5px;font-weight:500}.admin-users-metric--time .admin-users-metric-value{font-weight:500;color:hsl(var(--muted-foreground))}.admin-users-action{justify-content:flex-end}.admin-users-mail{max-width:220px}}@media (max-width: 759px){.admin-users-row{padding:16px 16px 18px;grid-template-columns:1fr 1fr 1fr}.admin-users-who{grid-column:1 / -1}.admin-users-metric{padding-top:4px}.admin-users-action{grid-column:1 / -1;justify-content:flex-start;padding-top:4px}.admin-users-panel-head{padding:16px}}.admin-badge-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem 1rem}.admin-badge-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem}.admin-badge-form-check{flex-direction:row!important;align-items:center;gap:.4rem!important;margin-top:1.4rem}.admin-select{height:2.25rem;border:1px solid var(--j13-border, #e2e8f0);border-radius:.35rem;padding:0 .5rem;background:var(--j13-card, #fff);width:100%}.admin-badge-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.admin-badge-stat{padding:.85rem 1rem;border:1px solid var(--j13-border, #e2e8f0);border-radius:.55rem;background:var(--j13-card, #fff)}.admin-badge-stat strong{display:block;font-size:1.35rem;font-variant-numeric:tabular-nums;line-height:1.2}.admin-badge-stat span{font-size:.78rem;color:hsl(var(--muted-foreground))}.admin-badge-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.admin-badge-search{position:relative;min-width:min(100%,240px);flex:1 1 220px;max-width:320px}.admin-badge-search>svg{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:hsl(var(--muted-foreground));pointer-events:none}.admin-badge-search input{padding-left:2rem}.admin-badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.9rem}.admin-badge-card{display:flex;flex-direction:column;gap:.7rem;padding:1rem 1.05rem;border:1px solid var(--j13-border, #e2e8f0);border-radius:.7rem;background:var(--j13-card, #fff);transition:border-color .15s ease,box-shadow .15s ease}.admin-badge-card:hover{border-color:color-mix(in srgb,var(--j13-green, #16a34a) 35%,var(--j13-border, #e2e8f0));box-shadow:0 6px 20px hsl(var(--foreground) / .04)}.admin-badge-card.is-disabled{opacity:.72}.admin-badge-card-top{display:flex;gap:.75rem;align-items:flex-start}.admin-badge-preview{width:2.75rem;height:2.75rem;border-radius:.7rem;display:grid;place-items:center;flex-shrink:0;color:#1d4ed8;background:color-mix(in srgb,#2563eb 14%,transparent);border:1px solid color-mix(in srgb,#2563eb 22%,transparent)}.admin-badge-preview.is-limited{color:#b45309;background:color-mix(in srgb,#d97706 16%,transparent);border-color:color-mix(in srgb,#d97706 28%,transparent)}.admin-badge-preview--lg{width:3.25rem;height:3.25rem;border-radius:.85rem}.admin-badge-card-meta{min-width:0;flex:1}.admin-badge-card-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.admin-badge-card-title-row h3{margin:0;font-size:.98rem;font-weight:600;line-height:1.3}.admin-badge-code{display:inline-block;margin-top:.2rem;font-size:.72rem;color:hsl(var(--muted-foreground));font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.admin-badge-desc{margin:0;font-size:.84rem;line-height:1.45;color:hsl(var(--muted-foreground));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.admin-badge-card-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem;padding-top:.35rem;border-top:1px solid var(--j13-border, #e2e8f0)}.admin-badge-condition{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;color:hsl(var(--muted-foreground));max-width:100%}.admin-badge-card-actions{display:inline-flex;align-items:center;gap:.45rem;margin-left:auto}.admin-badge-empty{text-align:center;padding:3.5rem 1.5rem;border:1px dashed var(--j13-border, #e2e8f0);border-radius:.75rem;color:hsl(var(--muted-foreground))}.admin-badge-empty h3{margin:.75rem 0 .35rem;font-size:1.05rem;color:hsl(var(--foreground))}.admin-badge-empty p{margin:0 0 1rem;font-size:.9rem}.admin-badge-dialog-preview{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;border-radius:.65rem;background:hsl(var(--muted) / .35);border:1px solid var(--j13-border, #e2e8f0)}.admin-badge-dialog-preview-name{font-weight:600;font-size:1rem}.admin-badge-dialog-preview-cond{margin-top:.15rem;font-size:.8rem;color:hsl(var(--muted-foreground))}.admin-badge-dialog-fields{display:flex;flex-direction:column;gap:.9rem}.admin-badge-kind-seg{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;padding:.25rem;border-radius:.55rem;background:hsl(var(--muted) / .45)}.admin-badge-kind-seg button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;height:2.15rem;border:none;border-radius:.4rem;background:transparent;font-size:.86rem;font-weight:550;color:hsl(var(--muted-foreground));cursor:pointer}.admin-badge-kind-seg button.active{background:var(--j13-card, #fff);color:hsl(var(--foreground));box-shadow:0 1px 3px hsl(var(--foreground) / .08)}.admin-badge-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.admin-badge-field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.admin-badge-field-row--end{align-items:end}.admin-badge-field-hint{font-size:.75rem;color:hsl(var(--muted-foreground));line-height:1.35}.admin-badge-icon-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(2.4rem,1fr));gap:.35rem}.admin-badge-icon-opt{height:2.4rem;display:grid;place-items:center;border-radius:.45rem;border:1px solid var(--j13-border, #e2e8f0);background:var(--j13-card, #fff);color:hsl(var(--muted-foreground));cursor:pointer}.admin-badge-icon-opt:hover{border-color:color-mix(in srgb,var(--j13-green, #16a34a) 40%,var(--j13-border));color:hsl(var(--foreground))}.admin-badge-icon-opt.active{border-color:var(--j13-green, #16a34a);color:var(--j13-green, #16a34a);background:color-mix(in srgb,var(--j13-green, #16a34a) 10%,transparent)}.admin-badge-enable-row{display:inline-flex;align-items:center;gap:.5rem;font-size:.88rem;min-height:2.25rem;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 720px){.admin-badge-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-badge-field-row{grid-template-columns:1fr}.admin-badge-toolbar{flex-direction:column;align-items:stretch}.admin-badge-search{max-width:none}}.article-tool-btn--points.is-active,.article-tool-btn--points[aria-pressed=true]{color:#a16207}.profile-badge-wall{margin:.75rem 0 .25rem}.profile-badge-wall-title{margin:0 0 .4rem;font-size:.9rem;font-weight:600}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-destructive:hover{color:hsl(var(--destructive))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:text-destructive:focus{color:hsl(var(--destructive))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:bg-\[var\(--j13-green\)\][data-state=checked]{background-color:var(--j13-green)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.dark\:bg-orange-950:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(67 20 7 / var(--tw-bg-opacity, 1))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:mt-0{margin-top:0}.sm\:max-w-2xl{max-width:42rem}.sm\:max-w-\[420px\]{max-width:420px}.sm\:max-w-\[560px\]{max-width:560px}.sm\:max-w-md{max-width:28rem}.sm\:max-w-xl{max-width:36rem}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}
