@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--color-gray-400:#99a1af;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-gray-400:lab(65.9269% -.832707 -8.17473)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.z-20{z-index:20}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-full{height:100%}.w-full{width:100%}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.overflow-hidden{overflow:hidden}.rounded-\[inherit\]{border-radius:inherit}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\(length\:--border-beam-width\){border-style:var(--tw-border-style);border-width:var(--border-beam-width)}.border-border{border-color:var(--border)}.border-gray-400\/30{border-color:#99a1af4d}@supports (color:color-mix(in lab, red, red)){.border-gray-400\/30{border-color:color-mix(in oklab, var(--color-gray-400) 30%, transparent)}}.border-transparent{border-color:#0000}.bg-background{background-color:var(--background)}.bg-linear-to-l{--tw-gradient-position:to left}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-l{--tw-gradient-position:to left in oklab}}.bg-linear-to-l{background-image:linear-gradient(var(--tw-gradient-stops))}.from-\(--color-from\){--tw-gradient-from:var(--color-from);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-\(--color-to\){--tw-gradient-via:var(--color-to);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.mask-\[linear-gradient\(transparent\,transparent\)\,linear-gradient\(\#000\,\#000\)\]{-webkit-mask-image:linear-gradient(#0000,#0000),linear-gradient(#000,#000);mask-image:linear-gradient(#0000,#0000),linear-gradient(#000,#000)}.bg-clip-padding{background-clip:padding-box}.mask-intersect{-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;mask-composite:intersect}.\[mask-clip\:padding-box\,border-box\]{-webkit-mask-clip:padding-box,border-box;mask-clip:padding-box,border-box}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.underline-offset-4{text-underline-offset:4px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.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{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.running{animation-play-state:running}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-muted:hover{background-color:var(--surface-soft)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius-lg)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--surface-soft)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--surface-soft)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--surface-soft) 50%, transparent)}}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f7f7f7;--foreground:#111;--surface:#fff;--surface-soft:#ececec;--surface-glass:#fffffcd1;--muted-foreground:#666;--border:#11111129;--border-strong:#1111116b;--lime:#111;--violet:#555;--cyan:#333;--header-height:72px;--aurora-1:#607dff2b;--aurora-2:#f8699633;--aurora-3:#58cdeb21;--page-grain-opacity:.1}*{box-sizing:border-box;border-color:var(--border)}html{scroll-behavior:smooth;background:var(--background)}body{color:var(--foreground);font-family:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif;text-rendering:optimizelegibility;margin:0;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}::selection{background:var(--lime);color:#fff}:focus-visible{outline:2px solid var(--lime);outline-offset:4px}.site-shell{background:0 0;min-height:100svh}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(46% 38% at 22% 16%, var(--aurora-1), transparent 68%), radial-gradient(40% 34% at 84% 12%, var(--aurora-2), transparent 66%), radial-gradient(52% 42% at 55% 94%, var(--aurora-3), transparent 70%);animation:32s ease-in-out infinite alternate aurora-drift;position:fixed;inset:-22%}@keyframes aurora-drift{0%{transform:translate(0)scale(1)}50%{transform:translate(2.5%,-1.5%)scale(1.06)}to{transform:translate(-2%,2%)scale(1.02)}}@media (prefers-reduced-motion:reduce){body:before{animation:none}}body:after{content:"";z-index:-1;pointer-events:none;opacity:var(--page-grain-opacity);mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:fixed;inset:0}.dark body:after{mix-blend-mode:screen}.skip-link{z-index:100;background:var(--lime);color:#fff;padding:10px 14px;font-weight:700;transition:transform .18s ease-out;position:fixed;top:12px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:50;height:var(--header-height);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f7f7f7d1;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(20px,4vw,64px);display:grid;position:fixed;inset:0 0 auto}.brand,.desktop-nav,.header-contact,.footer-links,.hero-actions,.contact-email,.capability{align-items:center;display:flex}.brand{letter-spacing:.12em;justify-self:start;gap:12px;min-height:44px;font-size:12px;font-weight:700}.brand-avatar{object-fit:cover;border:1px solid #11111129;flex:none;width:34px;height:34px;display:block}.desktop-nav{color:#5f6359;gap:clamp(24px,3vw,48px);font-size:13px}.desktop-nav a,.site-footer a{align-content:center;min-height:44px;transition:color .18s ease-out;position:relative}.desktop-nav a:after{content:"";transform-origin:100%;background:var(--lime);height:1px;transition:transform .22s ease-out;position:absolute;bottom:6px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover,.site-footer a:hover{color:var(--foreground)}.desktop-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.header-contact{border:1px solid var(--border);justify-self:end;gap:8px;min-height:44px;padding:0 16px;font-size:12px;font-weight:600;transition:background .18s ease-out,color .18s ease-out,border-color .18s ease-out}.header-contact svg,.hero-cta svg,.project-card a svg,.contact-email svg{stroke-width:1.7px;width:16px;height:16px}.header-contact:hover{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.site-search-trigger{border:1px solid var(--border);min-height:44px;color:var(--muted-foreground);font:inherit;cursor:pointer;background:0 0;justify-self:end;align-items:center;gap:9px;padding:0 10px 0 13px;font-size:11px;transition:border-color .18s ease-out,background .18s ease-out,color .18s ease-out;display:inline-flex}.site-search-trigger:hover{border-color:var(--foreground);background:var(--surface);color:var(--foreground)}.site-search-trigger svg{width:15px;height:15px}.site-search-trigger kbd,.site-search-help kbd{border:1px solid var(--border);background:var(--surface-soft);color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;font-size:9px;font-weight:500}.site-search-trigger kbd{padding:3px 5px}.site-search-layer{z-index:1000;isolation:isolate;place-items:start center;padding:max(10vh,76px) 18px 24px;display:grid;position:fixed;inset:0}.site-search-backdrop{appearance:none;cursor:default;background:#1111116b;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.site-search-dialog{z-index:1;border:1px solid var(--border);background:var(--surface);will-change:clip-path;grid-template-rows:auto minmax(0,1fr) auto;width:min(680px,100%);max-height:min(720px,100dvh - max(14vh,100px));display:grid;position:relative;overflow:hidden;box-shadow:0 34px 100px #1111113d}.site-search-reveal-line{z-index:3;border-bottom:1px solid var(--foreground);pointer-events:none;transform-origin:50% 0;position:absolute;inset:0;box-shadow:0 8px 20px #11111124}.site-search-box{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:0 14px 0 20px;display:grid}.site-search-box>svg{width:19px;height:19px;color:var(--muted-foreground)}.site-search-box input{min-width:0;height:62px;color:var(--foreground);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:16px}.site-search-box input::placeholder{color:var(--muted-foreground)}.site-search-box>button{width:44px;height:44px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.site-search-box>button:hover{color:var(--foreground)}.site-search-box>button svg{width:17px;height:17px}.site-search-results{overscroll-behavior:contain;min-height:0;padding:8px;overflow-y:auto}.site-search-results>a{border:1px solid #0000;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:70px;padding:10px 12px;transition:border-color .15s ease-out,background .15s ease-out;display:grid}.site-search-results>a.is-active{border-color:var(--border);background:var(--surface-soft)}.site-search-result-icon{border:1px solid var(--border);background:var(--surface);place-items:center;width:40px;height:40px;display:grid}.site-search-result-icon svg{width:16px;height:16px}.site-search-results>a>span:nth-child(2){gap:4px;min-width:0;display:grid}.site-search-results strong,.site-search-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-search-results strong{font-size:13px}.site-search-results small{color:var(--muted-foreground);font-size:11px}.site-search-results em{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;white-space:nowrap;font-size:9px;font-style:normal}.site-search-empty{min-height:180px;color:var(--muted-foreground);align-content:center;place-items:center;gap:12px;display:grid}.site-search-empty svg{width:24px;height:24px}.site-search-empty p{margin:0;font-size:12px}.site-search-help{border-top:1px solid var(--border);min-height:44px;color:var(--muted-foreground);justify-content:flex-end;align-items:center;gap:16px;padding:0 16px;font-size:9px;display:flex}.site-search-help span{align-items:center;gap:4px;display:inline-flex}.site-search-help kbd{text-align:center;min-width:22px;padding:2px 4px}.hero{min-height:100svh;padding:calc(var(--header-height) + 56px) 24px 92px;isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.hero:before,.hero:after{z-index:-1;content:"";filter:blur(120px);opacity:.08;border-radius:50%;width:34vw;min-width:320px;height:34vw;min-height:320px;position:absolute}.hero:before{background:var(--violet);top:7%;left:-14%}.hero:after{background:var(--lime);bottom:0;right:-14%}.hero-grid{z-index:-2;opacity:.52;transform:perspective(900px)rotateX(58deg)translateY(6%);border:0!important;width:140%!important;height:140%!important;inset:-20%!important}.interactive-grid-cell{fill:#0000;pointer-events:all;transition:fill .68s ease-out}.hero-grid-square{stroke:#17181421!important}.hero-grid-square[data-active=true]{transition-duration:90ms;fill:#11111124!important}.hero-content{z-index:3;text-align:center;width:min(1120px,100%);position:relative}.eyebrow,.section-kicker,.project-meta,.hero-index,.scroll-cue,.contact-topline{font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;font-size:11px}.eyebrow{color:var(--lime);margin:0 0 22px}.hero-title{letter-spacing:-.075em;text-transform:uppercase;margin:0;font-size:clamp(4.25rem,14vw,11.5rem);font-weight:680;line-height:.82}.hero-title span{will-change:transform, opacity}.hero-role{color:#3f433a;letter-spacing:.04em;margin:30px 0 0;font-size:clamp(14px,1.6vw,19px);font-weight:500}.hero-statement{max-width:580px;color:var(--muted-foreground);margin:14px auto 0;font-size:clamp(16px,2vw,22px)}.hero-actions{justify-content:center;gap:12px;margin-top:40px}.hero-cta{border:1px solid var(--border);justify-content:center;align-items:center;gap:10px;min-width:176px;min-height:52px;padding:0 22px;font-size:13px;font-weight:650;transition:transform .18s ease-out,background .18s ease-out,color .18s ease-out,border-color .18s ease-out;display:inline-flex;position:relative;overflow:hidden}.hero-cta:hover{transform:translateY(-2px)}.hero-cta:active{transform:translateY(0)scale(.98)}.hero-cta.primary{background:var(--foreground);color:var(--background)}.hero-cta.primary:hover{background:var(--lime)}.hero-cta.secondary:hover{border-color:var(--foreground);background:#1718140f}.hero-cta.ghost:hover{border-color:var(--lime);color:var(--lime)}.hero-index{color:#71756b;position:absolute;bottom:28px;left:clamp(20px,4vw,64px)}.scroll-cue{color:#656960;align-items:center;gap:10px;min-height:44px;display:flex;position:absolute;bottom:18px;right:clamp(20px,4vw,64px)}.scroll-cue svg{width:16px;animation:1.8s ease-in-out infinite scroll-nudge}.pixel-field{inset:var(--header-height) 0 0;z-index:1;pointer-events:none;position:absolute}.pixel{color:#4b4f46;min-width:34px;height:34px;font-family:var(--font-geist-mono), monospace;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffcd1;border:1px solid #17181429;place-items:center;padding:0 8px;font-size:10px;animation:5s ease-in-out infinite float-pixel;display:grid;position:absolute;box-shadow:0 14px 50px #1f22191f}.pixel-a{color:var(--lime);top:17%;left:9%}.pixel-b{width:46px;height:46px;font-size:20px;animation-delay:-1.5s;top:28%;right:14%}.pixel-c{animation-delay:-2.7s;bottom:24%;left:15%}.pixel-d{color:var(--violet);animation-delay:-.8s;bottom:23%;right:8%}.pixel-e{color:var(--cyan);animation-delay:-3.3s;top:39%;left:4%}.pixel-f{animation-delay:-1.9s;top:15%;right:27%}.pixel-g{color:var(--lime);animation-delay:-4.1s;bottom:43%;right:5%}.pixel-h{animation-delay:-2.2s;bottom:13%;left:33%}.content-section,.site-footer{width:min(1320px,100% - 48px);margin:0 auto}.content-section{padding:clamp(96px,13vw,180px) 0}.intro{border-top:1px solid var(--border)}.section-kicker{color:#6d7167;margin:0}.intro>.section-kicker{justify-content:space-between;display:flex}.status-dot{color:var(--lime);align-items:center;gap:9px;display:flex}.status-dot:before{background:var(--lime);content:"";border-radius:50%;width:7px;height:7px;box-shadow:0 0 14px #11111142}.intro-grid{grid-template-columns:minmax(180px,.65fr) minmax(0,2.35fr);align-items:start;gap:clamp(48px,8vw,130px);margin-top:70px;display:grid}.intro-aside{max-width:260px;color:var(--muted-foreground);margin:10px 0 0;font-size:14px;line-height:1.8}.intro-heading{letter-spacing:-.045em;max-width:1050px;margin:0;font-size:clamp(2.25rem,5.2vw,5rem);font-weight:540;line-height:1.12}.work{border-top:1px solid var(--border)}.section-heading-row{justify-content:space-between;align-items:end;gap:32px;margin-bottom:58px;display:flex}.section-heading-row h2{letter-spacing:-.055em;margin:16px 0 0;font-size:clamp(2.8rem,6vw,6.5rem);font-weight:620;line-height:.95}.section-heading-row>p{max-width:260px;color:var(--muted-foreground);text-align:right;margin:0 0 8px;font-size:14px}.project-list{gap:12px;display:grid}.project-card{border:1px solid var(--border);background:#fffffcdb;grid-template-columns:minmax(180px,.65fr) minmax(0,1.8fr) auto;align-items:end;gap:clamp(28px,5vw,80px);min-height:250px;padding:clamp(28px,4vw,54px);transition:border-color .22s ease-out,background .22s ease-out,transform .22s ease-out;display:grid;position:relative;overflow:hidden}.project-card:before{content:"";transform-origin:bottom;background:var(--project-accent);width:4px;transition:transform .25s ease-out;position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.project-card:hover,.project-card:focus-within{background:#fff;border-color:#1111116b;transform:translateY(-3px)}.project-card:hover:before,.project-card:focus-within:before{transform:scaleY(1)}.project-card.lime{--project-accent:var(--lime)}.project-card.violet{--project-accent:var(--violet)}.project-card.cyan{--project-accent:var(--cyan)}.project-meta{color:#74786e;align-content:space-between;align-self:stretch;gap:18px;line-height:1.7;display:grid}.project-meta span:first-child{color:var(--project-accent);font-size:18px}.project-body h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.75rem,3.2vw,3.4rem);font-weight:590}.project-body p{max-width:650px;color:var(--muted-foreground);margin:18px 0 0;font-size:15px;line-height:1.75}.project-card>a{border:1px solid var(--border);justify-content:center;align-items:center;gap:8px;min-width:118px;min-height:46px;padding:0 16px;font-size:12px;transition:background .18s ease-out,color .18s ease-out;display:flex}.project-card>a:hover{background:var(--project-accent);color:#fff}.about{border-top:1px solid var(--border);grid-template-columns:minmax(260px,.8fr) minmax(0,1.55fr);align-items:start;gap:clamp(48px,9vw,150px);display:grid}.about-number{color:#0000;letter-spacing:-.11em;-webkit-text-stroke:1px #17181433;font-size:clamp(9rem,26vw,24rem);font-weight:720;line-height:.72}.about-copy h2{letter-spacing:-.05em;max-width:850px;margin:28px 0 30px;font-size:clamp(2.4rem,5vw,5rem);font-weight:580;line-height:1.08}.about-copy>p:not(.section-kicker){max-width:680px;color:var(--muted-foreground);margin:0;font-size:17px;line-height:1.85}.capability-list{border-top:1px solid var(--border);margin-top:50px;display:grid}.capability{border-bottom:1px solid var(--border);color:#3f433a;gap:16px;min-height:62px;font-size:14px}.capability svg{width:18px;height:18px;color:var(--lime);stroke-width:1.5px}.contact{border-top:1px solid var(--border);padding-bottom:clamp(110px,14vw,180px)}.contact-topline{color:#686c62;justify-content:space-between;display:flex}.contact h2{letter-spacing:-.075em;margin:clamp(54px,7vw,92px) 0 62px;font-size:clamp(4rem,11.4vw,10.5rem);font-weight:680;line-height:.84}.contact h2 em{color:#0000;-webkit-text-stroke:1.5px var(--lime);font-family:Georgia,Times New Roman,serif;font-weight:400}.contact-email{border:1px solid var(--border);justify-content:space-between;min-height:84px;padding:0 28px;font-size:clamp(1rem,2.4vw,2rem);font-weight:540;transition:background .2s ease-out,color .2s ease-out;position:relative;overflow:hidden}.contact-email:hover{background:var(--foreground);color:var(--background)}.contact-email svg{width:24px;height:24px}.site-footer{border-top:1px solid var(--border);color:#6d7167;min-height:116px;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;grid-template-columns:1fr auto 1fr;align-items:center;font-size:11px;display:grid}.footer-links{gap:28px}.footer-links a{align-items:center;gap:8px;display:flex}.footer-links svg{width:14px;height:14px}.site-footer>a:last-child{justify-self:end;align-items:center;gap:8px;display:flex}.site-footer>a:last-child svg,.guestbook-note a svg,.friend-note a svg,.friend-card>a svg,.link-card-title svg{stroke-width:1.7px;flex:none;width:15px;height:15px}.mobile-menu-trigger,.mobile-drawer{display:none}.nav-dropdown{min-height:44px;position:relative}.nav-dropdown>button{color:#5f6359;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;transition:color .18s ease-out;display:flex}.nav-dropdown>button svg{width:13px;height:13px;transition:transform .24s cubic-bezier(.22,1,.36,1)}.nav-dropdown[data-open=true]>button svg{transform:rotate(180deg)}.desktop-nav>a.active,.nav-dropdown>button.active,.nav-dropdown[data-open=true]>button{color:var(--lime)}.dropdown-panel{z-index:70;visibility:hidden;transform-origin:top;border:1px solid var(--border);opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffcf5;width:250px;padding:8px;transition:opacity .15s ease-in,transform .18s cubic-bezier(.4,0,1,1),visibility 0s linear .18s;display:grid;position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%,-8px)scale(.97);box-shadow:0 24px 60px #1f221924}.nav-dropdown[data-open=true] .dropdown-panel{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .22s ease-out,transform .26s cubic-bezier(.22,1,.36,1),visibility linear;transform:translate(-50%)scale(1)}.dropdown-panel a{opacity:0;border:0;align-content:center;gap:3px;min-height:66px;padding:10px 14px;transition:opacity .14s ease-in,transform .16s ease-in,background .18s ease-out;display:grid;transform:translateY(-4px)}.nav-dropdown[data-open=true] .dropdown-panel a{opacity:1;transition:opacity .22s ease-out,transform .24s ease-out,background .18s ease-out;transform:translateY(0)}.nav-dropdown[data-open=true] .dropdown-panel a:nth-child(2){transition-delay:35ms}.dropdown-panel a:after{display:none}.dropdown-panel a:hover{background:#1718140e}.dropdown-panel strong{color:var(--foreground);font-size:13px;font-weight:600}.dropdown-panel span{color:#74786e;font-size:11px}.subpage-main{min-height:calc(100svh - 116px);padding-top:var(--header-height)}.page-hero{border-bottom:1px solid var(--border);isolation:isolate;align-items:center;min-height:clamp(150px,20svh,210px);padding:clamp(22px,2.8vw,34px) max(24px,50vw - 660px);display:flex;position:relative;overflow:hidden}.page-grid{z-index:-1;opacity:.28;transform:perspective(800px)rotateX(60deg)translateY(16%);border:0!important;width:120%!important;height:160%!important;inset:-30% -10%!important}.page-hero-copy{grid-template-columns:minmax(0,1fr) minmax(280px,420px);grid-template-areas:"eyebrow description""title description";align-items:end;column-gap:clamp(36px,6vw,96px);width:100%;display:grid}.page-hero-copy>.eyebrow{grid-area:eyebrow}.page-hero-copy h1{letter-spacing:-.05em;grid-area:title;margin:8px 0 0;font-size:clamp(2rem,3.2vw,3.2rem);font-weight:660;line-height:1}.page-hero-copy>p:last-child{max-width:420px;color:var(--muted-foreground);text-align:right;grid-area:description;justify-self:end;margin:0;font-size:clamp(13px,.95vw,15px);line-height:1.6}.page-hero.has-action{justify-content:space-between;gap:clamp(22px,3vw,42px)}.page-hero.has-action .page-hero-copy{grid-template-columns:minmax(0,1fr) minmax(240px,360px)}.page-hero-action{z-index:1;flex:none;padding-bottom:2px;position:relative}.page-content{width:min(1200px,100% - 48px);margin:0 auto;padding:clamp(22px,2.8vw,34px) 0 clamp(80px,9vw,120px)}.page-section+.page-section{margin-top:clamp(56px,7vw,92px)}.page-section>header,.section-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:32px;margin-bottom:28px;padding-bottom:16px;display:flex}.page-section h2,.section-header h2{letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,3.4vw,3.25rem);font-weight:600;line-height:1}.page-section>header p,.section-header p{max-width:430px;color:var(--muted-foreground);margin:0;font-size:14px}.tag,.chip,.post-meta,.friend-meta,.album-meta,.bangumi-meta,.timeline time{font-family:var(--font-geist-mono), monospace;letter-spacing:.09em;text-transform:uppercase;font-size:10px}.blog-rss-link{border:1px solid var(--border);min-height:54px;color:var(--foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffb8;align-items:center;gap:10px;padding:0 18px;font-size:13px;transition:border-color .18s ease-out,background .18s ease-out,color .18s ease-out,transform .18s ease-out;display:inline-flex;position:relative;overflow:hidden}.blog-rss-link:before{content:"";opacity:0;background:linear-gradient(110deg,#0000 20%,#11111112 48%,#0000 76%);transition:opacity .18s ease-out,transform .28s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:translate(-42%)}.blog-rss-link>*{z-index:1;position:relative}.blog-rss-link:hover{border-color:var(--foreground);background:var(--foreground);color:var(--background);transform:translateY(-2px)}.blog-rss-link:hover:before{opacity:1;transform:translate(28%)}.blog-rss-link svg{stroke-width:1.7px;width:17px;height:17px}.blog-rss-link small{opacity:.58;letter-spacing:.06em;border-left:1px solid;padding-left:10px;font-size:9px}.blog-explorer{gap:20px;display:grid}.blog-filter-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;display:grid}.blog-search{border:1px solid var(--border);background:#ffffffb8;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;min-height:52px;transition:border-color .18s ease-out,box-shadow .18s ease-out;display:grid}.blog-search:focus-within{border-color:var(--foreground);box-shadow:inset 3px 0 0 var(--foreground)}.blog-search>svg{width:18px;height:18px;color:var(--muted-foreground);stroke-width:1.7px;justify-self:center}.blog-search input{width:100%;min-width:0;height:50px;color:var(--foreground);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:14px}.blog-search input::-webkit-search-cancel-button{display:none}.blog-search input::placeholder{color:#888b84}.blog-search button{width:44px;height:44px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.blog-search button:hover{color:var(--foreground)}.blog-search button svg{width:17px;height:17px}.blog-filter-summary{min-width:130px;color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;white-space:nowrap;justify-content:flex-end;align-items:baseline;gap:5px;margin:0;font-size:11px;display:flex}.blog-filter-summary strong{color:var(--foreground);font-size:20px;font-weight:560}.blog-category-filter{align-items:center;gap:12px;min-width:0;padding-top:4px;padding-bottom:4px;display:flex;overflow:hidden}.blog-category-options{flex:1;gap:8px;min-width:0;padding-block:4px;display:flex;overflow:hidden}.blog-category-options button,.blog-category-more,.blog-empty-state button{border:1px solid var(--border);color:#555950;min-height:44px;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;padding:0 14px;font-size:12px;line-height:1;text-decoration:none;transition:border-color .18s ease-out,background .18s ease-out,color .18s ease-out,transform .18s ease-out;display:inline-flex}.blog-category-options button:hover,.blog-category-more:hover{border-color:var(--foreground);color:var(--foreground);transform:translateY(-2px)}.blog-category-options button[data-active=true]{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.blog-category-options button span{opacity:.58;font-family:var(--font-geist-mono), monospace;margin-left:6px}.blog-category-more{border-color:var(--foreground);color:var(--foreground);gap:8px}.blog-category-more svg{stroke-width:1.7px;width:15px;height:15px;transition:transform .18s ease-out}.blog-category-more:hover svg{transform:translate(3px)}.blog-category-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.blog-category-card{border:1px solid var(--border);min-height:128px;color:var(--foreground);grid-template-columns:46px minmax(0,1fr) 22px;align-items:center;gap:18px;padding:24px;text-decoration:none;transition:border-color .2s ease-out,background .2s ease-out,color .2s ease-out,transform .2s ease-out;display:grid}.blog-category-card>svg:first-child{stroke-width:1.35px;width:32px;height:32px}.blog-category-card>svg:last-child{stroke-width:1.5px;justify-self:end;width:18px;height:18px;transition:transform .18s ease-out}.blog-category-card>span{gap:7px;min-width:0;display:grid}.blog-category-card strong{overflow-wrap:anywhere;font-size:20px;font-weight:580}.blog-category-card small{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;font-size:10px}.blog-category-card:hover,.blog-category-card:focus-visible{border-color:var(--foreground);background:var(--foreground);color:var(--background);transform:translateY(-3px)}.blog-category-card:hover small,.blog-category-card:focus-visible small{color:#ffffffad}.blog-category-card:hover>svg:last-child,.blog-category-card:focus-visible>svg:last-child{transform:translate(4px)}.category-back-link{min-height:44px;color:var(--foreground);align-items:center;gap:9px;font-size:13px;text-decoration:none;display:inline-flex}.category-back-link svg{stroke-width:1.6px;width:17px;height:17px}.category-back-link:hover span{text-underline-offset:4px;text-decoration:underline}@media (max-width:900px){.blog-category-option[data-slot="4"]{display:none}.blog-category-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.blog-filter-panel{grid-template-columns:minmax(0,1fr);gap:10px}.blog-filter-summary{justify-content:flex-start;min-width:0}.blog-category-filter{gap:8px}.blog-category-more{padding-inline:12px}.blog-category-directory-grid{grid-template-columns:minmax(0,1fr)}.blog-category-card{min-height:112px;padding:20px}}@media (max-width:540px){.blog-category-option[data-slot="3"]{display:none}}@media (max-width:420px){.blog-category-option[data-slot="2"]{display:none}}.post-list-item{min-width:0;display:grid}.blog-empty-state{border:1px solid var(--border);text-align:center;align-content:center;place-items:center;min-height:320px;padding:44px 22px;display:grid}.blog-empty-state>svg{stroke-width:1.5px;width:30px;height:30px;margin-bottom:18px}.blog-empty-state h3{margin:0;font-size:clamp(1.5rem,4vw,2.4rem);font-weight:560}.blog-empty-state p{color:var(--muted-foreground);margin:9px 0 20px}.blog-empty-state button{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.post-list{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.message-list,.timeline,.about-facts{border-top:1px solid var(--border);display:grid}@media (min-width:1024px){.blog-explorer .post-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.post-card-magic{border:1px solid var(--border);background:var(--surface-glass);height:100%;transition:border-color .2s ease-out,box-shadow .22s ease-out,transform .22s cubic-bezier(.16,1,.3,1);box-shadow:0 18px 48px #1110}.post-card-magic:focus-within{border-color:var(--border-strong);box-shadow:0 22px 58px #1111111f}.post-card-magic:active{border-color:var(--border-strong)}@media (any-hover:hover) and (any-pointer:fine){.post-card-magic:hover,.post-card-magic:focus-within{border-color:var(--border-strong);transform:translateY(-4px);box-shadow:0 24px 64px #11111121}}.post-card{isolation:isolate;background:0 0;border:0;grid-template:"cover""meta""copy"minmax(0,1fr)"footer"/minmax(0,1fr);align-items:stretch;gap:0;height:100%;min-height:100%;padding:0;display:grid;position:relative;overflow:hidden}.post-card:before{z-index:0;background:var(--foreground);content:"";pointer-events:none;transform-origin:top;width:3px;transition:transform .26s cubic-bezier(.22,1,.36,1);position:absolute;inset:0 0 0 auto;transform:scaleY(0)}.post-card:hover:before,.post-card:focus-within:before{transform:scaleY(1)}.post-card>*{z-index:1;position:relative}.post-card h2,.post-card h3{letter-spacing:-.035em;text-wrap:balance;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 10px;font-size:clamp(1.35rem,1.9vw,2rem);font-weight:560;line-height:1.14;display:-webkit-box;overflow:hidden}.post-card p{max-width:none;color:var(--muted-foreground);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.65;display:-webkit-box;overflow:hidden}.post-card .post-meta{flex-wrap:wrap;grid-area:meta;align-items:center;gap:8px 14px;padding:18px 20px 0;display:flex}.post-card .post-copy{grid-area:copy;padding:16px 20px 0}.post-card .post-footer{grid-area:footer;justify-content:space-between;align-items:flex-end;gap:14px;min-width:0;padding:18px 20px 20px;display:flex}.post-card .post-tags{flex:1;justify-content:flex-start;min-width:0}.post-cover-link{aspect-ratio:4/3;border:0;border-bottom:1px solid var(--border);background:var(--surface-soft);grid-area:cover;min-width:0;transition:border-color .18s ease-out;display:block;overflow:hidden}.post-cover{aspect-ratio:auto;object-fit:cover;width:100%;height:100%;transition:filter .3s ease-out,transform .36s cubic-bezier(.22,1,.36,1);display:block}.post-cover-link.is-placeholder{aspect-ratio:4/3;background:linear-gradient(145deg, var(--surface-soft), var(--surface));color:var(--foreground);isolation:isolate;grid-template:"kicker index""title title"minmax(0,1fr)/minmax(0,1fr) auto;gap:18px;padding:clamp(20px,2.4vw,30px);display:grid;position:relative}.post-cover-link.is-placeholder .magic-dot-pattern{opacity:.18}.post-cover-placeholder-watermark{z-index:0;color:var(--foreground);opacity:.045;pointer-events:none;font-size:clamp(8rem,16vw,13rem);font-weight:760;line-height:1;transition:opacity .26s ease-out,transform .36s cubic-bezier(.16,1,.3,1);position:absolute;bottom:-.24em;right:-.05em;transform:rotate(-5deg)}.post-cover-placeholder-kicker,.post-cover-placeholder-index{z-index:1;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:10px;position:relative}.post-cover-placeholder-kicker{grid-area:kicker}.post-cover-placeholder-index{grid-area:index;justify-self:end}.post-cover-placeholder-title{z-index:1;letter-spacing:-.055em;text-wrap:balance;-webkit-line-clamp:3;-webkit-box-orient:vertical;grid-area:title;align-self:end;max-width:94%;font-size:clamp(1.5rem,2.7vw,2.75rem);font-weight:650;line-height:1.08;transition:transform .28s cubic-bezier(.16,1,.3,1);display:-webkit-box;position:relative;overflow:hidden}@media (min-width:641px){.post-card{grid-template:"cover meta""cover copy"minmax(0,1fr)"cover footer"/clamp(220px,50%,340px) minmax(0,1fr)}.post-card .post-meta{gap:6px 10px;padding:14px 16px 0}.post-card .post-copy{padding:12px 16px 0}.post-card .post-copy p{-webkit-line-clamp:2}.post-card .post-footer{gap:10px;padding:14px 16px 16px}.post-card .post-cover-link{border-right:1px solid var(--border);border-bottom:0;align-self:center}.post-card .post-copy h3{font-size:clamp(1.25rem,1.6vw,1.75rem)}}@media (any-hover:hover) and (any-pointer:fine){.post-card:hover .post-cover,.post-card:focus-within .post-cover,.post-cover-link:hover .post-cover{filter:saturate(1.04)contrast(1.02);transform:scale(1.025)}.post-card:hover .post-cover-placeholder-watermark,.post-card:focus-within .post-cover-placeholder-watermark{opacity:.075;transform:translate(-5px,-3px)rotate(-3deg)}.post-card:hover .post-cover-placeholder-title,.post-card:focus-within .post-cover-placeholder-title{transform:translateY(-3px)}}.post-card:hover .post-cover-link,.post-card:focus-within .post-cover-link{border-color:var(--border-strong)}.post-card>span:last-child,.post-card>a:last-child{text-align:right;min-width:44px;font-size:20px}.guestbook-note{border-left:3px solid var(--lime);color:#44483f;background:#1111110e;margin-bottom:42px;padding:22px 24px;font-size:14px;line-height:1.75}.message-card{border-bottom:1px solid var(--border);grid-template-columns:72px minmax(0,1fr) auto;align-items:start;gap:24px;padding:30px 4px;display:grid}.message-card h2,.message-card h3{margin:0 0 8px;font-size:16px}.message-card p{color:var(--muted-foreground);margin:0;line-height:1.75}.message-avatar{background:var(--surface-soft);width:48px;height:48px;color:var(--lime);font-family:var(--font-geist-mono), monospace;place-items:center;font-size:12px;display:grid}.friend-grid,.link-grid{gap:10px;display:grid}.friend-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.link-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.friend-grid-item{display:grid}.friend-grid-item>.friend-card{height:100%}.friend-card,.link-card{border:1px solid var(--border);background:var(--surface-glass);align-content:space-between;min-height:158px;padding:18px;transition:transform .2s ease-out,border-color .2s ease-out,background .2s ease-out;display:grid;position:relative;overflow:hidden}.friend-card:hover,.link-card:hover{border-color:var(--border-strong);background:var(--surface);transform:translateY(-3px)}.friend-card h2,.friend-card h3,.link-card h2,.link-card h3{margin:0 0 6px;font-size:16px;font-weight:580}.friend-card p,.link-card p{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.55}.link-groups{gap:80px;display:grid}.link-group>h2{border-bottom:1px solid var(--border);margin:0 0 28px;padding-bottom:16px;font-size:24px;font-weight:560}.album-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,24px);display:grid}.album-collection-magic{border:1px solid var(--border);background:var(--surface)}.album-collection-card{height:100%;color:var(--foreground);grid-template-rows:auto 1fr;display:grid}.album-collection-cover{aspect-ratio:16/10;border-bottom:1px solid var(--border);background:var(--surface-soft);place-items:center;display:grid;position:relative;overflow:hidden}.album-collection-cover img{object-fit:contain;filter:saturate(.78)contrast(1.02);width:100%;height:100%;transition:filter .22s ease-out,transform .32s cubic-bezier(.16,1,.3,1);display:block}.album-collection-card:hover .album-collection-cover img,.album-collection-card:focus-visible .album-collection-cover img{filter:saturate()contrast(1.01);transform:scale(1.018)}.album-collection-cover>span{color:#fff;min-width:38px;min-height:30px;font-family:var(--font-geist-mono), monospace;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#111111c7;border:1px solid #ffffff57;place-items:center;font-size:9px;display:grid;position:absolute;top:12px;right:12px}.album-collection-copy{align-content:start;padding:clamp(20px,3vw,30px);display:grid}.album-collection-copy>p{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:9px}.album-collection-copy h3{letter-spacing:-.05em;margin:12px 0 10px;font-size:clamp(1.7rem,3vw,2.8rem);line-height:.98}.album-collection-copy>span{color:var(--muted-foreground);font-size:13px;line-height:1.7}.album-collection-copy footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;margin-top:28px;padding-top:18px;font-size:11px;display:flex}.album-collection-copy footer span,.album-collection-copy footer strong{align-items:center;gap:8px;display:inline-flex}.album-collection-copy footer span{color:var(--muted-foreground)}.album-collection-copy footer strong{font-weight:650}.album-collection-copy footer svg{width:15px;height:15px}.album-back-link{border:1px solid var(--border);background:var(--surface);align-items:center;gap:9px;min-height:44px;margin-bottom:36px;padding:0 14px;font-size:12px;display:inline-flex}.album-back-link:hover{border-color:var(--foreground)}.album-back-link svg{width:16px;height:16px}.album-detail-section{margin-top:0}.album-grid{columns:3;column-gap:12px}.album-item{break-inside:avoid;vertical-align:top;width:100%;margin:0 0 12px;display:inline-block}.album-card{border:1px solid var(--border);background:var(--surface-soft);margin:0;transition:border-color .22s ease-out,box-shadow .22s ease-out;position:relative;overflow:hidden}.album-card:hover,.album-card:focus-within{border-color:#11111161;box-shadow:0 14px 36px #11111114}.album-card [role=region]{border-radius:0}.album-card img{object-fit:contain;filter:saturate(.68)contrast(1.03);width:100%;height:auto;transition:filter .3s ease-out;display:block}.album-card:hover img{filter:saturate()contrast(1.02)}.album-card figcaption{border-top:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--foreground);justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;font-size:12px;display:flex}.album-empty{border:1px dashed var(--border);min-height:220px;color:var(--muted-foreground);place-items:center;font-size:13px;display:grid}.bangumi-library{width:100%}.compact-shell .page-hero{min-height:116px;padding-block:16px}.compact-shell .page-hero-copy h1{margin-top:6px;font-size:clamp(1.8rem,2.7vw,2.8rem)}.compact-shell .page-hero-copy>p:last-child{font-size:13px;line-height:1.5}.compact-shell .page-content{padding-top:16px}.bangumi-overview{border:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:18px;min-height:68px;padding:12px 16px;display:flex}.bangumi-overview>div,.bangumi-overview>div>span,.bangumi-overview>a,.bangumi-category-tabs button,.bangumi-entry-meta span,.bangumi-pagination,.bangumi-error-state>a{align-items:center;display:flex}.bangumi-overview>div{gap:12px}.bangumi-overview>div>svg{stroke-width:1.5px;width:24px;height:24px}.bangumi-overview>div>span{flex-direction:column;align-items:start;gap:2px}.bangumi-overview small{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.bangumi-overview strong{font-size:16px}.bangumi-overview>a{border:1px solid var(--border);min-height:38px;font-family:var(--font-geist-mono), monospace;gap:7px;padding:0 12px;font-size:11px;transition:border-color .18s,background .18s}.bangumi-overview>a:hover{border-color:var(--foreground);background:var(--surface-soft)}.bangumi-overview>a svg{width:15px;height:15px}.bangumi-category-tabs{border:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:10px;display:grid}.bangumi-category-tabs button{border:0;border-right:1px solid var(--border);min-height:50px;color:var(--muted-foreground);font:inherit;cursor:pointer;background:0 0;justify-content:center;gap:8px;padding:8px 12px;transition:background .18s,color .18s;position:relative}.bangumi-category-tabs button:last-child{border-right:0}.bangumi-category-tabs button:hover{background:var(--surface-soft);color:var(--foreground)}.bangumi-category-tabs button.is-active{color:#fff;background:#111}.bangumi-category-tabs button svg{width:16px;height:16px}.bangumi-category-tabs button span{font-size:13px;font-weight:650}.bangumi-category-tabs button small{min-width:24px;color:inherit;font-family:var(--font-geist-mono), monospace;opacity:.66;font-size:10px}.bangumi-section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:28px;min-height:96px;margin-top:30px;padding-bottom:16px;display:flex}.bangumi-section-heading h2{letter-spacing:-.055em;margin:6px 0 0;font-size:clamp(2.1rem,4vw,3.8rem);line-height:.95}.bangumi-section-heading>p{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;margin:0;font-size:11px}.bangumi-status-filters{align-items:center;gap:8px;margin:14px 0 22px;display:flex}.bangumi-status-scroll{scrollbar-width:thin;flex:1;align-items:center;gap:8px;min-width:0;padding:4px 0 8px;display:flex;overflow-x:auto}.bangumi-status-scroll>svg{width:18px;height:18px;color:var(--muted-foreground);flex:none;margin-right:6px}.bangumi-status-scroll button{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--muted-foreground);font:inherit;cursor:pointer;flex:none;padding:0 14px;font-size:11px;transition:border-color .18s,background .18s,color .18s}.bangumi-status-scroll button:hover{border-color:var(--foreground);color:var(--foreground)}.bangumi-status-scroll button.is-active{color:#fff;background:#111;border-color:#111}.bangumi-status-scroll button span{font-family:var(--font-geist-mono), monospace;opacity:.66;margin-left:7px;font-size:10px}.bangumi-entry-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(14px,2vw,24px) clamp(12px,1.6vw,20px);display:grid}.bangumi-entry-grid>div{min-width:0}.bangumi-entry{border:1px solid var(--border);background:var(--surface);height:100%;transition:border-color .2s,box-shadow .2s,transform .26s cubic-bezier(.16,1,.3,1)}.bangumi-entry:hover,.bangumi-entry:focus-within{z-index:2;border-color:#11111194;transform:translateY(-5px);box-shadow:0 18px 40px #1111111c}.bangumi-entry>a{grid-template-rows:auto 1fr;height:100%;display:grid}.bangumi-entry-cover{aspect-ratio:2/3;background:var(--surface-soft);position:relative;overflow:hidden}.bangumi-entry-cover:after{content:"";pointer-events:none;background:linear-gradient(#0000,#00000094);height:34%;position:absolute;inset:auto 0 0}.bangumi-entry-cover img{object-fit:cover;filter:saturate(.78);width:100%;height:100%;transition:filter .26s,transform .52s cubic-bezier(.16,1,.3,1)}.bangumi-entry:hover .bangumi-entry-cover img,.bangumi-entry:focus-within .bangumi-entry-cover img{filter:saturate();transform:scale(1.045)}.bangumi-status,.bangumi-score,.bangumi-private{z-index:2;color:#fff;min-height:26px;font-family:var(--font-geist-mono), monospace;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#111111e0;align-items:center;padding:0 8px;font-size:9px;display:inline-flex;position:absolute}.bangumi-status{top:10px;left:10px}.bangumi-score{gap:4px;top:10px;right:10px}.bangumi-score svg{fill:currentColor;width:11px;height:11px}.bangumi-private{bottom:10px;right:10px}.bangumi-entry-external{z-index:2;color:#fff;opacity:0;width:17px;height:17px;transition:opacity .18s,transform .26s cubic-bezier(.16,1,.3,1);position:absolute;bottom:12px;left:12px;transform:translate(-5px,5px)}.bangumi-entry:hover .bangumi-entry-external,.bangumi-entry:focus-within .bangumi-entry-external{opacity:1;transform:translate(0)}.bangumi-entry-copy{flex-direction:column;min-width:0;padding:16px 15px 15px;display:flex}.bangumi-entry-copy h3{letter-spacing:-.015em;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.9em;margin:0;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.bangumi-entry-copy>div:first-child>p{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:10px;overflow:hidden}.bangumi-entry-meta{min-height:20px;color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;justify-content:space-between;align-items:center;gap:8px;margin-top:13px;font-size:9px;display:flex}.bangumi-entry-meta span{gap:5px}.bangumi-entry-meta svg{width:12px;height:12px}.bangumi-entry-progress{margin-top:12px}.bangumi-entry-progress>div{background:var(--surface-soft);height:2px;overflow:hidden}.bangumi-entry-progress>div>span{background:#111;height:100%;display:block}.bangumi-entry-progress small{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;text-align:right;margin-top:6px;font-size:9px;display:block}.bangumi-entry-copy blockquote{border-left:2px solid var(--foreground);color:var(--muted-foreground);margin:12px 0 0;padding-left:9px;font-size:10px;line-height:1.55}.bangumi-entry-tags{flex-wrap:wrap;gap:5px;margin:auto 0 0;padding:13px 0 0;list-style:none;display:flex}.bangumi-entry-tags li{border:1px solid var(--border);max-width:100%;color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;padding:4px 6px;font-size:9px;overflow:hidden}.bangumi-pagination{justify-content:center;gap:16px;margin-top:46px}.bangumi-pagination button{border:1px solid var(--border);background:var(--surface);width:46px;height:46px;color:inherit;cursor:pointer;place-items:center;display:inline-grid}.bangumi-pagination button:hover:not(:disabled){border-color:var(--foreground)}.bangumi-pagination button:disabled{cursor:not-allowed;opacity:.36}.bangumi-pagination button svg{width:17px;height:17px}.bangumi-pagination span{min-width:72px;font-family:var(--font-geist-mono), monospace;text-align:center;font-size:11px}.bangumi-pagination b{font-size:15px}.bangumi-no-results,.bangumi-error-state{border:1px solid var(--border);background:var(--surface);text-align:center;align-content:center;place-items:center;min-height:320px;padding:40px;display:grid}.bangumi-no-results>svg,.bangumi-error-state>svg{stroke-width:1.5px;width:28px;height:28px;margin-bottom:18px}.bangumi-no-results h3,.bangumi-error-state h2{letter-spacing:-.04em;margin:4px 0 8px;font-size:clamp(1.8rem,4vw,3rem)}.bangumi-no-results p,.bangumi-error-state>p:not(.section-kicker){max-width:620px;color:var(--muted-foreground);margin:0;line-height:1.7}.bangumi-error-state>a{border:1px solid var(--foreground);gap:8px;min-height:44px;margin-top:24px;padding:0 16px}.bangumi-error-state>a svg{width:15px;height:15px}.bangumi-route-loading{min-height:100svh;padding:calc(var(--header-height) + 90px) max(20px, calc((100vw - 1200px) / 2));background:var(--background)}.bangumi-loading-hero{gap:18px;width:min(620px,100%);display:grid}.bangumi-loading-hero span,.bangumi-loading-hero strong,.bangumi-loading-hero i,.bangumi-loading-tabs span,.bangumi-loading-grid span{background:var(--surface-soft);animation:1.4s ease-in-out infinite alternate bangumi-skeleton;display:block;overflow:hidden}.bangumi-loading-hero span{width:130px;height:13px}.bangumi-loading-hero strong{width:min(420px,88%);height:72px}.bangumi-loading-hero i{width:min(560px,100%);height:18px}.bangumi-loading-tabs{background:var(--border);grid-template-columns:repeat(4,1fr);gap:1px;margin-top:80px;display:grid}.bangumi-loading-tabs span{height:68px}.bangumi-loading-grid{grid-template-columns:repeat(5,1fr);gap:20px;margin-top:42px;display:grid}.bangumi-loading-grid span{aspect-ratio:2/3}@keyframes bangumi-skeleton{to{opacity:.42}}.support-grid,.about-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.support-card{border:1px solid var(--border);text-align:center;background:#fffffcd1;justify-items:center;gap:20px;padding:clamp(32px,5vw,60px);display:grid}.support-card h2,.support-card h3{margin:0;font-size:22px}.support-card p{max-width:380px;color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.7}.qr-placeholder{aspect-ratio:1;color:#111;text-align:center;background:linear-gradient(90deg,#111 25%,#0000 25% 50%,#111 50% 75%,#0000 75%) 0 0/28px 28px,linear-gradient(#111 25%,#fff 25% 50%,#111 50% 75%,#fff 75%) 0 0/28px 28px,#fff;border:14px solid #fff;place-items:center;width:min(240px,70vw);font-size:12px;font-weight:800;display:grid;position:relative}.qr-placeholder:before{content:"替换为收款码";background:#fff;padding:8px}.about-layout{grid-template-columns:minmax(0,1fr) clamp(360px,32vw,420px);gap:clamp(44px,6vw,84px)}.about-layout h2{letter-spacing:-.045em;margin:0 0 28px;font-size:clamp(2.1rem,4.5vw,4.4rem);font-weight:580;line-height:1.08}.about-layout p{color:var(--muted-foreground);line-height:1.85}.about-facts>div,.timeline>li{border-bottom:1px solid var(--border);grid-template-columns:100px 1fr;gap:20px;padding:18px 0;display:grid}.about-facts dt,.timeline time{color:#74786e}.about-facts dd,.timeline p{color:#343830;margin:0}.page-section-heading,.link-group>header,.timeline>header,.support-methods>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:32px;margin-bottom:26px;padding-bottom:16px;display:flex}.page-section-heading h2,.link-group>header h2,.timeline>header h2,.support-methods>header h2{letter-spacing:-.045em;margin:6px 0 0;font-size:clamp(1.8rem,3.25vw,3.15rem);font-weight:590;line-height:1}.page-section-heading>p:last-child,.link-group>header>p:last-child,.timeline>header>p:last-child,.support-methods>header>p:last-child{max-width:420px;color:var(--muted-foreground);text-align:right;margin:0;font-size:13px;line-height:1.7}.post-meta{color:#6f7369;gap:8px;display:grid}.post-meta span:first-child{color:var(--lime);font-size:16px}.post-view-count{color:var(--muted-foreground);font-variant-numeric:tabular-nums;letter-spacing:.04em;text-transform:none;white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.post-view-count svg{stroke-width:1.7px;flex:none;width:14px;height:14px}.post-view-number{min-width:4ch;color:var(--foreground);font-weight:620;display:inline-block}.post-view-count.has-label .post-view-label{color:inherit}.post-copy h3{letter-spacing:-.035em;margin:0 0 10px;font-size:clamp(1.35rem,1.9vw,2rem);font-weight:560;line-height:1.14}.post-copy p{color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.65}.post-footer{color:#6b6f65;min-width:140px;font-family:var(--font-geist-mono), monospace;justify-items:end;gap:14px;font-size:10px;display:grid}.post-tags{color:#55594f;flex-wrap:wrap;justify-content:end;gap:7px;margin:0;padding:0;list-style:none;display:flex}.guestbook-layout{grid-template-columns:minmax(270px,.7fr) minmax(0,1.5fr);align-items:start;gap:clamp(42px,8vw,108px);display:grid}.guestbook-note{top:calc(var(--header-height) + 32px);margin:0;position:sticky}.guestbook-note h2{letter-spacing:-.04em;margin:16px 0 18px;font-size:clamp(1.9rem,3vw,3rem);font-weight:580;line-height:1.08}.guestbook-note a,.friend-note a{border:1px solid var(--border);min-height:44px;color:var(--foreground);align-items:center;gap:10px;margin-top:24px;padding:0 16px;font-size:12px;display:inline-flex}.guestbook-note small{color:#74786e;margin-top:18px;font-size:10px;display:block}.message-card{grid-template-columns:minmax(180px,.45fr) minmax(0,1.55fr)}.message-card-header{align-items:center;gap:14px;display:flex}.message-card-header time{color:#74786e;font-family:var(--font-geist-mono), monospace;font-size:10px}.message-card>p{padding-top:4px}.friend-card:after,.link-card:after{content:none}.friend-card-header,.friend-card>a,.link-card-title{justify-content:space-between;align-items:center;gap:16px;display:flex}.friend-mark{background:var(--foreground);min-width:44px;height:32px;color:var(--background);font-family:var(--font-geist-mono), monospace;place-items:center;padding:0 8px;font-size:9px;font-weight:700;display:grid}.friend-index,.friend-card>a,.link-card-domain{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;font-size:10px}.friend-copy{margin-block:17px}.friend-card>a{border-top:1px solid var(--border);min-height:44px;color:var(--muted-foreground)}.friend-card>a svg,.link-card-title svg{color:var(--lime)}.friend-application-area{gap:12px;margin-bottom:clamp(34px,4vw,52px);display:grid}.friend-note{border:1px solid var(--border);background:#17181406;grid-template-columns:minmax(190px,.65fr) minmax(0,1.35fr) auto;align-items:center;gap:clamp(18px,3vw,32px);margin:0;padding:17px 20px;display:grid}.friend-note h2{margin:5px 0 0;font-size:clamp(1.5rem,2.2vw,2.15rem);font-weight:570;line-height:1}.friend-note>p{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.55}.friend-note a{white-space:nowrap;margin:0}.friend-application{border:1px solid var(--border);background:var(--surface);scroll-margin-top:calc(var(--header-height) + 20px);margin:0;padding:clamp(18px,2.5vw,28px)}.friend-application>header{border-bottom:1px solid var(--border);grid-template-columns:minmax(220px,.7fr) minmax(280px,1.3fr);align-items:center;gap:clamp(24px,4vw,56px);margin-bottom:18px;padding-bottom:16px;display:grid}.friend-application>header h2{letter-spacing:-.05em;margin:5px 0 0;font-size:clamp(1.7rem,2.8vw,2.7rem);line-height:1}.friend-application>header>p{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.6}.friend-application-summary{grid-template-columns:minmax(0,1.8fr) minmax(240px,.7fr);gap:12px;margin-bottom:14px;display:grid}.friend-review-rules{border:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.friend-review-rules>div{border-right:1px solid var(--border);align-items:center;gap:10px;min-height:68px;padding:11px 12px;display:flex}.friend-review-rules>div:last-child{border-right:0}.friend-review-rules svg{stroke-width:1.6px;flex:none;width:19px;height:19px}.friend-review-rules span{gap:3px;display:grid}.friend-review-rules strong{font-size:12px}.friend-review-rules small{color:var(--muted-foreground);font-size:10px;line-height:1.45}.friend-backlink-targets{background:var(--background);border:1px solid #11111147;align-items:center;gap:11px;margin:0;padding:11px 13px;display:flex}.friend-backlink-targets>svg{flex:none;width:19px;height:19px}.friend-backlink-targets>div{min-width:0}.friend-backlink-targets strong{font-size:12px}.friend-backlink-targets p{overflow-wrap:anywhere;color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;margin:3px 0 0;font-size:10px}.friend-application form{border:1px solid var(--border);background:var(--background);padding:clamp(16px,2vw,22px)}.friend-application-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.friend-application label{color:var(--muted-foreground);letter-spacing:.03em;gap:7px;font-size:11px;font-weight:650;display:grid}.friend-application input,.friend-application textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--foreground);font:inherit;border-radius:0;outline:none;font-size:14px;transition:border-color .16s,background .16s}.friend-application input{min-height:44px;padding:0 12px}.friend-application textarea{resize:vertical;min-height:78px;padding:11px 12px;line-height:1.6}.friend-application input:focus,.friend-application textarea:focus{border-color:var(--foreground);background:var(--surface)}.friend-application-description{margin-top:12px}.friend-application-honeypot{left:-9999px;position:absolute!important}.friend-application-result{border:1px solid var(--border);background:var(--surface);align-items:center;gap:12px;min-height:62px;margin-top:18px;padding:12px 15px;display:flex}.friend-application-result>svg{flex:none;width:20px;height:20px}.friend-application-result>span{gap:2px;display:grid}.friend-application-result strong{font-size:12px}.friend-application-result small{font-size:10px;line-height:1.55}.friend-application-result.is-success{color:#17632d;border-color:#17632d59}.friend-application-result.is-pending{color:#765211;border-color:#7d581059}.friend-application-result.is-error{color:#8f1717;border-color:#8f171759}.friend-application form>footer{justify-content:space-between;align-items:end;gap:18px;min-height:48px;margin-top:12px;display:flex}.friend-application form>footer>p{max-width:680px;color:var(--muted-foreground);margin:0;font-size:10px;line-height:1.65}.friend-application form>footer .magic-shimmer-button{min-width:180px;padding:0 20px}.support-intro{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(44px,8vw,110px);padding-bottom:clamp(80px,10vw,130px);display:grid}.support-intro h2{letter-spacing:-.05em;margin:18px 0 0;font-size:clamp(2.4rem,5.2vw,5rem);font-weight:580;line-height:1.05}.support-copy p{color:var(--muted-foreground);margin:0;font-size:16px;line-height:1.85}.support-copy p+p{margin-top:22px}.support-methods{padding-top:clamp(80px,10vw,130px)}.support-methods>header{grid-template-columns:auto 1fr 1fr;display:grid}.qr-placeholder:before{content:none}.qr-placeholder>span,.qr-placeholder>small{background:#fff;padding:6px 9px}.qr-placeholder>span{font-size:28px}.qr-placeholder>small{margin-top:-40%;font-size:9px}.support-card-copy{gap:8px;display:grid}.support-footnote{color:#74786e;text-align:center;max-width:760px;margin:28px auto 0;font-size:11px;line-height:1.7}.about-story blockquote{border-left:2px solid var(--lime);background:#1111110b;margin:38px 0 0;padding:20px 24px}.about-story blockquote p{color:#363a32;margin:0}.about-facts>h2{margin:12px 0 24px;font-size:24px;font-weight:560}.about-facts dl{margin:0}.about-facts dl>div,.timeline ol>li{border-bottom:1px solid var(--border);grid-template-columns:100px 1fr;gap:20px;padding:18px 0;display:grid}.timeline{border:0;margin-top:clamp(90px,12vw,160px)}.timeline ol{margin:0;padding:0;list-style:none}.timeline ol h3{margin:0 0 7px;font-size:16px}.timeline ol p{color:var(--muted-foreground);line-height:1.7}.link-group>header{grid-template-columns:120px minmax(200px,.7fr) minmax(260px,1fr);display:grid}.link-group>header h2{margin:0}.link-card{gap:26px}.link-card-title strong{color:var(--foreground);font-size:20px;font-weight:580}.link-card-description{color:var(--muted-foreground);font-size:13px;line-height:1.7}@keyframes float-pixel{0%,to{transform:translate(0)rotate(-2deg)}50%{transform:translateY(-12px)rotate(2deg)}}@keyframes scroll-nudge{0%,to{transform:translateY(-2px)}50%{transform:translateY(4px)}}@media (max-width:1180px){.friend-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:900px){:root{--header-height:64px}.site-header{grid-template-columns:1fr auto auto;gap:8px;padding-inline:20px}.site-search-trigger{justify-content:center;width:44px;padding:0}.site-search-trigger span,.site-search-trigger kbd,.desktop-nav{display:none}.mobile-menu-trigger{border:1px solid var(--border);width:44px;height:44px;color:var(--foreground);cursor:pointer;background:#fffffcc2;place-items:center;padding:0;transition:border-color .18s ease-out,color .18s ease-out,background .18s ease-out;display:grid}.mobile-menu-trigger:hover,.mobile-menu-trigger:focus-visible{color:var(--lime);background:#1111110e;border-color:#11111180}.mobile-menu-trigger svg,.mobile-menu-close svg{width:18px;height:18px}.mobile-drawer{z-index:100;visibility:hidden;pointer-events:none;transition:visibility 0s linear .26s;display:block;position:fixed;inset:0}.mobile-drawer[data-open=true]{visibility:visible;pointer-events:auto;transition-delay:0s}.mobile-backdrop{opacity:0;cursor:default;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1718144d;border:0;padding:0;transition:opacity .22s ease-in;position:absolute;inset:0}.mobile-panel{opacity:.94;will-change:transform;background:#fafbf6fa;border-left:1px solid #17181421;flex-direction:column;width:clamp(196px,52vw,260px);height:100svh;transition:transform .26s cubic-bezier(.4,0,1,1),opacity .2s ease-in;display:flex;position:absolute;top:0;right:0;transform:translate(100%);box-shadow:-28px 0 80px #1f22192e}.mobile-drawer[data-open=true] .mobile-backdrop{opacity:1;transition:opacity .28s ease-out}.mobile-drawer[data-open=true] .mobile-panel{opacity:1;transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .22s ease-out;transform:translate(0)}.mobile-panel-header{min-height:calc(var(--header-height) + env(safe-area-inset-top));padding:env(safe-area-inset-top) 20px 0 24px;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;display:flex}.mobile-panel-header>div{gap:2px;display:grid}.mobile-panel-header span{font-size:15px;font-weight:600}.mobile-panel-header small{color:#74786e;font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;font-size:8px}.mobile-menu-close{border:1px solid var(--border);width:44px;height:44px;color:var(--foreground);cursor:pointer;background:0 0;place-items:center;padding:0;transition:border-color .18s ease-out,color .18s ease-out,background .18s ease-out;display:grid}.mobile-menu-close:hover,.mobile-menu-close:focus-visible{color:var(--lime);background:#1111110e;border-color:#11111180}.mobile-panel-links{overscroll-behavior:contain;padding:14px 20px max(28px, env(safe-area-inset-bottom));display:grid;overflow-y:auto}.mobile-panel-links a{border-bottom:1px solid #17181414;align-items:center;min-height:52px;padding:0 12px;font-size:14px;transition:padding .18s ease-out,background .18s ease-out,color .18s ease-out;display:flex}.mobile-panel-links a:hover,.mobile-panel-links a:focus-visible{color:var(--lime);background:#1718140e;padding-inline:18px}.mobile-panel-links p{color:var(--lime);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;margin:24px 12px 6px;font-size:10px}.header-contact span{display:none}.header-contact{justify-content:center;width:44px;padding:0}.hero{padding-inline:20px}.hero-title{font-size:clamp(4rem,17vw,8rem)}.pixel-f,.pixel-h{display:none}.intro-grid,.about{grid-template-columns:1fr}.intro-grid{gap:36px;margin-top:52px}.intro-aside{max-width:440px}.project-card{grid-template-columns:150px minmax(0,1fr)}.project-card>a{grid-column:2;justify-self:start}.about-number{font-size:12rem}.guestbook-layout{grid-template-columns:1fr}.guestbook-note{position:static}.friend-note{grid-template-columns:minmax(170px,.65fr) minmax(0,1.35fr) auto;gap:16px}.friend-note a{justify-self:start}.friend-application>header{grid-template-columns:1fr;align-items:start;gap:16px}.friend-application-summary{grid-template-columns:1fr}.friend-application-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-methods>header{grid-template-columns:1fr;align-items:start}.support-methods>header>p:last-child{text-align:left}.friend-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bangumi-board{grid-template-columns:1fr;gap:54px}.album-grid{columns:2}}@media (max-width:640px){.brand{gap:10px}.brand>span:last-child{letter-spacing:.1em;font-size:12px;display:inline}.site-search-layer{place-items:start center;padding:12px}.site-search-dialog{max-height:calc(100dvh - 24px)}.site-search-results>a{grid-template-columns:38px minmax(0,1fr)}.site-search-results em{grid-column:2}.site-search-help{justify-content:center}.site-search-help span:first-child{display:none}.hero{min-height:100svh;padding-bottom:104px}.hero-title{font-size:clamp(3.4rem,18vw,5.8rem);line-height:.88}.eyebrow{letter-spacing:.08em}.hero-role{max-width:320px;margin-inline:auto}.hero-statement{font-size:16px}.hero-actions{grid-template-columns:1fr;width:min(100%,340px);margin-inline:auto;display:grid}.hero-cta{width:100%}.hero-index{display:none}.scroll-cue{justify-content:center;left:20px;right:20px}.scroll-cue span{font-size:9px}.pixel-a{top:12%;left:4%}.pixel-b{top:22%;right:3%}.pixel-c{bottom:21%;left:4%}.pixel-d{bottom:16%;right:4%}.pixel-e,.pixel-g{display:none}.content-section,.site-footer{width:min(100% - 40px,1320px)}.content-section{padding-block:92px}.page-hero{min-height:0;padding:24px 20px 22px}.page-hero-copy{width:100%;display:block}.page-hero-copy h1{margin-block:8px 0;font-size:clamp(2rem,9vw,2.8rem)}.page-hero-copy>p:last-child{text-align:left;justify-self:auto;max-width:100%;margin-top:10px;font-size:13px}.page-hero.has-action{flex-direction:column;align-items:flex-start;gap:16px}.page-hero-action{width:100%;padding-bottom:0}.blog-rss-link{justify-content:center;width:100%}.page-content{width:calc(100% - 40px);padding-top:22px}.page-section>header,.section-header,.page-section-heading,.link-group>header,.timeline>header,.support-methods>header{display:block}.page-section>header p,.section-header p{margin-top:16px}.page-section-heading>p:last-child,.link-group>header>p:last-child,.timeline>header>p:last-child,.support-methods>header>p:last-child{text-align:left;margin-top:16px}.post-card{grid-template-columns:minmax(0,1fr);grid-template-areas:"cover""meta""copy""footer";gap:0}.post-meta{flex-wrap:wrap;gap:10px 18px;display:flex}.post-footer{justify-items:start}.post-tags{justify-content:start}.message-card,.friend-note,.support-intro{grid-template-columns:1fr}.friend-application-area{gap:10px;margin-bottom:30px}.friend-note{gap:12px;padding:15px 16px}.friend-note>p{font-size:12px}.friend-application{padding:16px}.friend-review-rules,.friend-application-grid{grid-template-columns:1fr}.friend-review-rules>div{border-right:0;border-bottom:1px solid var(--border);min-height:62px}.friend-review-rules>div:last-child{border-bottom:0}.friend-application form{padding:18px}.friend-application input,.friend-application textarea{font-size:16px}.friend-application form>footer{flex-direction:column;align-items:stretch;min-height:0}.friend-application form>footer .magic-shimmer-button{width:100%}.link-grid,.support-grid,.about-layout{grid-template-columns:1fr}.friend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.album-grid{columns:2;column-gap:8px}.album-collection-grid{grid-template-columns:1fr}.album-collection-copy footer{flex-direction:column;align-items:flex-start}.album-item{margin-bottom:8px}.album-card figcaption{gap:8px;min-height:40px;padding:8px 10px;font-size:10px}.about-facts>div,.timeline>li{grid-template-columns:80px 1fr}.intro>.section-kicker{gap:20px}.intro-heading{font-size:2.25rem}.section-heading-row{margin-bottom:36px;display:block}.section-heading-row>p{text-align:left;margin-top:20px}.project-card{grid-template-columns:1fr;gap:30px;min-height:0;padding:28px 24px}.project-meta{justify-content:space-between;gap:20px;display:flex}.project-meta span:last-child{text-align:right;max-width:190px}.project-card>a{grid-column:auto}.about-number{font-size:9rem}.about-copy h2{font-size:2.55rem}.about-copy>p:not(.section-kicker){font-size:16px}.contact-topline{gap:24px}.contact h2{margin-bottom:42px;font-size:clamp(3.5rem,17vw,6rem)}.contact-email{min-height:70px;padding-inline:18px}.site-footer{grid-template-columns:1fr auto;gap:12px;min-height:132px}.footer-links{display:none}}@media (max-width:440px){.friend-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.border-beam-motion{display:none}.hero-title span,.hero-role span,.eyebrow span,.intro-heading span{opacity:1!important;filter:none!important;transform:none!important}}.border-beam-motion{overflow-anchor:none;contain:paint;isolation:isolate;overflow:clip}.border-beam-mobile-rotor{display:none}@media (hover:none) and (pointer:coarse),(max-width:767px){.border-beam-path{display:none}.border-beam-mobile-rotor{display:block}}.magic-surface{isolation:isolate;position:relative;overflow:hidden}.magic-shimmer-button{color:#fff;min-height:46px;font:inherit;cursor:pointer;isolation:isolate;background:#111;border:1px solid #111;justify-content:center;align-items:center;font-weight:720;display:inline-flex;position:relative;overflow:hidden}.magic-shimmer-button:disabled{cursor:wait;opacity:.58}.magic-shimmer-content{z-index:1;align-items:center;gap:9px;display:inline-flex;position:relative}.magic-shimmer-content svg{width:17px;height:17px}.magic-shimmer-sweep{background:linear-gradient(90deg,#0000,#ffffff5c,#0000);width:28%;animation:3.4s ease-in-out infinite magic-shimmer-sweep;position:absolute;inset:-80% auto -80% -38%;transform:rotate(18deg)}@keyframes magic-shimmer-sweep{0%,55%{transform:translate(0)rotate(18deg)}to{transform:translate(560%)rotate(18deg)}}.managed-page-body{border:1px solid var(--border);background:var(--surface);width:min(100%,1120px);margin:0 auto clamp(32px,4.5vw,58px);padding:clamp(22px,3vw,36px)}.home-main>.managed-page-body{width:min(100% - 40px,1180px);margin-block:clamp(64px,9vw,120px) 0}.comment-section{border-top:1px solid var(--border);width:100%;margin-top:clamp(42px,5vw,68px);padding-top:clamp(24px,3vw,38px)}.page-content>.comment-section:first-child{border-top:0;margin-top:0;padding-top:0}.page-content>.managed-page-body+.comment-section{margin-top:0}.comment-section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:20px;display:flex}.comment-section-heading h2{letter-spacing:-.055em;margin:5px 0 0;font-size:clamp(1.75rem,3vw,2.8rem);line-height:1}.comment-section-heading>span{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;font-size:12px}.comment-form{border:1px solid var(--border);background:var(--surface);padding:clamp(22px,3.5vw,38px)}.comment-login-gate{scroll-margin-top:calc(var(--header-height) + 24px);gap:24px;display:grid}.comment-login-copy{align-items:center;gap:16px;display:flex}.comment-login-icon{border:1px solid var(--border);background:var(--background);flex:0 0 48px;place-items:center;width:48px;height:48px;display:grid}.comment-login-icon svg{width:20px;height:20px}.comment-login-copy strong{letter-spacing:-.015em;font-size:16px;display:block}.comment-login-copy p{color:var(--muted-foreground);margin:5px 0 0;font-size:12px;line-height:1.6}.comment-login-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.comment-social-login{border:1px solid var(--foreground);justify-content:center;align-items:center;gap:10px;min-height:50px;padding:0 18px;font-size:13px;font-weight:700;transition:transform .18s ease-out,opacity .18s ease-out,box-shadow .18s ease-out;display:inline-flex}.comment-social-login:hover{transform:translateY(-1px);box-shadow:0 8px 22px #1111111a}.comment-social-login:active{transform:translateY(0)scale(.99)}.comment-social-login:focus-visible{outline:2px solid var(--foreground);outline-offset:3px}.comment-social-login svg,.comment-social-login .comment-provider-icon{width:19px;height:19px}.comment-social-login.is-github{background:var(--foreground);color:var(--background)}.comment-social-login.is-meow{background:var(--surface-soft);color:var(--foreground)}.comment-social-login.is-disabled{cursor:not-allowed;filter:saturate(.35);opacity:.5}.comment-social-login.is-disabled:hover,.comment-social-login.is-disabled:active{box-shadow:none;transform:none}.comment-auth-error{color:#8f1717;background:#8f17170e;border:1px solid #8f171752;margin:0;padding:11px 13px;font-size:12px;line-height:1.55}.comment-identity{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-width:0;padding-bottom:18px;display:flex}.comment-identity>.comment-avatar,.comment-identity>.comment-initial{flex-basis:44px;width:44px;height:44px}.comment-identity>div{gap:4px;min-width:0;display:grid}.comment-identity>div>strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.comment-identity>div>span{color:var(--muted-foreground);align-items:center;gap:5px;font-size:11px;display:inline-flex}.comment-identity>div>span svg,.comment-identity>div>span .comment-provider-icon{width:13px;height:13px}.comment-identity>button{border:1px solid var(--border);min-width:78px;min-height:44px;color:var(--muted-foreground);font:inherit;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:7px;margin-left:auto;padding:0 12px;font-size:11px;display:inline-flex}.comment-identity>button:hover:not(:disabled){border-color:var(--foreground);color:var(--foreground)}.comment-identity>button:disabled{cursor:wait;opacity:.55}.comment-identity>button svg,.comment-identity-check{width:15px;height:15px}.comment-identity-check{color:var(--muted-foreground);margin-left:auto}.comment-identity.is-compact{padding:0 0 14px}.comment-identity.is-compact>.comment-avatar,.comment-identity.is-compact>.comment-initial{flex-basis:34px;width:34px;height:34px}.comment-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.comment-form label,.admin-page-fields label{color:var(--muted-foreground);letter-spacing:.04em;gap:8px;font-size:12px;font-weight:680;display:grid}.comment-form label small{color:var(--muted-foreground);letter-spacing:normal;font-size:10px;font-weight:450;line-height:1.55}.comment-form input,.comment-form textarea,.admin-page-fields input,.admin-page-fields textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--foreground);font:inherit;letter-spacing:normal;border-radius:0;outline:none;font-size:15px;transition:border-color .16s,background .16s}.comment-form input,.admin-page-fields input{min-height:46px;padding:0 13px}.comment-form textarea,.admin-page-fields textarea{resize:vertical;padding:13px;line-height:1.7}.comment-form input:focus,.comment-form textarea:focus,.admin-page-fields input:focus,.admin-page-fields textarea:focus{border-color:var(--foreground);background:var(--surface)}.comment-form-content{margin-top:16px}.comment-honeypot{left:-9999px;position:absolute!important}.comment-form>footer{justify-content:space-between;align-items:end;gap:20px;min-height:54px;margin-top:14px;display:flex}.comment-form>footer p,.admin-page-editor-footer p{color:var(--muted-foreground);margin:0;font-size:13px}.comment-form>footer p.is-error,.admin-page-editor-footer p.is-error,.admin-error{color:#8f1717}.comment-form>footer p.is-success,.admin-page-editor-footer p.is-success{color:#17632d}.comment-form .magic-shimmer-button,.admin-page-editor .magic-shimmer-button{min-width:132px;padding:0 20px}.comment-section.is-guestbook .comment-section-heading{margin-bottom:14px}.comment-section.is-guestbook .comment-form{padding:clamp(16px,2vw,24px)}.comment-section.is-guestbook .comment-login-gate{gap:16px}.comment-section.is-guestbook .comment-login-icon{flex-basis:44px;width:44px;height:44px}.comment-section.is-guestbook .comment-social-login{min-height:46px}.comment-section.is-guestbook .comment-form-content{margin-top:12px}.comment-section.is-guestbook .comment-form-content textarea{min-height:116px}.comment-section.is-guestbook .comment-form>footer{min-height:44px;margin-top:10px}@media (min-width:721px){.comment-section.is-guestbook form.comment-form{grid-template-columns:minmax(260px,.52fr) minmax(0,1.48fr);align-items:stretch;gap:14px 22px;display:grid}.comment-section.is-guestbook form.comment-form>.comment-identity{border-right:1px solid var(--border);border-bottom:0;align-items:flex-start;padding:3px 22px 3px 0}.comment-section.is-guestbook form.comment-form>.comment-auth-error,.comment-section.is-guestbook form.comment-form>footer{grid-column:1/-1}.comment-section.is-guestbook form.comment-form>.comment-form-content{margin-top:0}.comment-section.is-guestbook .comment-login-gate{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);align-items:center}.comment-section.is-guestbook .comment-login-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.comment-section.is-guestbook .comment-login-gate>.comment-auth-error{grid-column:1/-1}}.comment-list,.admin-comment-list{background:var(--border);border:1px solid var(--border);gap:1px;margin-top:30px;display:grid}.comment-item{scroll-margin-top:calc(var(--header-height) + 24px);gap:12px;padding:14px 0;display:flex}.comment-item:target,.comment-item:focus-visible{outline:2px solid var(--foreground);outline-offset:4px}.comment-body{flex:1;min-width:0}.comment-avatar,.comment-initial{color:#fff;background:#111;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:14px;font-weight:760;display:grid}.comment-avatar{border:1px solid var(--border);background:var(--background);overflow:hidden}.comment-avatar img{object-fit:cover;width:100%;height:100%;display:block}.comment-meta{flex-wrap:wrap;align-items:baseline;gap:2px 10px;min-height:20px;display:flex}.comment-author{align-items:center;gap:5px;font-size:14px;font-weight:700;display:inline-flex}.comment-author svg{width:12px;height:12px;color:var(--muted-foreground)}a.comment-author:hover{text-underline-offset:3px;text-decoration:underline}.comment-provider-badge{border:1px solid var(--border);min-height:20px;color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;align-items:center;gap:4px;padding:0 6px;font-size:9px;line-height:1;display:inline-flex}.comment-provider-badge svg,.comment-provider-badge .comment-provider-icon{width:11px;height:11px}.comment-provider-icon{object-fit:contain;flex:none;display:block}.comment-provider-badge.is-meow{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.comment-provider-badge.is-meow{border-color:color-mix(in srgb, var(--foreground) 24%, var(--border))}}.comment-provider-badge.is-meow{color:var(--foreground)}.comment-reply-context{color:var(--muted-foreground);font-size:12px}.comment-reply-context strong{color:var(--foreground);font-weight:620}.comment-item time{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;font-size:11px}.comment-time-link{color:var(--muted-foreground)}.comment-time-link:hover time,.comment-time-link:focus-visible time{color:var(--foreground);text-underline-offset:3px;text-decoration:underline}.comment-thread-root{background:var(--surface);min-width:0;padding:6px clamp(14px,2.5vw,22px)}.comment-thread-node,.comment-thread-node>.comment-item{min-width:0}.comment-thread-children{border-left:2px solid var(--border);margin-left:17px;padding-left:19px;position:relative}.comment-thread-node.is-deep>.comment-thread-children{margin-left:8px;padding-left:12px}.comment-content{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0;font-size:14.5px;line-height:1.7}.comment-actions{flex-wrap:wrap;align-items:center;gap:2px 4px;margin:4px 0 0 -8px;display:flex}.comment-actions>button,.comment-reaction-chip,.comment-reaction-trigger{min-height:32px;color:var(--muted-foreground);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:12px;transition:background .16s,color .16s,opacity .16s;display:inline-flex}.comment-actions>button:hover:not(:disabled),.comment-reaction-chip:hover:not(:disabled),.comment-reaction-trigger:hover:not(:disabled){background:var(--surface-soft);color:var(--foreground)}.comment-actions>button.is-active{color:var(--foreground);font-weight:650}.comment-like-button.is-active svg{fill:currentColor}.comment-actions button:disabled,.comment-reaction-picker button:disabled{cursor:wait;opacity:.5}.comment-actions svg,.comment-reaction-picker svg{width:15px;height:15px}.comment-admin-actions{border-left:1px solid var(--border);align-items:center;gap:2px;margin-left:auto;padding-left:8px;display:flex}.comment-admin-actions button{min-height:32px;color:var(--muted-foreground);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:11px;transition:background .16s,color .16s,opacity .16s;display:inline-flex}.comment-admin-actions button:hover:not(:disabled){background:var(--surface-soft);color:var(--foreground)}.comment-admin-actions button.is-danger{color:#a12626}.comment-admin-actions button.is-danger:hover:not(:disabled){color:#c23131;background:#a1262617}.comment-reaction-chip b{font-family:var(--font-geist-mono), monospace;font-size:10px;font-weight:650}.comment-reaction-actions{flex-wrap:wrap;align-items:center;gap:2px 4px;display:flex;position:relative}.comment-reaction-chip{border:1px solid var(--border);min-height:28px;color:var(--foreground);gap:5px;padding:0 8px}.comment-reaction-chip.is-active{background:#1111;border-color:#111}.comment-reaction-trigger{padding:0 8px}.comment-reaction-trigger.is-active{background:var(--surface-soft);color:var(--foreground)}.comment-reaction-picker{z-index:30;border:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(4,42px);gap:4px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 16px 44px #11111124}.comment-reaction-picker:after{content:"";border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);width:9px;height:9px;position:absolute;bottom:-5px;left:16px;transform:rotate(45deg)}.comment-reaction-picker button{z-index:1;cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;width:42px;height:42px;padding:0;transition:border-color .16s,background .16s,transform .16s;display:grid;position:relative}.comment-reaction-picker button:hover:not(:disabled){border-color:var(--border);background:var(--surface-soft);transform:translateY(-2px)}.comment-reaction-picker button.is-active{background:#1111;border-color:#111}.comment-emoji{font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:21px;font-weight:400;line-height:1}.comment-load-more{border:1px solid var(--border);background:var(--surface);width:100%;min-height:50px;color:var(--muted-foreground);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:9px;margin-top:12px;font-size:11px;transition:border-color .18s ease-out,color .18s ease-out,background .18s ease-out;display:flex}.comment-load-more:hover:not(:disabled){border-color:var(--foreground);background:var(--surface-soft);color:var(--foreground)}.comment-load-more:disabled{cursor:wait;opacity:.58}.comment-load-more svg{width:16px;height:16px}.comment-reply-form{border:1px solid var(--border);background:var(--background);transform-origin:top;margin:14px 0 6px;padding:16px;animation:.22s cubic-bezier(.16,1,.3,1) comment-reply-in}@keyframes comment-reply-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.comment-reply-form{animation:none}.comment-social-login{transition:none}.comment-social-login:hover,.comment-social-login:active{transform:none}}.comment-reply-form>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:44px;margin-bottom:16px;padding-bottom:14px;display:flex}.comment-reply-form>header>div{align-items:center;gap:8px;font-size:12px;display:flex}.comment-reply-form>header>div svg{width:16px;height:16px}.comment-reply-form>header strong{color:var(--foreground)}.comment-reply-form>header>button{border:1px solid var(--border);width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;place-items:center;padding:0;display:grid}.comment-reply-form>header>button:hover{border-color:var(--foreground)}.comment-reply-form>header>button svg{width:16px;height:16px}.comment-reply-profile{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.comment-reply-form label{color:var(--muted-foreground);gap:7px;font-size:11px;font-weight:650;display:grid}.comment-reply-form input,.comment-reply-form textarea{border:1px solid var(--border);background:var(--surface);width:100%;min-height:44px;color:var(--foreground);font:inherit;resize:vertical;border-radius:0;outline:none;padding:10px 12px;font-size:14px;line-height:1.65;transition:border-color .18s,background .18s,box-shadow .18s}.comment-reply-form input:focus,.comment-reply-form textarea:focus{border-color:var(--foreground);background:#fff;box-shadow:0 0 0 3px #11111112}.comment-reply-extras{border:1px solid var(--border);margin-top:14px}.comment-reply-extras summary{min-height:44px;color:var(--muted-foreground);cursor:pointer;align-content:center;padding:0 12px;font-size:10px}.comment-reply-extras[open] summary{border-bottom:1px solid var(--border)}.comment-reply-extras>div{padding:14px}.comment-reply-content{margin-top:14px}.comment-reply-form>footer{justify-content:space-between;align-items:end;gap:18px;min-height:50px;margin-top:12px;display:flex}.comment-reply-form>footer>p{color:var(--muted-foreground);margin:0;font-size:10px;line-height:1.55}.comment-reply-form>footer>p.is-error{color:#8f1717}.comment-reply-form>footer>div{flex:none;gap:8px;display:flex}.comment-reply-form>footer>div>button:not(.magic-shimmer-button){border:1px solid var(--border);min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;padding:0 14px;font-size:11px}.comment-reply-form .magic-shimmer-button{min-width:132px;padding:0 16px}.comment-thread-feedback{border:1px solid var(--border);color:var(--muted-foreground);margin:18px 0 -12px;padding:12px 14px;font-size:11px}.comment-thread-feedback.is-success{color:#17632d;border-color:#17632d4d}.comment-thread-feedback.is-error{color:#8f1717;border-color:#8f17174d}.article-preview-banner{border:1px dashed var(--foreground);background:var(--surface);width:min(100%,1120px);color:var(--foreground);align-items:center;gap:9px;margin:0 auto 22px;padding:12px 16px;font-size:12px;display:flex}.article-preview-banner svg{flex:none;width:15px;height:15px}.error-page-section{border:1px solid var(--border);background:var(--surface);text-align:center;justify-items:center;gap:18px;width:min(100%,1120px);margin:0 auto clamp(52px,7vw,96px);padding:clamp(48px,8vw,96px) 24px;display:grid}.error-page-section>svg{width:44px;height:44px;color:var(--muted-foreground)}.error-page-section>p{color:var(--muted-foreground);margin:0}.error-page-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.error-page-actions a,.error-page-actions button{border:1px solid var(--border);min-height:46px;color:var(--foreground);font:inherit;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:0 18px;font-size:12px;font-weight:650;transition:border-color .18s ease-out,background .18s ease-out;display:inline-flex}.error-page-actions a:hover,.error-page-actions button:hover{border-color:var(--foreground);background:var(--surface-soft)}.error-page-actions svg{width:16px;height:16px}.comment-loading,.comment-empty,.admin-comments-empty,.admin-inline-loading{min-height:150px;color:var(--muted-foreground);justify-content:center;align-items:center;gap:10px;display:flex}.comment-loading svg,.admin-inline-loading svg{width:18px;height:18px}.comment-empty{border:1px solid var(--border);background:var(--surface);margin-top:30px}.comment-empty svg,.admin-comments-empty svg{width:24px;height:24px}.admin-section-tabs{border:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(6,minmax(0,1fr));margin:30px 0 22px;display:grid}.admin-section-tabs button{border:0;border-right:1px solid var(--border);min-height:78px;color:var(--muted-foreground);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:13px;padding:14px 18px;transition:background .18s,color .18s;display:flex}.admin-section-tabs button:last-child{border-right:0}.admin-section-tabs button:hover{background:var(--surface-soft);color:var(--foreground)}.admin-section-tabs button.is-active{color:#fff;background:#111}.admin-section-tabs svg{flex:none;width:21px;height:21px}.admin-section-tabs span{gap:2px;display:grid}.admin-section-tabs strong{font-size:14px}.admin-section-tabs small{color:inherit;opacity:.68;font-size:11px}.admin-section-stage{animation:.32s cubic-bezier(.16,1,.3,1) admin-stage-in}@keyframes admin-stage-in{0%{opacity:0;filter:blur(4px);transform:translateY(8px)}}.admin-content-workspace{border:1px solid var(--border);background:var(--surface);grid-template-columns:250px minmax(0,1fr);min-height:720px;display:grid}.admin-content-list{border-right:1px solid var(--border);background:var(--background)}.admin-content-list>header,.admin-comments-manager>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:74px;padding:14px 18px;display:flex}.admin-content-list>header div{gap:2px;display:grid}.admin-content-list>header p{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.1em;margin:0;font-size:11px}.admin-content-list>header strong{font-size:14px}.admin-content-list>header button,.admin-comments-manager>header button{border:1px solid var(--border);background:var(--surface);min-width:44px;min-height:44px;color:inherit;cursor:pointer;justify-content:center;align-items:center;gap:8px;display:inline-flex}.admin-content-list>header svg{width:16px;height:16px}.admin-content-list>div{display:grid}.admin-content-list>div>button{border:0;border-bottom:1px solid var(--border);min-height:66px;color:var(--muted-foreground);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:11px;padding:12px 16px;display:flex}.admin-content-list>div>button.is-active{color:#fff;background:#111}.admin-content-list>div>button>svg{width:17px;height:17px}.admin-content-list>div>button span{gap:2px;display:grid}.admin-content-list>div>button strong{font-size:13px}.admin-content-list>div>button small{color:inherit;font-family:var(--font-geist-mono), monospace;opacity:.7;font-size:10px}.admin-page-editor{min-width:0;padding:clamp(22px,3vw,38px)}.admin-page-editor-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.admin-page-editor-heading h2{letter-spacing:-.05em;margin:5px 0 0;font-size:clamp(2rem,3vw,3rem)}.admin-page-editor-heading h2 small{color:#855500;letter-spacing:.04em;vertical-align:middle;border:1px solid #a86e08;margin-left:10px;padding:5px 8px;font-size:10px;font-weight:650;display:inline-flex}.admin-page-editor-heading a{border:1px solid var(--border);align-items:center;gap:8px;min-height:44px;padding:0 14px;font-size:12px;display:inline-flex}.admin-page-editor-heading a svg{width:15px;height:15px}.admin-page-editor-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:26px;display:grid}.admin-page-fields{align-content:start;gap:18px;display:grid}.admin-page-body-input{min-height:330px;font-family:var(--font-geist-mono), monospace!important;font-size:13px!important}.admin-page-module-sections{gap:18px;margin-top:18px;display:grid}.admin-page-module-section{border:1px solid var(--border);background:var(--background)}.admin-page-module-section>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:14px 18px;display:flex}.admin-page-module-section>header>div{gap:3px;display:grid}.admin-page-module-section>header p{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:9px}.admin-page-module-section>header h3{letter-spacing:-.02em;margin:0;font-size:17px}.admin-page-module-section>header small{color:var(--muted-foreground);font-size:11px;line-height:1.6}.admin-page-module-section>header>span{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;flex:none;font-size:10px}.admin-page-module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px;display:grid}.admin-page-module-grid>label{align-content:start;gap:7px;min-width:0;display:grid}.admin-page-module-grid>label.is-wide,.admin-page-module-grid>.admin-page-list-field{grid-column:1/-1}.admin-page-module-grid>label>span,.admin-page-list-item-grid label>span{color:var(--muted-foreground);font-size:11px;font-weight:620}.admin-page-module-grid>label>small{color:var(--muted-foreground);font-size:10px;line-height:1.55}.admin-page-module-grid input:not([type=checkbox]),.admin-page-module-grid textarea,.admin-page-module-grid select,.admin-page-list-item>textarea{border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;color:var(--foreground);font:inherit;border-radius:0;outline:none;font-size:14px;transition:border-color .16s,background .16s}.admin-page-module-grid input:not([type=checkbox]),.admin-page-module-grid select{min-height:46px;padding:0 12px}.admin-page-module-grid textarea,.admin-page-list-item>textarea{resize:vertical;padding:12px;line-height:1.65}.admin-page-module-grid input:focus,.admin-page-module-grid textarea:focus,.admin-page-module-grid select:focus,.admin-page-list-item>textarea:focus{border-color:var(--foreground);background:var(--background)}.admin-page-checkbox{border:1px solid var(--border);background:var(--surface);align-items:center;min-height:46px;padding:0 12px;gap:10px!important;display:flex!important}.admin-page-checkbox input{width:18px;height:18px;accent-color:var(--foreground)}.admin-page-checkbox span{color:var(--foreground)!important}.admin-page-list-field{gap:12px;display:grid}.admin-page-list-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.admin-page-list-heading>div{gap:3px;display:grid}.admin-page-list-heading strong{font-size:12px}.admin-page-list-heading small{color:var(--muted-foreground);font-size:10px}.admin-page-list-heading>button{border:1px solid var(--foreground);background:var(--foreground);min-height:44px;color:var(--background);font:inherit;cursor:pointer;align-items:center;gap:7px;padding:0 12px;font-size:11px;display:inline-flex}.admin-page-list-heading svg{width:15px;height:15px}.admin-page-list-items{gap:10px;display:grid}.admin-page-list-item{border:1px solid var(--border);background:var(--surface-soft)}.admin-page-list-item>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:6px 8px 6px 13px;display:flex}.admin-page-list-item>header>strong{font-size:11px}.admin-page-list-item>header>div{gap:6px;display:flex}.admin-page-list-item>header button{border:1px solid var(--border);background:var(--background);width:40px;height:40px;color:var(--foreground);cursor:pointer;place-items:center;padding:0;display:grid}.admin-page-list-item>header button:disabled{cursor:not-allowed;opacity:.35}.admin-page-list-item>header button.is-danger{color:#8f1717}.admin-page-list-item>header svg{width:14px;height:14px}.admin-page-list-item>textarea{background:var(--background);border:0;min-height:92px;display:block}.admin-page-list-item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px;display:grid}.admin-page-list-item-grid label{gap:7px;min-width:0;display:grid}.admin-page-list-item-grid label.is-wide{grid-column:1/-1}.admin-page-list-empty{border:1px dashed var(--border);min-height:92px;color:var(--muted-foreground);text-align:center;place-items:center;margin:0;font-size:11px;display:grid}.admin-page-preview-shell{border:1px solid var(--border);margin-top:18px}.admin-page-preview-shell>summary{cursor:pointer;min-height:50px;padding:16px 18px;font-size:12px;font-weight:620}.admin-page-preview-shell[open]>summary{border-bottom:1px solid var(--border)}.admin-page-preview{border:1px solid var(--border);background:var(--background);min-width:0;padding:clamp(22px,3vw,34px)}.admin-page-preview-shell .admin-page-preview{border:0}.admin-page-preview>h3{letter-spacing:-.065em;overflow-wrap:anywhere;margin:10px 0 14px;font-size:clamp(2rem,4vw,4rem);line-height:.98}.admin-page-preview>p:not(.eyebrow){color:var(--muted-foreground);line-height:1.7}.admin-page-preview .article-markdown{margin-top:32px}.admin-preview-empty{border:1px dashed var(--border);min-height:240px;color:var(--muted-foreground);place-items:center;margin-top:28px;font-size:13px;display:grid}.admin-page-editor-footer{justify-content:space-between;align-items:end;gap:20px;min-height:70px;margin-top:22px;display:flex}.admin-album-manager{border:1px solid var(--border);background:var(--surface);padding:clamp(22px,3.5vw,42px)}.admin-album-loading{border:1px solid var(--border);background:var(--surface);min-height:520px;color:var(--muted-foreground);justify-content:center;align-items:center;gap:10px;display:flex}.admin-album-loading svg{width:20px;height:20px}.admin-album-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:28px;margin-bottom:30px;padding-bottom:26px;display:flex}.admin-album-heading h2{letter-spacing:-.06em;margin:6px 0 8px;font-size:clamp(2.4rem,5vw,4.4rem);line-height:.95}.admin-album-heading>div:first-child>p:last-child{max-width:680px;color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.7}.admin-album-heading>div:last-child,.admin-album-heading a,.admin-album-heading button,.admin-album-actions,.admin-album-actions>div,.admin-album-actions button,.admin-album-dimensions>button,.admin-album-detail-empty>button{align-items:center;display:flex}.admin-album-heading>div:last-child{flex:none;gap:10px}.admin-album-heading a,.admin-album-heading button,.admin-album-dimensions>button,.admin-album-actions button,.admin-album-detail-empty>button{border:1px solid var(--border);min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;justify-content:center;gap:8px;padding:0 14px;font-size:12px;transition:border-color .18s,background .18s,color .18s}.admin-album-heading button{color:#fff;background:#111;border-color:#111}.admin-album-heading button:disabled,.admin-album-upload[aria-disabled=true]{cursor:not-allowed;opacity:.42}.admin-album-heading a:hover,.admin-album-dimensions>button:hover:not(:disabled),.admin-album-actions button:hover:not(:disabled),.admin-album-detail-empty>button:hover{border-color:var(--foreground)}.admin-album-heading svg,.admin-album-dimensions>button svg,.admin-album-actions button svg,.admin-album-detail-empty>button svg{width:16px;height:16px}.admin-album-collections{border:1px solid var(--border);background:var(--background);margin-bottom:22px}.admin-album-collections>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:9px 10px 9px 16px;display:flex}.admin-album-collections>header>div{align-items:baseline;gap:8px;display:flex}.admin-album-collections>header span{color:var(--muted-foreground);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.admin-album-collections>header strong{font-size:13px}.admin-album-collections>header button{border:1px solid var(--border);background:var(--surface);width:44px;height:44px;color:inherit;cursor:pointer;place-items:center;padding:0;display:grid}.admin-album-collections>header button:hover{border-color:var(--foreground)}.admin-album-collections>header svg{width:16px;height:16px}.admin-album-collections>div{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-album-collections>div>button{border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);min-width:0;min-height:86px;color:inherit;text-align:left;cursor:pointer;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 13px;display:grid}.admin-album-collections>div>button:nth-child(3n){border-right:0}.admin-album-collections>div>button:hover{background:var(--surface-soft)}.admin-album-collections>div>button.is-active{color:#fff;background:#111}.admin-album-collections>div>button>span:first-child{border:1px solid var(--border);background:var(--background);place-items:center;width:72px;height:58px;display:grid;overflow:hidden}.admin-album-collections>div>button>span:first-child img{object-fit:contain;width:100%;height:100%;display:block}.admin-album-collections>div>button>span:first-child svg{width:22px;height:22px;color:var(--muted-foreground)}.admin-album-collections>div>button>span:nth-child(2){gap:5px;min-width:0;display:grid}.admin-album-collections>div>button strong,.admin-album-collections>div>button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-album-collections>div>button strong{font-size:12px}.admin-album-collections>div>button small{font-family:var(--font-geist-mono), monospace;opacity:.65;font-size:8px}.admin-album-collections>div>button b{font-family:var(--font-geist-mono), monospace;font-size:9px;font-weight:500}.admin-album-settings{border:1px solid var(--border);background:var(--surface-soft);margin-bottom:22px;padding:clamp(18px,2.5vw,28px)}.admin-album-settings>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px;padding-bottom:18px;display:flex}.admin-album-settings>header h3{letter-spacing:-.045em;margin:5px 0 0;font-size:clamp(1.65rem,3vw,2.5rem)}.admin-album-settings>header>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-album-settings>header button,.admin-album-no-collections>button{border:1px solid var(--border);background:var(--surface);min-height:42px;color:inherit;font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:11px;display:inline-flex}.admin-album-settings>header button:hover:not(:disabled),.admin-album-no-collections>button:hover{border-color:var(--foreground)}.admin-album-settings>header button:disabled{cursor:not-allowed;opacity:.38}.admin-album-settings>header button.danger{color:#8f1717}.admin-album-settings>header svg,.admin-album-no-collections>button svg{width:15px;height:15px}.admin-album-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.admin-album-description{grid-column:1/-1}.admin-album-settings textarea{min-height:98px}.admin-album-no-collections{border:1px dashed var(--border);min-height:360px;color:var(--muted-foreground);text-align:center;align-content:center;place-items:center;gap:12px;display:grid}.admin-album-no-collections>svg{width:44px;height:44px}.admin-album-no-collections h3{color:var(--foreground);margin:8px 0 0;font-size:25px}.admin-album-no-collections p{margin:0 0 8px}.admin-album-workspace{border:1px solid var(--border);background:var(--background);grid-template-columns:300px minmax(0,1fr);min-height:680px;display:grid}.admin-album-sidebar{border-right:1px solid var(--border);background:var(--surface);min-width:0}.admin-album-sidebar>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:13px 15px;display:flex}.admin-album-sidebar>header>div{gap:2px;display:grid}.admin-album-sidebar>header span{color:var(--muted-foreground);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.admin-album-sidebar>header strong{font-size:14px}.admin-album-sidebar>header button{border:1px solid var(--border);background:var(--background);width:44px;height:44px;color:inherit;cursor:pointer;place-items:center;display:grid}.admin-album-sidebar>header button:hover{border-color:var(--foreground)}.admin-album-sidebar>header svg{width:16px;height:16px}.admin-album-list{scrollbar-width:thin;max-height:720px;overflow-y:auto}.admin-album-list>button{border:0;border-bottom:1px solid var(--border);width:100%;min-height:82px;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;display:grid}.admin-album-list>button:hover{background:var(--surface-soft)}.admin-album-list>button.is-active{color:#fff;background:#111}.admin-album-thumb{border:1px solid var(--border);background:var(--background);place-items:center;width:70px;height:58px;display:grid;overflow:hidden}.admin-album-thumb img{object-fit:contain;width:100%;height:100%;display:block}.admin-album-thumb svg{width:20px;height:20px;color:var(--muted-foreground)}.admin-album-list-copy{gap:4px;min-width:0;display:grid}.admin-album-list-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.admin-album-list-copy small{color:inherit;font-family:var(--font-geist-mono), monospace;opacity:.65;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.admin-album-list>button>b{font-family:var(--font-geist-mono), monospace;font-size:10px;font-weight:500}.admin-album-list-empty,.admin-album-detail-empty{color:var(--muted-foreground);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.admin-album-list-empty{gap:10px;min-height:300px;padding:24px;font-size:12px}.admin-album-list-empty>svg{width:28px;height:28px}.admin-album-list-empty button{border:1px solid var(--border);min-height:40px;color:inherit;font:inherit;cursor:pointer;background:0 0;margin-top:4px;padding:0 12px;font-size:11px}.admin-album-detail{min-width:0;padding:clamp(20px,3vw,34px)}.admin-album-detail-grid{grid-template-columns:minmax(260px,.75fr) minmax(320px,1fr);gap:clamp(24px,3.5vw,44px);display:grid}.admin-album-preview-panel{min-width:0}.admin-album-preview-frame{border:1px solid var(--border);background-color:var(--surface-soft);background-image:linear-gradient(45deg,#11111109 25%,#0000 25%),linear-gradient(-45deg,#11111109 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#11111109 75%),linear-gradient(-45deg,#0000 75%,#11111109 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;place-items:center;min-height:380px;max-height:560px;display:grid;position:relative;overflow:hidden}.admin-album-preview-frame>img{object-fit:contain;width:100%;max-height:560px;display:block}.admin-album-preview-frame>span{color:#fff;min-width:38px;min-height:30px;font-family:var(--font-geist-mono), monospace;background:#111111d1;border:1px solid #fff6;place-items:center;font-size:10px;display:grid;position:absolute;top:12px;right:12px}.admin-album-preview-empty{color:var(--muted-foreground);place-items:center;gap:10px;font-size:12px;display:grid}.admin-album-preview-empty svg{width:30px;height:30px}.admin-album-preview-panel dl{border:1px solid var(--border);background:var(--surface);border-top:0;margin:0;display:grid}.admin-album-preview-panel dl div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;min-height:42px;padding:0 12px;font-size:10px;display:flex}.admin-album-preview-panel dl div:last-child{border-bottom:0}.admin-album-preview-panel dt{color:var(--muted-foreground)}.admin-album-preview-panel dd{max-width:72%;font-family:var(--font-geist-mono), monospace;text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.admin-album-fields{min-width:0}.admin-album-fields>.admin-field,.admin-album-fields>.admin-field-grid{margin-bottom:20px}.admin-album-dimensions{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px;display:grid}.admin-album-dimensions>button{grid-column:1/-1}.admin-album-dimensions>button:disabled,.admin-album-actions button:disabled{cursor:not-allowed;opacity:.42}.admin-album-actions{border-top:1px solid var(--border);justify-content:space-between;gap:18px;padding-top:20px}.admin-album-actions>div{gap:8px}.admin-album-actions button.danger{color:#8f1717}.admin-album-detail-empty{min-height:620px;padding:30px}.admin-album-detail-empty>svg{width:44px;height:44px;margin-bottom:20px}.admin-album-detail-empty h3{color:var(--foreground);margin:0;font-size:24px}.admin-album-detail-empty p{max-width:430px;margin:12px 0 22px;line-height:1.7}.admin-album-footer{justify-content:space-between;align-items:end;gap:22px;min-height:76px;padding-top:24px;display:flex}.admin-album-footer p{color:var(--muted-foreground);margin:0;font-size:12px}.admin-album-footer p.is-error{color:#8f1717}.admin-album-footer p.is-success{color:#17632d}.admin-album-footer .magic-shimmer-button{min-width:144px;padding:0 20px}.admin-friend-manager{border:1px solid var(--border);background:var(--surface);padding:clamp(22px,3.5vw,42px)}.admin-friend-loading{border:1px solid var(--border);background:var(--surface);min-height:520px;color:var(--muted-foreground);justify-content:center;align-items:center;gap:10px;display:flex}.admin-friend-loading svg{width:20px;height:20px}.admin-friend-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:28px;margin-bottom:24px;padding-bottom:26px;display:flex}.admin-friend-heading h2{letter-spacing:-.06em;margin:6px 0 8px;font-size:clamp(2.4rem,5vw,4.4rem);line-height:.95}.admin-friend-heading>div:first-child>p:last-child{max-width:700px;color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.7}.admin-friend-heading>div:last-child,.admin-friend-heading a,.admin-friend-heading button,.admin-friend-actions,.admin-friend-actions>div,.admin-friend-actions button,.admin-friend-empty button,.admin-friend-footer>div,.admin-friend-footer>div>button{align-items:center;display:flex}.admin-friend-heading>div:last-child{flex:none;gap:10px}.admin-friend-heading a,.admin-friend-heading button,.admin-friend-actions button,.admin-friend-empty button,.admin-friend-footer>div>button{border:1px solid var(--border);min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;justify-content:center;gap:8px;padding:0 14px;font-size:12px;transition:border-color .18s,background .18s,color .18s,opacity .18s}.admin-friend-heading button{color:#fff;background:#111;border-color:#111}.admin-friend-heading a:hover,.admin-friend-actions button:hover:not(:disabled),.admin-friend-empty button:hover,.admin-friend-footer>div>button:hover:not(:disabled){border-color:var(--foreground)}.admin-friend-heading svg,.admin-friend-actions button svg,.admin-friend-empty button svg,.admin-friend-footer button svg{width:16px;height:16px}.admin-friend-filters{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.admin-friend-filters button{border:1px solid var(--border);background:var(--background);min-height:44px;color:var(--muted-foreground);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:0 14px;font-size:11px;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.admin-friend-filters button:hover{border-color:var(--foreground);color:var(--foreground)}.admin-friend-filters button.is-active{color:#fff;background:#111;border-color:#111}.admin-friend-filters button span{font-family:var(--font-geist-mono), monospace;opacity:.68;font-size:9px}.admin-friend-filters .admin-friend-refresh{width:44px;margin-left:auto;padding:0}.admin-friend-refresh svg{width:16px;height:16px}.admin-friend-workspace{border:1px solid var(--border);background:var(--background);grid-template-columns:280px minmax(0,1fr);min-height:660px;display:grid}.admin-friend-list{border-right:1px solid var(--border);background:var(--surface);scrollbar-width:thin;min-width:0;max-height:760px;overflow-y:auto}.admin-friend-list>button{border:0;border-bottom:1px solid var(--border);width:100%;min-height:78px;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;transition:background .18s,color .18s;display:grid}.admin-friend-list>button:hover{background:var(--surface-soft)}.admin-friend-list>button.is-active{color:#fff;background:#111}.admin-friend-list>button>span:nth-child(2){gap:4px;min-width:0;display:grid}.admin-friend-list>button strong,.admin-friend-list>button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-friend-list>button strong{font-size:12px}.admin-friend-list>button small{color:inherit;font-family:var(--font-geist-mono), monospace;opacity:.62;font-size:8px}.admin-friend-avatar{border:1px solid var(--border);background:var(--background);width:46px;height:46px;color:var(--foreground);font-family:var(--font-geist-mono), monospace;place-items:center;font-size:13px;font-weight:720;display:grid;overflow:hidden}.admin-friend-avatar img{object-fit:cover;width:100%;height:100%;display:block}.admin-friend-list>button.is-active .admin-friend-avatar{border-color:#ffffff4d}.admin-friend-list>button>b,.admin-friend-status{min-height:26px;font-family:var(--font-geist-mono), monospace;white-space:nowrap;border:1px solid;justify-content:center;align-items:center;padding:0 8px;font-size:8px;font-weight:620;display:inline-flex}.admin-friend-manager [data-status=approved]{color:#17632d}.admin-friend-manager [data-status=pending]{color:#765211}.admin-friend-manager [data-status=rejected]{color:#8f1717}.admin-friend-manager [data-status=hidden]{color:#636363}.admin-friend-list>button.is-active>b{color:#fff}.admin-friend-list-empty,.admin-friend-empty{color:var(--muted-foreground);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.admin-friend-list-empty{gap:10px;min-height:300px;padding:24px;font-size:12px}.admin-friend-list-empty svg{width:28px;height:28px}.admin-friend-empty{min-height:620px;padding:30px}.admin-friend-empty>svg{width:44px;height:44px;margin-bottom:20px}.admin-friend-empty h3{color:var(--foreground);margin:0 0 22px;font-size:24px}.admin-friend-editor{min-width:0;padding:clamp(20px,3vw,34px)}.admin-friend-editor-grid{grid-template-columns:minmax(240px,.72fr) minmax(320px,1.28fr);gap:clamp(24px,3.5vw,44px);display:grid}.admin-friend-preview{border:1px solid var(--border);background:var(--surface);flex-direction:column;align-self:start;align-items:flex-start;min-width:0;min-height:430px;padding:clamp(22px,3vw,32px);display:flex;position:sticky;top:94px}.admin-friend-preview-avatar{border:1px solid var(--border);color:#fff;width:84px;height:84px;font-family:var(--font-geist-mono), monospace;background:#111;flex:0 0 84px;place-items:center;margin-bottom:34px;font-size:24px;font-weight:720;display:grid;overflow:hidden}.admin-friend-preview-avatar img{object-fit:cover;width:100%;height:100%;display:block}.admin-friend-preview-avatar svg{width:28px;height:28px}.admin-friend-preview h3{overflow-wrap:anywhere;letter-spacing:-.05em;max-width:100%;margin:18px 0 10px;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1}.admin-friend-preview>p{min-height:54px;color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.7}.admin-friend-preview>div:not(.admin-friend-preview-avatar){min-width:0;color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;overflow-wrap:anywhere;align-items:center;gap:8px;margin-top:24px;font-size:9px;display:flex}.admin-friend-preview>div:not(.admin-friend-preview-avatar) svg{flex:none;width:15px;height:15px}.admin-friend-preview>aside{color:#8f1717;border:1px solid #8f171747;align-items:flex-start;gap:10px;width:100%;margin-top:auto;padding:13px;display:flex}.admin-friend-preview>aside.is-success{color:#17632d;border-color:#17632d47}.admin-friend-preview>aside svg{flex:none;width:18px;height:18px}.admin-friend-preview>aside span{gap:3px;min-width:0;display:grid}.admin-friend-preview>aside strong{font-size:10px}.admin-friend-preview>aside small{overflow-wrap:anywhere;font-size:9px;line-height:1.55}.admin-friend-fields{min-width:0}.admin-friend-fields>.admin-field,.admin-friend-fields>.admin-field-grid{margin-bottom:20px}.admin-friend-fields .admin-field select{border:1px solid var(--border);background:var(--surface);width:100%;min-height:46px;color:var(--foreground);font:inherit;cursor:pointer;border-radius:0;outline:none;padding:0 38px 0 13px;font-size:14px;transition:border-color .18s ease-out,background .18s ease-out,box-shadow .18s ease-out}.admin-friend-fields .admin-field select:focus{border-color:var(--foreground);background:var(--surface);box-shadow:0 0 0 3px #11111114}.admin-friend-actions{border-top:1px solid var(--border);justify-content:space-between;gap:18px;padding-top:20px}.admin-friend-actions>div{gap:8px}.admin-friend-actions button.danger{color:#8f1717}.admin-friend-actions button:disabled,.admin-friend-footer button:disabled{cursor:not-allowed;opacity:.42}.admin-friend-footer{justify-content:space-between;align-items:end;gap:22px;min-height:76px;padding-top:24px;display:flex}.admin-friend-footer>p{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.6}.admin-friend-footer>p.is-error{color:#8f1717}.admin-friend-footer>p.is-success{color:#17632d}.admin-friend-footer>div{flex:none;gap:10px}.admin-friend-footer>div>button{min-width:126px}.admin-friend-footer .magic-shimmer-button{min-width:144px;padding:0 20px}.admin-bangumi-settings{border:1px solid var(--border);background:var(--surface);padding:clamp(22px,3.5vw,42px)}.admin-bangumi-loading{border:1px solid var(--border);background:var(--surface);min-height:440px;color:var(--muted-foreground);justify-content:center;align-items:center;gap:10px;display:flex}.admin-bangumi-loading svg{width:20px;height:20px}.admin-bangumi-loading.is-error{color:#8f1717}.admin-bangumi-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:end;gap:26px;margin-bottom:34px;padding-bottom:26px;display:flex}.admin-bangumi-heading h2{letter-spacing:-.06em;margin:6px 0 8px;font-size:clamp(2.4rem,5vw,4.4rem);line-height:.95}.admin-bangumi-heading>div>p:last-child{max-width:660px;color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.7}.admin-bangumi-heading>a{border:1px solid var(--border);flex:none;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-size:12px;display:inline-flex}.admin-bangumi-heading>a:hover{border-color:var(--foreground)}.admin-bangumi-heading>a svg{width:15px;height:15px}.admin-bangumi-warning{color:#8f1717;background:#8f17170d;border:1px solid #8f171752;align-items:center;gap:10px;min-height:54px;margin:-8px 0 26px;padding:12px 16px;font-size:12px;display:flex}.admin-bangumi-warning svg{flex:none;width:18px;height:18px}.admin-bangumi-grid{grid-template-columns:minmax(0,1fr) 300px;gap:clamp(26px,4vw,54px);display:grid}.admin-bangumi-fields .admin-field{margin-bottom:20px}.admin-token-field label{align-items:center;gap:7px;display:flex}.admin-token-field label svg{width:14px;height:14px}.admin-token-field small a{color:var(--foreground);text-underline-offset:3px;margin-left:7px;text-decoration:underline}.admin-bangumi-categories{border:0;margin:4px 0 22px;padding:0}.admin-bangumi-categories legend{color:#4f4f4f;letter-spacing:.04em;margin-bottom:9px;font-size:11px;font-weight:620}.admin-bangumi-categories>div{border:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-bangumi-categories label{border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--background);min-height:72px;color:var(--muted-foreground);cursor:pointer;align-items:center;gap:12px;padding:12px 14px;display:flex;position:relative}.admin-bangumi-categories label:nth-child(2n){border-right:0}.admin-bangumi-categories label:nth-last-child(-n+2){border-bottom:0}.admin-bangumi-categories label.is-selected{color:#fff;background:#111}.admin-bangumi-categories input{opacity:0;pointer-events:none;position:absolute}.admin-bangumi-categories label>span{gap:2px;min-width:0;display:grid}.admin-bangumi-categories strong{font-size:13px}.admin-bangumi-categories small{color:inherit;opacity:.65;font-size:9px}.admin-bangumi-categories label>svg{opacity:0;width:17px;height:17px;margin-left:auto}.admin-bangumi-categories label.is-selected>svg{opacity:1}.admin-bangumi-switch{border:1px solid var(--border);cursor:pointer;align-items:center;gap:12px;min-height:62px;margin-top:10px;padding:11px 14px;display:flex}.admin-bangumi-switch input{accent-color:#111;width:18px;height:18px}.admin-bangumi-switch span{gap:2px;display:grid}.admin-bangumi-switch strong{font-size:12px}.admin-bangumi-switch small{color:var(--muted-foreground);font-size:9px;line-height:1.5}.admin-bangumi-summary{border:1px solid var(--border);background:var(--background);align-self:start;min-height:370px;padding:28px;position:sticky;top:94px}.admin-bangumi-summary>svg{stroke-width:1.5px;width:34px;height:34px;margin-bottom:34px}.admin-bangumi-summary h3{overflow-wrap:anywhere;letter-spacing:-.04em;margin:8px 0 24px;font-size:27px}.admin-bangumi-summary dl{border-top:1px solid var(--border);margin:0;display:grid}.admin-bangumi-summary dl div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:46px;font-size:11px;display:flex}.admin-bangumi-summary dt{color:var(--muted-foreground)}.admin-bangumi-summary dd{font-family:var(--font-geist-mono), monospace;margin:0}.admin-bangumi-summary>p:last-child{color:var(--muted-foreground);margin:24px 0 0;font-size:11px;line-height:1.7}.admin-bangumi-test-result{gap:8px;margin-top:24px;display:grid}.admin-bangumi-test-result>strong{margin-bottom:2px;font-size:11px}.admin-bangumi-test-result span{color:var(--muted-foreground);justify-content:space-between;align-items:center;font-size:10px;display:flex}.admin-bangumi-test-result b{color:var(--foreground);font-family:var(--font-geist-mono), monospace}.admin-bangumi-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:end;gap:22px;min-height:76px;margin-top:30px;padding-top:24px;display:flex}.admin-bangumi-footer>p{color:var(--muted-foreground);margin:0;font-size:12px}.admin-bangumi-footer>p.is-error{color:#8f1717}.admin-bangumi-footer>p.is-success{color:#17632d}.admin-bangumi-footer>div{gap:10px;display:flex}.admin-bangumi-footer .magic-shimmer-button,.admin-bangumi-test{min-width:132px;padding:0 18px}.admin-bangumi-test{border:1px solid var(--foreground);min-height:46px;color:inherit;font:inherit;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:680;display:inline-flex}.admin-bangumi-test:disabled{cursor:wait;opacity:.5}.admin-bangumi-test svg{width:16px;height:16px}.admin-comments-manager{border:1px solid var(--border);background:var(--surface);min-height:620px}.admin-comments-manager>header{padding:20px 24px}.admin-comments-manager>header h2{letter-spacing:-.05em;margin:5px 0 0;font-size:clamp(2rem,4vw,3.4rem)}.admin-comments-manager>header button{font:inherit;padding:0 14px;font-size:12px}.admin-comments-manager>header button svg{width:16px;height:16px}.admin-comment-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;padding:16px 24px;display:flex}.admin-comment-filters button{border:1px solid var(--border);min-height:42px;color:var(--muted-foreground);font:inherit;cursor:pointer;background:0 0;padding:0 16px;font-size:12px}.admin-comment-filters button.is-active{color:#fff;background:#111;border-color:#111}.admin-comment-list{margin:24px}.admin-comment-row{background:var(--surface);padding:22px}.admin-comment-row.is-hidden{opacity:.58}.admin-comment-row>header{justify-content:space-between;align-items:start;gap:20px;display:flex}.admin-comment-row>header>div{align-items:center;gap:10px;display:flex}.admin-comment-row>header svg{width:18px;height:18px}.admin-comment-row>header span{display:grid}.admin-comment-avatar{border:1px solid var(--border);background:var(--background);width:42px;height:42px;color:var(--foreground);flex:0 0 42px;place-items:center;font-size:14px;font-weight:760;overflow:hidden;display:grid!important}.admin-comment-avatar.is-fallback{background:var(--foreground);color:var(--background)}.admin-comment-avatar img{object-fit:cover;width:100%;height:100%;display:block}.admin-comment-row>header span strong{align-items:center;gap:6px;display:inline-flex}.admin-comment-row>header span strong svg{width:13px;height:13px;color:var(--muted-foreground)}.admin-comment-row>header small,.admin-comment-row time{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;font-size:10px}.admin-comment-row>p{white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0;line-height:1.7}.admin-comment-row>footer{border-top:1px solid var(--border);color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:20px;padding-top:14px;font-size:11px;display:flex}.admin-comment-row>footer div{gap:8px;display:flex}.admin-comment-row>footer button{border:1px solid var(--border);min-height:40px;color:var(--foreground);font:inherit;cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 12px;font-size:11px;display:inline-flex}.admin-comment-row>footer button.danger{color:#8f1717}.admin-comment-row>footer svg{width:14px;height:14px}.admin-error{margin:18px 24px 0}@media (max-width:980px){.comment-form-grid{grid-template-columns:1fr 1fr}.admin-section-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-section-tabs button:nth-child(3n){border-right:0}.admin-section-tabs button:nth-child(-n+3){border-bottom:1px solid var(--border)}.admin-page-editor-grid{grid-template-columns:1fr}.admin-content-workspace{grid-template-columns:210px minmax(0,1fr)}.admin-bangumi-grid{grid-template-columns:1fr}.admin-bangumi-summary{min-height:0;position:static}.admin-album-detail-grid{grid-template-columns:1fr}.admin-album-preview-frame{min-height:320px}.admin-album-collections>div{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-album-collections>div>button:nth-child(3n){border-right:1px solid var(--border)}.admin-album-collections>div>button:nth-child(2n){border-right:0}.admin-friend-editor-grid{grid-template-columns:1fr}.admin-friend-preview{min-height:360px;position:static}}@media (max-width:720px){.comment-form-grid,.comment-login-actions{grid-template-columns:1fr}.comment-form>footer,.admin-page-editor-footer{flex-direction:column;align-items:stretch}.comment-form .magic-shimmer-button,.admin-page-editor .magic-shimmer-button{width:100%}.comment-reply-form>footer{flex-direction:column;align-items:stretch}.comment-reply-form>footer>div{width:100%}.comment-reply-form>footer>div>button{flex:1}.admin-section-tabs{grid-template-columns:1fr}.admin-section-tabs button,.admin-section-tabs button:nth-child(3n){border-right:0;border-bottom:1px solid var(--border);min-height:66px}.admin-section-tabs button:last-child{border-bottom:0}.admin-content-workspace{grid-template-columns:1fr}.admin-content-list{border-right:0;border-bottom:1px solid var(--border)}.admin-content-list>div{grid-template-columns:repeat(2,minmax(0,1fr));max-height:250px;overflow:auto}.admin-content-list>div>button{border-right:1px solid var(--border)}.admin-page-editor-heading{flex-direction:column;align-items:start}.admin-page-module-grid,.admin-page-list-item-grid{grid-template-columns:1fr}.admin-page-list-item-grid label.is-wide{grid-column:auto}.admin-page-list-heading{flex-direction:column;align-items:stretch}.admin-page-list-heading>button{justify-content:center}.admin-album-heading,.admin-album-footer{flex-direction:column;align-items:stretch}.admin-album-heading>div:last-child{width:100%}.admin-album-heading a,.admin-album-heading button,.admin-album-heading .admin-album-upload{flex:1}.admin-album-settings>header{flex-direction:column;align-items:stretch}.admin-album-settings>header>div:last-child{justify-content:flex-start}.admin-album-workspace{grid-template-columns:1fr}.admin-album-sidebar{border-right:0;border-bottom:1px solid var(--border)}.admin-album-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:310px;display:grid}.admin-album-list>button{border-right:1px solid var(--border)}.admin-album-footer .magic-shimmer-button{width:100%}.admin-friend-heading,.admin-friend-footer{flex-direction:column;align-items:stretch}.admin-friend-heading>div:last-child{width:100%}.admin-friend-heading a,.admin-friend-heading button{flex:1}.admin-friend-workspace{grid-template-columns:1fr}.admin-friend-list{border-right:0;border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));max-height:310px;display:grid}.admin-friend-list>button{border-right:1px solid var(--border)}.admin-friend-footer>div{width:100%}.admin-friend-footer>div>button,.admin-friend-footer .magic-shimmer-button{flex:1}.admin-bangumi-heading,.admin-bangumi-footer{flex-direction:column;align-items:stretch}.admin-bangumi-heading>a{align-self:start}.admin-bangumi-footer>div,.admin-bangumi-footer .magic-shimmer-button,.admin-bangumi-test{width:100%}.admin-comment-row>header,.admin-comment-row>footer{flex-direction:column;align-items:start}}@media (max-width:560px){.comment-admin-actions{border-top:1px solid var(--border);border-left:0;justify-content:flex-end;width:100%;margin-left:0;padding:4px 0 0}}@media (prefers-reduced-motion:reduce){.magic-shimmer-sweep,.admin-section-stage{animation:none}}@media (max-width:1100px){.bangumi-entry-grid,.bangumi-loading-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:820px){.bangumi-entry-grid,.bangumi-loading-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.bangumi-overview{flex-direction:column;align-items:stretch}.bangumi-overview>a{justify-content:space-between}.bangumi-category-tabs,.bangumi-loading-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.bangumi-category-tabs button:nth-child(2){border-right:0}.bangumi-category-tabs button:nth-child(-n+2){border-bottom:1px solid var(--border)}.bangumi-section-heading{min-height:0;margin-top:42px;display:block}.bangumi-section-heading>p{margin-top:16px}.bangumi-entry-grid,.bangumi-loading-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.bangumi-entry-copy{padding:13px 11px 12px}.bangumi-entry-copy h3{font-size:12px}.bangumi-score,.bangumi-loading-grid span:nth-child(n+7){display:none}.admin-bangumi-categories>div,.admin-field-grid{grid-template-columns:1fr}.comment-thread-children,.comment-thread-node.is-deep>.comment-thread-children{margin-left:8px;padding-left:10px}.comment-login-copy{align-items:flex-start}.comment-identity{flex-wrap:wrap;align-items:flex-start}.comment-identity>button{width:100%;margin-left:0}.comment-identity-check{margin-top:8px}.comment-reply-profile{grid-template-columns:1fr}.comment-reply-form{padding:14px}.comment-reply-form input,.comment-reply-form textarea{font-size:16px}.admin-bangumi-categories label{border-right:0}.admin-bangumi-categories label:nth-last-child(2){border-bottom:1px solid var(--border)}.admin-album-manager{padding:18px}.admin-album-heading>div:last-child{flex-direction:column;align-items:stretch}.admin-album-list{grid-template-columns:1fr}.admin-album-list>button{border-right:0}.admin-album-collections>div{grid-template-columns:1fr}.admin-album-collections>div>button,.admin-album-collections>div>button:nth-child(2n),.admin-album-collections>div>button:nth-child(3n){border-right:0}.admin-album-settings-grid{grid-template-columns:1fr}.admin-album-description{grid-column:auto}.admin-album-manager .admin-field input,.admin-album-manager .admin-field textarea{font-size:16px}.admin-album-detail{padding:18px}.admin-album-preview-frame{min-height:260px}.admin-album-dimensions{grid-template-columns:1fr}.admin-album-dimensions>button{grid-column:auto}.admin-album-actions{flex-direction:column;align-items:stretch}.admin-album-actions>div{grid-template-columns:1fr 1fr;display:grid}.admin-album-actions button{width:100%}.admin-friend-manager{padding:18px}.admin-friend-heading>div:last-child{flex-direction:column;align-items:stretch}.admin-friend-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-friend-filters .admin-friend-refresh{width:100%;margin-left:0}.admin-friend-list{grid-template-columns:1fr}.admin-friend-list>button{border-right:0}.admin-friend-editor{padding:18px}.admin-friend-preview{min-height:330px}.admin-friend-fields .admin-field select{font-size:16px}.admin-friend-actions{flex-direction:column;align-items:stretch}.admin-friend-actions>div{grid-template-columns:1fr 1fr;display:grid}.admin-friend-actions button{width:100%}.admin-friend-footer>div{grid-template-columns:1fr;display:grid}}@media (prefers-reduced-motion:reduce){.bangumi-entry,.bangumi-entry-cover img,.bangumi-entry-external{transition:none}.bangumi-entry:hover,.bangumi-entry:focus-within{transform:none}.bangumi-loading-hero span,.bangumi-loading-hero strong,.bangumi-loading-hero i,.bangumi-loading-tabs span,.bangumi-loading-grid span{animation:none}}.post-copy h3 a{color:inherit;text-underline-offset:.16em;text-decoration:none;transition:color .18s ease-out}.post-copy h3 a:hover,.post-copy h3 a:focus-visible{color:var(--lime);text-decoration:underline}.post-read-link{color:#565a50;white-space:nowrap;justify-content:flex-end;align-items:center;gap:7px;min-height:44px;display:inline-flex}.post-read-link:hover,.post-read-link:focus-visible{color:var(--lime)}.post-read-link svg{width:14px;height:14px;transition:transform .18s ease-out}.post-card:hover .post-read-link svg,.post-card:focus-within .post-read-link svg{transform:translate(4px)}.article-shell .page-hero{min-height:0;padding-top:clamp(24px,3vw,36px);padding-bottom:clamp(22px,2.6vw,32px)}.article-shell .page-hero-copy{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);width:100%}.article-shell .page-hero-copy h1{letter-spacing:-.045em;text-wrap:balance;max-width:1080px;margin:8px 0 0;font-size:clamp(2rem,3.1vw,3.25rem);line-height:1.12}.article-shell .page-hero-copy>p:last-child{max-width:46ch;font-size:clamp(13px,1vw,15px);line-height:1.65}.article-shell .page-content{width:min(1400px,100% - 48px);padding-top:clamp(24px,3vw,40px)}.article-page{width:min(100%,1320px);margin-inline:auto}.article-reading-layout{grid-template-columns:minmax(0,1fr) minmax(220px,248px);align-items:start;gap:clamp(40px,5vw,72px);display:grid}.article-reading-column{min-width:0}.article-details{border-bottom:1px solid var(--border);color:#6a6e64;font-family:var(--font-geist-mono), monospace;margin-bottom:34px;flex-wrap:wrap;align-items:center;gap:10px 20px;width:min(100%,960px);margin-inline:auto;padding-bottom:24px;font-size:11px;display:flex}.article-details>span,.article-details>time{align-items:center;gap:7px;display:inline-flex}.article-details>span:first-child{display:none}.article-details svg{width:14px;height:14px;color:var(--lime)}.article-details ul{color:#55594f;flex-wrap:wrap;flex:1;justify-content:flex-end;gap:8px;margin:0;padding:0;list-style:none;display:flex}.article-cover{border:1px solid var(--border);background:var(--surface-soft);object-fit:contain;object-position:center;width:min(100%,960px);height:auto;max-height:none;margin:0 auto clamp(42px,7vw,72px);display:block}.article-prose{color:#30332d;overflow-wrap:anywhere;font-size:16px;line-height:1.8}.article-prose>*{max-width:72ch;margin-inline:auto}.article-prose h1,.article-prose h2,.article-prose h3,.article-prose h4{color:var(--foreground);letter-spacing:-.025em;scroll-margin-top:calc(var(--header-height) + 24px);font-weight:620;line-height:1.3}.article-prose h1{margin-top:2.4em;font-size:clamp(2rem,5vw,3.4rem)}.article-prose h2{margin-top:2.3em;font-size:clamp(1.65rem,3.7vw,2.45rem)}.article-prose h3{margin-top:2em;font-size:clamp(1.3rem,2.6vw,1.75rem)}.article-prose p,.article-prose ul,.article-prose ol,.article-prose blockquote,.article-code-block,.article-prose table{margin-top:1.25em;margin-bottom:1.25em}.article-prose li+li{margin-top:.4em}.article-prose a{color:#111;text-underline-offset:.16em;text-decoration:underline}.article-prose strong{color:var(--foreground);font-weight:650}.article-prose hr{border:0;border-top:1px solid var(--border);margin:3.5rem auto}.article-prose blockquote{border-left:3px solid var(--lime);color:#4f534a;background:#1111110b;padding:18px 22px}.article-prose blockquote>:first-child{margin-top:0}.article-prose blockquote>:last-child{margin-bottom:0}.article-prose code{font-family:var(--font-geist-mono), monospace;background:#1718140e;border:1px solid #17181417;border-radius:4px;padding:.16em .4em;font-size:.88em}.article-prose pre{color:#f1f2ec;tab-size:2;background:#1d1f1a;border:1px solid #1718141a;max-width:100%;padding:20px 22px;font-size:13px;line-height:1.65;overflow-x:auto}.article-prose pre code{color:inherit;font-size:inherit;background:0 0;border:0;padding:0}.article-code-block{background:#fafafa;border:1px solid #1718142e;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px #1111110b}.article-code-toolbar{background:#ececee;border-bottom:1px solid #17181424;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:44px;display:grid}.article-code-dots{gap:7px;padding:0 14px;display:flex}.article-code-dots i{background:#c9c9cc;border-radius:50%;width:10px;height:10px;display:block}.article-code-language{color:#6e716b;font-family:var(--font-geist-mono), monospace;letter-spacing:.09em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:10px;overflow:hidden}.article-code-toolbar button{color:#555853;min-width:44px;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;border-left:1px solid #17181429;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:11px;transition:background .18s ease-out,color .18s ease-out;display:inline-flex}.article-code-toolbar button:hover{background:var(--foreground);color:var(--background)}.article-code-toolbar button svg{stroke-width:1.7px;width:17px;height:17px}.article-code-scroll{overscroll-behavior-x:contain;scrollbar-color:#5d605b #dedede;scrollbar-gutter:stable;scrollbar-width:thin;-webkit-overflow-scrolling:touch;max-width:100%;overflow:auto hidden}.article-code-scroll::-webkit-scrollbar{height:9px}.article-code-scroll::-webkit-scrollbar-track{background:#dedede;border-top:1px solid #17181414}.article-code-scroll::-webkit-scrollbar-thumb{background:#5d605b;border:2px solid #dedede;border-radius:999px}.article-code-scroll:focus-visible{outline-offset:-3px}.article-code-scroll-hint{display:none}.article-code-block .article-code-pre{color:#282a27;width:max-content;min-width:100%;max-width:none;font-family:var(--font-geist-mono), monospace;tab-size:2;background:0 0;border:0;grid-template-columns:auto minmax(max-content,1fr);margin:0;padding:14px 0;font-size:13px;line-height:1.75;display:grid;overflow:visible}.article-code-block .article-code-line-numbers,.article-code-block .article-code-content{white-space:pre;min-height:1.75em;display:block}.article-code-block .article-code-line-numbers{z-index:1;color:#969992;text-align:right;-webkit-user-select:none;user-select:none;background:#fafafa;border-right:1px solid #1718141a;min-width:52px;padding:0 13px 0 8px;position:sticky;left:0}.article-code-block .article-code-content{min-width:0;color:inherit;font:inherit;background:0 0;border:0;border-radius:0;padding:0 18px}.article-code-content .token.comment,.article-code-content .token.prolog,.article-code-content .token.doctype,.article-code-content .token.cdata{color:#6a737d}.article-code-content .token.punctuation{color:#24292e}.article-code-content .token.property,.article-code-content .token.tag,.article-code-content .token.boolean,.article-code-content .token.number,.article-code-content .token.constant,.article-code-content .token.symbol,.article-code-content .token.deleted{color:#005cc5}.article-code-content .token.selector,.article-code-content .token.attr-name,.article-code-content .token.string,.article-code-content .token.char,.article-code-content .token.builtin,.article-code-content .token.inserted{color:#22863a}.article-code-content .token.operator,.article-code-content .token.entity,.article-code-content .token.url,.article-code-content .language-css .token.string,.article-code-content .style .token.string,.article-code-content .token.atrule,.article-code-content .token.attr-value,.article-code-content .token.keyword{color:#d73a49}.article-code-content .token.function,.article-code-content .token.class-name{color:#6f42c1}.article-code-content .token.regex,.article-code-content .token.important,.article-code-content .token.variable{color:#e36209}.article-prose img{border:1px solid var(--border);background:var(--surface-soft);width:auto;max-width:100%;height:auto;margin:2rem auto;display:block}.article-prose table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.article-prose th,.article-prose td{border:1px solid var(--border);text-align:left;min-width:120px;padding:10px 12px}.article-prose th{background:#1718140b}.article-toc{top:calc(var(--header-height) + 28px);max-height:calc(100svh - var(--header-height) - 56px);border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f7f7eb;position:sticky;overflow:hidden}.article-toc>p{border-bottom:1px solid var(--border);color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;margin:0;padding:17px 18px;font-size:11px}.article-toc nav{max-height:calc(100svh - var(--header-height) - 112px);overscroll-behavior:contain;padding:10px;overflow-y:auto}.article-toc ol{gap:2px;margin:0;padding:0;list-style:none;display:grid}.article-toc a{color:#62665d;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:6px;min-height:38px;padding:7px 9px;font-size:12px;line-height:1.45;transition:background .18s ease-out,color .18s ease-out;display:grid}.article-toc a[data-level="2"]{padding-left:17px}.article-toc a[data-level="3"]{padding-left:27px}.article-toc a>span{color:#999d94;font-family:var(--font-geist-mono), monospace}.article-toc a:hover{color:var(--foreground);background:#1111110e}.article-toc a[aria-current=location]{background:var(--foreground);color:var(--background)}.article-toc a[aria-current=location]>span{color:currentColor;opacity:.58}.article-progress{top:var(--header-height);z-index:60;pointer-events:none;height:2px;position:fixed;left:0;right:0;overflow:hidden}.article-progress>span{transform-origin:0;background:var(--foreground);will-change:transform;width:100%;height:100%;display:block}.article-actions{right:max(16px,50vw - 740px);bottom:max(24px, env(safe-area-inset-bottom));z-index:45;justify-items:end;gap:8px;display:grid;position:fixed}.article-action-items{will-change:transform, opacity;gap:8px;transition:transform .24s linear,opacity .24s linear;display:grid;position:absolute;bottom:calc(100% + 8px);right:0}.article-actions button{border:1px solid var(--border);width:48px;height:48px;color:var(--foreground);cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f7f7eb;place-items:center;padding:0;transition:border-color .18s ease-out,background .18s ease-out,color .18s ease-out;display:grid;position:relative}.article-actions button:hover{border-color:var(--foreground);background:var(--foreground);color:var(--background)}.article-actions-toggle{z-index:1;position:relative}.article-actions button svg{stroke-width:1.7px;width:19px;height:19px}.article-action-label{background:var(--foreground);width:max-content;color:var(--background);opacity:0;pointer-events:none;padding:7px 9px;font-size:11px;transition:opacity .16s ease-out,transform .16s ease-out;position:absolute;top:50%;right:calc(100% + 10px);transform:translate(5px,-50%)}.article-actions button:hover .article-action-label,.article-actions button:focus-visible .article-action-label{opacity:1;transform:translateY(-50%)}.article-comments{max-width:72ch;scroll-margin-top:calc(var(--header-height) + 32px);border:1px solid var(--border);background:var(--surface-soft);margin:clamp(72px,10vw,120px) auto 0;padding:clamp(28px,5vw,46px)}.article-comments h2{letter-spacing:-.045em;margin:10px 0 12px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.1}.article-comments>p:not(.section-kicker){max-width:44ch;color:var(--muted-foreground);margin:0 0 24px;line-height:1.75}.article-comments>a{background:var(--foreground);min-height:44px;color:var(--background);align-items:center;gap:9px;padding:0 16px;font-size:12px;font-weight:650;transition:opacity .18s ease-out;display:inline-flex}.article-comments>a:hover{opacity:.72}.article-comments>a svg{width:16px;height:16px}.article-footer{border-top:1px solid var(--border);justify-content:space-between;gap:20px;margin-top:clamp(70px,10vw,120px);padding-top:28px;display:flex}.article-footer a,.article-lock button,.guestbook-empty>a,.about-contact-links a{align-items:center;gap:9px;min-height:44px;display:inline-flex}.article-footer svg,.about-contact-links svg,.guestbook-empty>a svg{width:16px;height:16px;color:var(--lime)}.article-neighbor-nav{border:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px;display:grid}.article-neighbor-nav>a{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;min-height:104px;padding:20px;transition:background .18s ease-out;display:grid}.article-neighbor-nav>a:last-of-type{border-left:1px solid var(--border);text-align:right;grid-template-columns:minmax(0,1fr) auto}.article-neighbor-nav>a:hover{background:var(--surface-soft)}.article-neighbor-nav svg{width:18px;height:18px}.article-neighbor-nav span{gap:7px;min-width:0;display:grid}.article-neighbor-nav small{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:9px}.article-neighbor-nav strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:620;overflow:hidden}.article-related{margin-top:clamp(70px,9vw,108px)}.article-related>header{margin-bottom:24px}.article-related>header h2{letter-spacing:-.05em;margin:9px 0 0;font-size:clamp(2rem,4vw,3.2rem);line-height:1}.article-related>div{border:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.article-related>div>a{border-right:1px solid var(--border);align-content:start;gap:12px;min-height:210px;padding:22px;transition:background .18s ease-out;display:grid;position:relative}.article-related>div>a:last-child{border-right:0}.article-related>div>a:hover{background:var(--surface-soft)}.article-related small{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;font-size:9px}.article-related strong{padding-right:24px;font-size:16px;line-height:1.35}.article-related p{color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.7}.article-related svg{width:15px;height:15px;position:absolute;top:22px;right:20px}@media (max-width:720px){.article-neighbor-nav,.article-related>div{grid-template-columns:1fr}.article-neighbor-nav>a:last-of-type{border-top:1px solid var(--border);border-left:0}.article-related>div>a{border-right:0;border-bottom:1px solid var(--border);min-height:170px}.article-related>div>a:last-child{border-bottom:0}}.article-lock,.empty-state{border:1px solid var(--border);background:var(--surface-glass);text-align:center;align-content:center;place-items:center;min-height:420px;padding:clamp(36px,8vw,82px);display:grid}.article-lock>svg,.empty-state>svg{width:32px;height:32px;color:var(--lime);margin-bottom:20px}.article-lock h2,.empty-state h2{letter-spacing:-.04em;margin:10px 0 14px;font-size:clamp(1.8rem,4vw,3.5rem)}.article-lock>p:not(.section-kicker),.empty-state>p:not(.section-kicker){max-width:560px;color:var(--muted-foreground);margin:0;line-height:1.75}.article-password-hint{font-size:12px;margin-top:12px!important}.article-lock form{text-align:left;width:min(100%,520px);min-width:0;margin-top:28px}.article-lock label{margin-bottom:8px;font-size:12px;display:block}.article-lock form>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.article-lock input{border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;height:48px;color:var(--foreground);font:inherit;padding:0 14px}.article-lock button{border:1px solid var(--foreground);background:var(--foreground);height:48px;color:var(--background);cursor:pointer;padding:0 18px}.article-lock button:disabled{cursor:wait;opacity:.68}.article-lock form>p{color:#9c1c1c;margin:9px 0 0;font-size:12px;text-decoration:underline}.friend-avatar{border:1px solid var(--border);object-fit:cover;border-radius:50%;width:40px;height:40px}.friend-avatar-fallback{color:#fff;font-family:var(--font-geist-mono), monospace;background:#111;place-items:center;font-size:15px;font-weight:700;display:grid}.support-qr{aspect-ratio:1;object-fit:contain;border:10px solid #fff;width:min(260px,70vw);height:auto;box-shadow:0 12px 40px #17181414}.migrated-about{align-items:start}.about-contact-links{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.about-contact-links a{border:1px solid var(--border);padding:0 14px}.about-profile-card{border:1px solid var(--border);background:var(--surface-glass);min-width:0;color:var(--foreground);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template:"avatar kicker""avatar name""avatar tagline"minmax(0,1fr)"details details"/clamp(124px,11vw,142px) minmax(0,1fr);align-content:start;column-gap:22px;padding:clamp(20px,2vw,26px);display:grid}.about-profile-card>img{aspect-ratio:1;border:1px solid var(--border);background:var(--surface-soft);object-fit:cover;grid-area:avatar;align-self:start;width:100%;height:auto;margin:0;display:block}.about-profile-card>.section-kicker{color:var(--muted-foreground);grid-area:kicker;align-self:end}.about-profile-card h2{color:var(--foreground);letter-spacing:-.03em;grid-area:name;margin:8px 0 6px;font-size:2rem}.about-profile-card>p:last-of-type{color:var(--muted-foreground);grid-area:tagline;align-self:start;margin:0}.about-profile-card dl{grid-area:details;margin:24px 0 0}.about-profile-card dl>div{border-top:1px solid var(--border);grid-template-columns:minmax(72px,86px) minmax(0,1fr);align-items:baseline;gap:16px;min-height:50px;padding:14px 0;display:grid}.about-profile-card dt{color:var(--muted-foreground);white-space:nowrap;font-size:12px}.about-profile-card dd{min-width:0;color:var(--foreground);text-align:right;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.55}@media (max-width:900px){.migrated-about{grid-template-columns:minmax(0,1fr);gap:clamp(40px,7vw,56px)}.about-profile-card{justify-self:center;width:min(100%,620px)}}.guestbook-empty ul{color:#55594f;gap:8px;max-width:620px;margin:24px 0 28px;padding:0;list-style:none;display:grid}.guestbook-empty li:before{color:var(--lime);content:"—";margin-right:8px}.guestbook-empty>a{border:1px solid var(--border);padding:0 16px}@media (max-width:640px){.migrated-about{gap:36px}.about-profile-card{grid-template:"avatar kicker""avatar name""avatar tagline"minmax(0,1fr)"details details"/clamp(78px,22vw,92px) minmax(0,1fr);column-gap:16px;width:100%;padding:20px}.about-profile-card>img{justify-self:auto;width:100%;margin:0}.about-profile-card>.section-kicker{align-self:end}.about-profile-card h2{font-size:1.75rem}.about-profile-card dl{margin-top:20px}.post-card{grid-template-columns:1fr;grid-template-areas:"cover""meta""copy""footer";gap:0}.article-details ul{flex-basis:100%;justify-content:flex-start}.article-prose{font-size:16px;line-height:1.75}.article-code-block{border-radius:12px}.article-code-toolbar button span{display:none}.article-code-scroll-hint{color:#676a64;min-height:32px;font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;background:#eeeeef;border-top:1px solid #1718141a;justify-content:center;align-items:center;gap:7px;font-size:10px;display:flex}.article-code-scroll-hint svg{width:14px;height:14px}.article-code-block .article-code-line-numbers{min-width:44px;padding-right:10px}.article-code-block .article-code-content{padding-inline:14px}.article-footer{flex-direction:column;align-items:flex-start}.article-lock form>div{grid-template-columns:minmax(0,1fr)}.article-lock button{justify-content:center}.article-actions{right:12px;bottom:max(16px, env(safe-area-inset-bottom))}.article-actions button{width:44px;height:44px}.article-action-label{display:none}.article-comments{padding:28px 22px}}@media (max-width:1120px){.article-reading-layout{grid-template-columns:minmax(0,960px);justify-content:center}.article-toc{display:none}}@media print{.article-progress,.article-toc,.article-actions{display:none}}.home-main{overflow:hidden}.home-profile{min-height:min(88svh,980px);padding:calc(var(--header-height) + 80px) clamp(20px, 4vw, 64px) 110px;isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.home-profile:after{display:none}.home-background,.home-background-layer{position:absolute;inset:0}.home-background{z-index:0;pointer-events:none;overflow:hidden}.magic-particles canvas{width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.post-cover,.post-read-link svg{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}.post-card:before{transition:none!important}}.brand-placeholder{justify-self:start;width:44px;height:44px;display:block}.home-shell{min-height:100svh;overflow:visible}.home-shell .home-main{height:auto;overflow:visible}.home-shell .home-profile{min-height:100svh;padding:calc(var(--header-height) + 56px) 24px 80px}.home-particle-background{opacity:1}.home-landing-inner{z-index:2;justify-items:center;gap:clamp(38px,5vw,58px);display:grid;position:relative}.home-avatar-stage{justify-items:center;gap:22px;display:grid}.home-avatar-frame{background:0 0;border:0;padding:0;position:relative;overflow:hidden;box-shadow:0 28px 90px #11111124}.home-avatar-only{aspect-ratio:1;width:clamp(180px,18vw,248px)}.magic-pixel-image{isolation:isolate;-webkit-user-select:none;user-select:none;background:0 0;display:block;position:relative;overflow:hidden}.magic-pixel-source{object-fit:cover;z-index:0;opacity:.16;filter:grayscale()blur(18px)contrast(.82);pointer-events:none;will-change:opacity, filter, transform;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.08)}.magic-pixel-image[data-ready=true] .magic-pixel-source{opacity:1;filter:grayscale(0)blur()contrast();transition:opacity .36s 2.64s,filter .36s 2.64s,transform .36s cubic-bezier(.16,1,.3,1) 2.64s;transform:scale(1)}.magic-pixel-grid{z-index:1;grid-template-columns:repeat(var(--pixel-columns), minmax(0, 1fr));grid-template-rows:repeat(var(--pixel-rows), minmax(0, 1fr));display:grid;position:absolute;inset:0}.magic-pixel-grid i{filter:grayscale()contrast(.82);opacity:0;transform:translate3d(var(--pixel-x), var(--pixel-y), 0) rotate(var(--pixel-rotate)) scale(.72);transition:opacity 90ms steps(3, end) var(--pixel-delay), filter .96s ease-out calc(var(--pixel-delay) + .18s), transform 1.24s cubic-bezier(.16, 1, .3, 1) var(--pixel-delay);will-change:transform, opacity;background-repeat:no-repeat;display:block}.magic-pixel-image[data-ready=true] .magic-pixel-grid i{filter:grayscale(0)contrast();opacity:1;transform:translate(0)rotate(0)scale(1)}.home-avatar-copy{text-align:center;justify-items:center;gap:7px;display:grid}.home-avatar-name,.home-avatar-note{margin:0;overflow:hidden}.home-avatar-name{letter-spacing:-.035em;font-size:clamp(1.45rem,2.3vw,2rem);font-weight:650}.home-avatar-note{color:var(--muted-foreground);letter-spacing:.04em;font-size:13px}.home-hero-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.home-hero-action{color:#333;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f7f7b8;border:1px solid #11111138;align-items:center;gap:10px;min-height:48px;padding:0 18px;font-size:13px;font-weight:600;transition:transform .18s ease-out,border-color .18s ease-out,background .18s ease-out,color .18s ease-out;display:inline-flex}.home-hero-action:hover{color:#111;background:#fff;border-color:#111;transform:translateY(-3px)}.home-hero-action.is-primary{color:#fff;background:#111;border-color:#111}.home-hero-action.is-primary:hover{background:#2a2a2a}.home-hero-action svg,.home-scroll-link svg,.home-feature-icon,.home-feature-action svg{stroke-width:1.7px;width:16px;height:16px}.home-scroll-link{z-index:3;color:#777;place-items:center;width:44px;height:44px;transition:color .18s ease-out,transform .18s ease-out;display:grid;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.home-scroll-link:hover{color:#111;transform:translate(-50%)translateY(4px)}.home-explore{border-top:1px solid var(--border);width:min(100% - 48px,1320px);margin-inline:auto;padding:clamp(88px,10vw,144px) 0}.home-explore-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:clamp(40px,5vw,68px);display:flex}.home-explore-heading p{color:var(--muted-foreground);font-family:var(--font-geist-mono), monospace;letter-spacing:.16em;margin:0;font-size:10px}.home-explore-heading h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.8rem,6vw,5.8rem);font-weight:650;line-height:.92}.home-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.home-feature-card{border:1px solid var(--border);background:#ffffffa8;align-content:space-between;gap:36px;min-height:230px;padding:28px;transition:transform .22s ease-out,border-color .22s ease-out,box-shadow .22s ease-out;display:grid;position:relative;overflow:hidden}.home-feature-card:after{content:"";border:1px solid #11111114;border-radius:50%;width:170px;height:170px;transition:transform .3s ease-out;position:absolute;bottom:-74px;right:-48px}.home-feature-card:hover{border-color:#11111185;transform:translateY(-5px);box-shadow:0 22px 60px #11111114}.home-feature-card:hover:after{transform:scale(1.18)}.home-feature-card.is-featured{color:#fff;background:#111;grid-column:span 2}.home-feature-card.is-featured:after{border-color:#ffffff24}.home-feature-icon{width:22px;height:22px}.home-feature-card h3{letter-spacing:-.035em;margin:0 0 10px;font-size:clamp(1.45rem,2vw,2rem);font-weight:630}.home-feature-card p{max-width:38ch;color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.7}.home-feature-card.is-featured p{color:#ffffffa3}.home-feature-action{align-items:center;gap:9px;font-size:12px;font-weight:650;display:inline-flex}@media (max-width:640px){.home-shell .home-profile{min-height:100svh;padding:calc(var(--header-height) + 42px) 20px 74px}.home-avatar-only{width:clamp(156px,48vw,198px)}.home-hero-actions{width:min(100%,320px)}.home-hero-action{justify-content:center;min-width:calc(50% - 5px)}.home-hero-action.is-primary{width:100%}.home-explore{width:calc(100% - 40px);padding-block:82px}.home-explore-heading{gap:14px;display:grid}.home-feature-grid{grid-template-columns:1fr}.home-feature-card,.home-feature-card.is-featured{grid-column:auto;min-height:205px;padding:24px}}@media (min-width:641px) and (max-width:960px){.home-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.magic-pixel-source{opacity:1;filter:none;transition:none;transform:none;animation:none!important}.magic-pixel-grid i{filter:none;opacity:1;transition:none;transform:none}.home-hero-action,.home-scroll-link,.home-feature-card,.home-feature-card:after{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
