:root{color-scheme:dark;--bg: #111111;--bg-2: #191816;--surface: rgba(28, 27, 25, .64);--surface-solid: #1e1d1a;--surface-soft: rgba(247, 246, 243, .055);--text: #f7f6f3;--muted: #c2bfb7;--subtle: #8e8a82;--border: rgba(247, 246, 243, .12);--border-strong: rgba(247, 246, 243, .22);--accent: #d9c6a3;--accent-strong: #efe1c8;--accent-ink: #17130c;--shadow: rgba(0, 0, 0, .12);--glass: rgba(28, 27, 25, .62);--font-sans: "SF Pro Display", "Geist Sans", "Avenir Next", "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;--font-serif: "Source Han Serif SC", "Noto Serif SC", "Songti SC", Georgia, serif;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", Menlo, Consolas, monospace;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px}html[data-theme=light]{color-scheme:light;--bg: #f7f6f3;--bg-2: #efede7;--surface: rgba(255, 255, 255, .68);--surface-solid: #fbfbfa;--surface-soft: rgba(17, 17, 17, .035);--text: #2f3437;--muted: #787774;--subtle: #9a9790;--border: rgba(17, 17, 17, .075);--border-strong: rgba(17, 17, 17, .14);--accent: #d8cab6;--accent-strong: #6e5a3f;--accent-ink: #2f3437;--shadow: rgba(17, 17, 17, .045);--glass: rgba(255, 255, 255, .7)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden}body{min-width:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}::selection{background:color-mix(in srgb,var(--accent) 36%,transparent)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 40%,var(--border-strong))}::-webkit-scrollbar-track{background:transparent}.lv-surface{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}.lv-card{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 1px 0 var(--border) inset}.lv-soft{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius-sm)}.lv-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-soft);color:var(--text);cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.lv-btn:hover{background:color-mix(in srgb,var(--accent) 14%,var(--surface-soft));border-color:var(--border-strong)}.lv-btn:active{transform:translateY(1px)}.lv-btn-primary{background:var(--accent);color:var(--accent-ink);border-color:transparent}.lv-btn-primary:hover{background:var(--accent-strong)}.lv-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:4px 10px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border);color:var(--muted);font-size:12px}.lv-divider{height:1px;background:var(--border);border:0;margin:var(--space-6) 0}:root{--page: var(--bg);--paper: var(--surface);--paper-strong: var(--surface-solid);--glass-border: var(--border);--ink: var(--text);--faint: var(--subtle);--line: var(--border);--orange: var(--accent-strong);--orange-soft: color-mix(in srgb, var(--accent) 35%, transparent);--glass-bg: var(--glass);--glass-bg-hover: color-mix(in srgb, var(--accent) 8%, var(--glass));--glass-shadow: 0 1px 0 var(--border) inset, 0 18px 48px var(--shadow);--glass-shadow-hover: 0 1px 0 var(--border-strong) inset, 0 22px 56px var(--shadow);--glass-filter: blur(18px) saturate(140%);--shadow-elev: 0 18px 48px var(--shadow);--shadow-tight: 0 8px 24px var(--shadow);--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px;--radius-pill: 8px;--font-mono: "SF Mono", "Fira Code", ui-monospace, monospace;--dur-xs: .2s;--dur-sm: .32s;--dur-md: .52s;--dur-lg: .76s;--dur-xl: 1.1s;--ease-glide: cubic-bezier(.22, 1, .36, 1);--ease-soft: cubic-bezier(.4, 0, .2, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.5, .64, 1);--ease-back: cubic-bezier(.5, -.2, .2, 1.4);--dark-grad: linear-gradient(180deg, var(--bg-2), var(--bg))}#root{position:relative;z-index:0;min-height:100%}a{text-decoration:none}button{cursor:pointer}@keyframes page-enter{0%{opacity:0;transform:translate3d(0,22px,0) scale(.985);filter:blur(10px)}60%{opacity:1;filter:blur(0)}to{opacity:1;transform:translateZ(0) scale(1);filter:blur(0)}}@keyframes page-out{0%{opacity:1;transform:translateZ(0) scale(1);filter:blur(0)}to{opacity:0;transform:translate3d(0,-14px,0) scale(.992);filter:blur(8px)}}@keyframes panel-rise{0%{opacity:0;transform:translate3d(0,26px,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes soft-sheen{0%{transform:translate(-160%) skew(-22deg);opacity:0}18%{opacity:1}82%{opacity:1}to{transform:translate(200%) skew(-22deg);opacity:0}}@keyframes subtle-float{0%{transform:translateZ(0) rotate(0)}50%{transform:translate3d(0,-8px,0) rotate(.6deg)}to{transform:translateZ(0) rotate(0)}}@keyframes orbit-pulse{0%,to{box-shadow:0 12px 30px #ff913147;transform:rotate(0) scale(1)}50%{box-shadow:0 16px 38px #ff913161;transform:rotate(180deg) scale(1.04)}}@keyframes shimmer-in{0%{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translateZ(0)}}@media (prefers-reduced-motion: no-preference){::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-old(main-content){animation:var(--dur-sm) var(--ease-soft) both page-out}::view-transition-new(main-content){animation:var(--dur-md) var(--ease-out-expo) both page-enter}.bloghub-main>*{animation:panel-rise var(--dur-lg) var(--ease-out-expo) both;will-change:transform,opacity}.bloghub-main>*:nth-child(1){animation-delay:80ms}.bloghub-main>*:nth-child(2){animation-delay:.2s}.bloghub-main>*:nth-child(3){animation-delay:.32s}.bloghub-main>*:nth-child(4){animation-delay:.44s}.bloghub-main>*:nth-child(n+5){animation-delay:.56s}.latest-row,.article-row,.archive-row,.related-link,.spotlight-card,.metric-card,.tag-cloud a,.gear-panel span{animation:shimmer-in var(--dur-lg) var(--ease-out-expo) both}.latest-row:nth-child(1),.article-row:nth-child(1),.archive-row:nth-child(1){animation-delay:.12s}.latest-row:nth-child(2),.article-row:nth-child(2),.archive-row:nth-child(2){animation-delay:.24s}.latest-row:nth-child(3),.article-row:nth-child(3),.archive-row:nth-child(3){animation-delay:.36s}.latest-row:nth-child(4),.article-row:nth-child(4),.archive-row:nth-child(4){animation-delay:.48s}.latest-row:nth-child(5),.article-row:nth-child(5),.archive-row:nth-child(5){animation-delay:.6s}.latest-row:nth-child(n+6),.article-row:nth-child(n+6),.archive-row:nth-child(n+6){animation-delay:.72s}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}.bloghub-sidebar,.sidebar-user,.top-search,.icon-button,.glass-card,.content-surface,.page,.metric-card,.search-input-wrap,.article-table,.gear-panel span{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-tight);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter)}.glass-card,.content-surface,.page{position:relative;overflow:hidden;isolation:isolate;transition:transform var(--dur-md) var(--ease-out-expo),box-shadow var(--dur-md) var(--ease-glide),background var(--dur-md) var(--ease-glide)}.glass-card:hover,.content-surface:hover{background:color-mix(in srgb,var(--accent) 6%,var(--surface));border-color:var(--border-strong)}.page-panel:hover,.glass-card.page-panel:hover,.article-detail:hover,.archive-page:hover,.about-page:hover,.sticky-panel:hover,.related-panel:hover{background:var(--surface);box-shadow:var(--shadow-tight)}.glass-card>*,.content-surface>*,.page>*{position:relative;z-index:1}.avatar-dot{width:40px;height:40px;display:inline-block;border-radius:50%;background:radial-gradient(circle at 52% 32%,var(--accent-strong) 0 16%,transparent 17%),linear-gradient(135deg,var(--bg-2) 0 46%,var(--accent) 47% 100%);box-shadow:inset 0 0 0 1px var(--border),0 6px 16px var(--shadow)}.avatar-dot.large{width:80px;height:80px}.avatar-dot.mini{width:24px;height:24px}.soft-art{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 66% 22%,color-mix(in srgb,var(--accent-strong) 40%,transparent),transparent 11rem),radial-gradient(circle at 24% 72%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 12rem),linear-gradient(135deg,var(--bg-2),var(--surface-soft));transition:transform var(--dur-md) var(--ease-out-expo),filter var(--dur-md) var(--ease-glide)}.author-card .avatar-dot.large,.about-profile .avatar-dot.large{animation:subtle-float 10s var(--ease-soft) infinite}.glass-orb{position:absolute;display:block;border-radius:50%;border:1px solid var(--border);background:radial-gradient(circle at 34% 28%,color-mix(in srgb,var(--accent-strong) 60%,transparent),color-mix(in srgb,var(--accent) 30%,transparent) 42%,transparent 70%);box-shadow:inset -8px -12px 24px var(--shadow),0 12px 32px var(--shadow);z-index:1}.orb-one{width:155px;height:155px;right:15%;top:10%}.orb-two{width:92px;height:92px;right:8%;top:42%}.orb-three{width:112px;height:112px;left:16%;bottom:16%}.texture-line{position:absolute;display:block;border:1px solid var(--border);border-radius:50%;transform:rotate(-24deg);z-index:1}.line-one{width:240px;height:90px;right:2%;top:20%}.line-two{width:180px;height:62px;left:12%;bottom:18%}.art-sunrise{background:radial-gradient(circle at 72% 24%,color-mix(in srgb,var(--accent-strong) 50%,transparent),transparent 10rem),radial-gradient(circle at 20% 78%,color-mix(in srgb,var(--accent) 40%,transparent),transparent 10rem),linear-gradient(135deg,var(--bg-2),var(--surface-soft))}.art-ridge{background:radial-gradient(circle at 68% 28%,color-mix(in srgb,var(--accent-strong) 40%,transparent),transparent 10rem),radial-gradient(circle at 22% 74%,color-mix(in srgb,var(--muted) 30%,transparent),transparent 11rem),linear-gradient(135deg,var(--bg-2),var(--surface-soft))}.art-lake{background:radial-gradient(circle at 70% 26%,color-mix(in srgb,var(--accent) 40%,transparent),transparent 10rem),radial-gradient(circle at 22% 76%,color-mix(in srgb,var(--muted) 24%,transparent),transparent 11rem),linear-gradient(135deg,var(--bg-2),var(--surface-soft))}.art-night{background:radial-gradient(circle at 70% 24%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 9rem),radial-gradient(circle at 24% 74%,color-mix(in srgb,var(--text) 18%,transparent),transparent 11rem),linear-gradient(135deg,var(--bg),var(--bg-2))}.art-valley{background:radial-gradient(circle at 70% 26%,color-mix(in srgb,var(--accent) 32%,transparent),transparent 10rem),radial-gradient(circle at 22% 74%,color-mix(in srgb,var(--accent-strong) 24%,transparent),transparent 11rem),linear-gradient(135deg,var(--bg-2),var(--surface-soft))}.newsletter-card input,.search-input-wrap input,.settings-form input,.settings-form textarea,.input-title,.input-slug,.input-description,.login-form input{width:100%;min-width:0;border:1px solid var(--border);outline:none;color:var(--text);background:var(--surface-soft);border-radius:var(--radius-sm);padding:10px 14px;transition:border-color var(--dur-xs) var(--ease-glide),background var(--dur-xs) var(--ease-glide)}.newsletter-card input:focus,.search-input-wrap input:focus,.settings-form input:focus,.settings-form textarea:focus,.input-title:focus,.input-slug:focus,.input-description:focus,.login-form input:focus{border-color:var(--border-strong);background:var(--surface-solid)}.settings-form textarea,.input-description{border-radius:var(--radius-sm);resize:vertical}.newsletter-card button,.load-more,.btn{border:1px solid var(--border);min-height:36px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--text);font-weight:600;cursor:pointer;transition:background var(--dur-xs) var(--ease-glide),border-color var(--dur-xs) var(--ease-glide)}.newsletter-card button:hover,.load-more:hover,.btn:hover{background:color-mix(in srgb,var(--accent) 14%,var(--surface-soft));border-color:var(--border-strong)}.newsletter-card button,.btn-primary{color:var(--accent-ink);background:var(--accent);border-color:transparent}.newsletter-card button:hover,.btn-primary:hover{background:var(--accent-strong)}.btn-danger{color:#fff;background:#b2473d;border-color:transparent}.btn-warning{color:var(--accent-ink);background:var(--accent-strong);border-color:transparent}.btn-sm{min-height:28px;padding:0 10px;font-size:12px}.tag-cloud a,.chip,.pill,.tag-line span,.post-meta span{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:3px 10px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border);color:var(--muted);font-size:12px;font-weight:500;transition:transform var(--dur-xs) var(--ease-spring),background var(--dur-xs) var(--ease-glide),color var(--dur-xs) var(--ease-glide)}.tag-cloud a:hover,.chip:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--accent) 18%,var(--surface-soft));color:var(--text)}.pill.warm{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent-strong);border-color:transparent}.tag-cloud a span{color:inherit}.section-title,.page-header,.editor-header,.preview-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.section-title h2,.page-header h1,.editor-header h1{margin:0;font-size:19px}.segmented{display:inline-flex;align-items:center;gap:4px;padding:3px;border-radius:var(--radius-sm);background:var(--surface-soft);border:1px solid var(--border)}.segmented button{min-width:56px;min-height:28px;padding:0 12px;border:0;border-radius:6px;color:var(--muted);background:transparent;font-weight:500;cursor:pointer}.segmented button.active{color:var(--accent-ink);background:var(--accent)}.status-badge{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500}.status-draft{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent-strong)}.status-published{background:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--accent-ink)}.auth-host{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.bloghub-shell{height:100vh;overflow:hidden;display:grid;grid-template-columns:260px minmax(0,1fr);padding:16px;gap:16px}.bloghub-shell.focus-mode{grid-template-columns:minmax(0,1fr);padding:0;gap:0}.bloghub-shell.focus-mode .bloghub-main{margin-top:0;padding-top:0}.bloghub-sidebar{height:100%;overflow-y:auto;padding:24px 16px;display:flex;flex-direction:column;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}.brand-mark{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;margin-bottom:24px}.brand-orbit{width:36px;height:36px;border-radius:50%;display:block;background:radial-gradient(circle at center,color-mix(in srgb,var(--accent-strong) 60%,transparent) 0 22%,transparent 25%),conic-gradient(from 25deg,var(--accent),var(--accent-strong),var(--accent),var(--accent-strong));box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 30%,transparent);animation:orbit-pulse 11s ease-in-out infinite;transition:transform var(--dur-sm) var(--ease-spring)}.brand-mark:hover .brand-orbit{transform:scale(1.08) rotate(12deg)}.brand-mark strong{display:block;font-size:18px;line-height:1.2;font-weight:700;color:var(--text)}.brand-mark small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.bloghub-nav{display:grid;gap:4px}.bloghub-nav a{height:40px;padding:0 12px;display:grid;grid-template-columns:20px 1fr;align-items:center;gap:12px;border-radius:var(--radius-sm);color:var(--text);font-weight:500;transition:background var(--dur-xs) var(--ease-glide),color var(--dur-xs) var(--ease-glide),transform var(--dur-xs) var(--ease-spring)}.bloghub-nav a span{font-size:16px;text-align:center;transition:transform var(--dur-xs) var(--ease-spring)}.bloghub-nav a em{font-style:normal}.bloghub-nav a:hover{background:var(--surface-soft);color:var(--text)}.bloghub-nav a.active{color:var(--accent-ink);background:var(--accent)}.bloghub-nav a.active span{transform:scale(1.05)}.bloghub-nav a:active{transform:translateY(0) scale(.98);transition-duration:var(--dur-xs)}.sidebar-divider{height:1px;margin:16px 0;background:var(--border)}.bloghub-nav.secondary a{height:36px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--muted)}.bloghub-nav.secondary a:hover{color:var(--text)}.sidebar-user{margin-top:auto;min-height:64px;padding:12px;display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;border-radius:var(--radius-sm);background:var(--surface-soft);border:1px solid var(--border)}.sidebar-user strong{display:block;font-size:14px;color:var(--text)}.sidebar-user small{display:block;margin-top:2px;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bloghub-workspace{min-width:0;display:flex;flex-direction:column;overflow:hidden}.bloghub-main{flex:1;min-width:0;overflow-y:auto;margin-top:-60px;padding-top:60px;view-transition-name:main-content}.filing-bar{position:fixed;bottom:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:12px;height:36px;padding:0 16px;background:var(--surface);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border-top:1px solid var(--border);box-shadow:0 -4px 24px var(--shadow);font-size:12px;color:var(--muted)}.filing-bar a{color:var(--muted);font-weight:500;text-decoration:none}.filing-bar a:hover{color:var(--text)}.filing-bar-close{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:22px;height:22px;display:grid;place-items:center;border:none;border-radius:50%;background:var(--surface-soft);color:var(--muted);font-size:13px;cursor:pointer;transition:background var(--dur-xs) var(--ease-soft)}.filing-bar-close:hover{background:var(--border);color:var(--text)}.topbar{flex-shrink:0;position:relative;z-index:10;min-height:60px;display:grid;grid-template-columns:minmax(420px,1fr) auto;gap:16px;align-items:center;padding:12px 16px;background:transparent}.top-greeting strong{display:block;font-size:18px;line-height:1.2;font-weight:700;color:var(--text)}.top-greeting span{display:block;margin-top:2px;color:var(--muted);font-size:13px}.top-search{width:100%;max-width:210mm;height:40px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 14px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text);transition:border-color var(--dur-xs) var(--ease-glide),background var(--dur-xs) var(--ease-glide)}.top-search input{width:100%;min-width:0;border:0;outline:none;background:transparent;color:var(--text);font-weight:500}.top-search:focus-within{background:var(--surface-solid);border-color:var(--border-strong)}.top-search input::placeholder{color:var(--subtle)}.top-search button{min-height:28px;padding:0 12px;border:0;border-radius:var(--radius-sm);color:var(--accent-ink);background:var(--accent);font-weight:600;font-size:13px;cursor:pointer;transition:background var(--dur-xs) var(--ease-glide)}.top-search button:hover{background:var(--accent-strong)}.top-search button:active{transform:scale(.96);transition-duration:var(--dur-xs)}.top-actions{display:flex;gap:8px;align-items:center}.icon-button{position:relative;width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-sm);background:transparent;border:1px solid transparent;color:var(--muted);cursor:pointer;transition:background var(--dur-xs) var(--ease-glide),color var(--dur-xs) var(--ease-glide),border-color var(--dur-xs) var(--ease-glide)}.icon-button:hover{background:var(--surface-soft);border-color:var(--border);color:var(--text)}.icon-button:active{transform:scale(.95);transition-duration:var(--dur-xs)}.notification-button b{position:absolute;top:4px;right:4px;min-width:16px;height:16px;display:grid;place-items:center;border-radius:999px;background:var(--accent-strong);color:var(--accent-ink);font-size:11px;font-weight:600}.compose-button{height:36px;min-width:120px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--radius-sm);color:var(--accent-ink);background:var(--accent);font-weight:600;font-size:13px;cursor:pointer;transition:background var(--dur-xs) var(--ease-glide),transform var(--dur-xs) var(--ease-spring)}.compose-button i{font-style:normal;font-size:16px;transition:transform var(--dur-xs) var(--ease-spring)}.compose-button:hover{background:var(--accent-strong)}.compose-button:hover i{transform:rotate(90deg)}.compose-button:active{transform:scale(.97);transition-duration:var(--dur-xs)}.home-dashboard{display:grid;grid-template-columns:minmax(420px,1.55fr) minmax(270px,.78fr) 340px;grid-template-rows:460px auto;gap:20px}.feature-card{position:relative;grid-column:1 / 2;min-height:460px;overflow:hidden;border-radius:var(--radius-lg)}.feature-card:after,.spotlight-card:after{background:linear-gradient(100deg,transparent 0 28%,rgba(255,255,255,.14) 46%,transparent 64%),repeating-radial-gradient(circle at 30% 20%,rgba(255,255,255,.08) 0 1px,transparent 1px 5px);opacity:0;transition:opacity var(--dur-md) var(--ease-glide)}.feature-card:hover:after,.spotlight-card:hover:after{opacity:.18;animation:soft-sheen 2.4s var(--ease-out-expo)}.feature-card:hover,.spotlight-card:hover,.author-card:hover,.stats-card:hover,.tags-card:hover,.newsletter-card:hover{transform:translate3d(0,-6px,0) scale(1.006)}.feature-card>.pill{position:absolute;z-index:2;top:30px;left:36px}.feature-media{position:absolute;inset:0}.feature-media .soft-art{width:100%;height:100%;opacity:.74;transition:transform var(--dur-xl) var(--ease-out-expo),opacity var(--dur-md) var(--ease-glide)}.feature-card:hover .feature-media .soft-art{transform:scale(1.04);opacity:.86}.feature-content{position:absolute;inset:auto 36px 30px;z-index:2;max-width:640px}.feature-content h1{max-width:560px;margin:22px 0 18px;font-size:38px;line-height:1.24;font-weight:900}.feature-content p{max-width:590px;margin:0;color:var(--muted);font-size:16px;line-height:1.8;font-weight:500}.feature-footer{margin-top:28px;display:flex;align-items:center;gap:30px;color:var(--text);font-size:14px;font-weight:600}.author-line{display:inline-flex;align-items:center;gap:11px}.heat{color:var(--muted)}.heat:before{content:""}.round-link{margin-left:auto;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:var(--accent-ink);background:var(--accent);box-shadow:0 8px 22px var(--shadow);font-size:22px;transition:transform var(--dur-sm) var(--ease-spring),background var(--dur-sm) var(--ease-glide)}.round-link:hover{transform:translate3d(6px,-3px,0) rotate(-8deg);background:var(--accent-strong)}.round-link:active{transform:scale(.94);transition-duration:var(--dur-xs)}.spotlight-grid{display:grid;gap:18px}.spotlight-card{position:relative;min-height:220px;overflow:hidden;padding:30px;border-radius:var(--radius-md)}.spotlight-card .soft-art{position:absolute;inset:0;width:100%;height:100%;transition:transform var(--dur-lg) var(--ease-out-expo),opacity var(--dur-md) var(--ease-glide)}.spotlight-card:hover .soft-art{transform:scale(1.05);opacity:.9}.spotlight-card .pill,.spotlight-card h2,.spotlight-card footer{position:relative;z-index:2}.spotlight-card h2{max-width:260px;margin:34px 0 0;font-size:22px;line-height:1.45}.spotlight-card footer{position:absolute;left:30px;right:22px;bottom:22px;display:grid;grid-template-columns:auto 1fr 48px;align-items:center;gap:18px;color:var(--muted);font-size:14px}.spotlight-card footer i{width:48px;height:48px;display:grid;place-items:center;justify-self:end;border-radius:50%;background:var(--surface);border:1px solid var(--border);font-style:normal;font-size:24px;transition:transform var(--dur-sm) var(--ease-spring),background var(--dur-sm) var(--ease-glide)}.spotlight-card:hover footer i{transform:translate(6px) rotate(-8deg);background:var(--surface-solid)}.right-rail{display:grid;gap:16px;align-content:start}.home-dashboard>.right-rail{grid-column:3 / 4;grid-row:1 / 3}.author-card{min-height:300px;padding:34px 28px 26px;border-radius:var(--radius-lg);text-align:center}.author-card h2{margin:18px 0 10px;font-size:22px}.author-card small{padding:3px 8px;border-radius:999px;color:var(--accent-ink);background:var(--accent);font-size:12px;font-weight:600}.author-card p{margin:0 auto;max-width:240px;color:var(--muted);line-height:1.8}.social-row{margin-top:24px;display:flex;justify-content:center;gap:24px;font-weight:780}.stats-card,.tags-card,.newsletter-card{padding:22px;border-radius:var(--radius-md)}.stats-card h2,.tags-card h2,.newsletter-card h2{margin:0 0 6px;font-size:18px}.stats-card>span,.newsletter-card p{color:var(--muted);font-size:13px}.stats-grid{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric-card{min-height:94px;padding:16px;border-radius:18px;transition:transform var(--dur-sm) var(--ease-spring),background var(--dur-sm) var(--ease-glide),box-shadow var(--dur-sm) var(--ease-glide)}.metric-card:hover{transform:translateY(-4px) scale(1.015);background:var(--glass-bg-hover);box-shadow:var(--glass-shadow-hover)}.metric-card span{display:block;color:var(--muted);font-size:13px;font-weight:690}.metric-card strong{display:block;margin-top:10px;font-size:24px;line-height:1}.metric-card em{display:block;margin-top:9px;color:var(--accent-strong);font-size:12px;font-style:normal;font-weight:600}.tag-cloud{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.newsletter-card div{margin-top:18px;display:grid;grid-template-columns:1fr 86px;gap:10px}.latest-card{grid-column:1 / 3;padding:28px 36px 22px;border-radius:var(--radius-lg)}.latest-list,.article-list{display:grid}.latest-row,.article-row{display:grid;align-items:center;gap:22px;border-bottom:1px solid var(--line);border-radius:16px;transition:transform var(--dur-md) var(--ease-out-expo),background var(--dur-md) var(--ease-glide),box-shadow var(--dur-md) var(--ease-glide)}.latest-row:hover,.article-row:hover{transform:translate3d(8px,0,0);background:var(--surface-soft);border-bottom-color:transparent;box-shadow:0 12px 32px var(--shadow)}.latest-row{grid-template-columns:132px minmax(0,1fr) 110px 110px;min-height:118px}.article-row{grid-template-columns:150px minmax(0,1fr) 110px;min-height:130px;padding:18px 0}.latest-row:last-child,.article-row:last-child{border-bottom:0}.latest-row .soft-art,.article-row .soft-art{width:132px;height:82px;border-radius:14px}.latest-row:hover .soft-art,.article-row:hover .soft-art,.related-link:hover .soft-art{transform:scale(1.04);filter:saturate(1.06)}.article-row .soft-art{width:150px;height:90px}.latest-row h3,.article-row h2{margin:0 0 8px;font-size:18px;line-height:1.35}.latest-row p,.article-row p{margin:0;color:var(--muted);line-height:1.55}.latest-row time,.article-row time{justify-self:end;color:var(--muted);font-size:14px}.tag-line,.post-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.load-more{margin:22px auto 0;display:flex;width:160px;border:1px solid var(--border);transition:transform var(--dur-sm) var(--ease-spring),background var(--dur-sm) var(--ease-glide),box-shadow var(--dur-sm) var(--ease-glide)}.load-more:hover{transform:translateY(-3px) scale(1.02);background:var(--surface-soft);box-shadow:0 12px 28px var(--shadow)}.load-more:active{transform:scale(.96);transition-duration:var(--dur-xs)}.cw-card{padding:20px;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:14px}.cw-weather{display:flex;flex-direction:column;gap:8px}.cw-weather-loading{color:var(--muted);font-size:13px;padding:6px 0}.cw-weather-main{display:flex;align-items:center;gap:14px}.cw-weather-icon{font-size:38px;line-height:1}.cw-temp{display:block;font-size:30px;font-weight:850;line-height:1;color:var(--ink)}.cw-weather-label{display:block;margin-top:4px;color:var(--muted);font-size:13px;font-weight:660}.cw-weather-meta{display:flex;flex-direction:column;gap:2px;color:var(--muted);font-size:12px;line-height:1.55}.cw-weather-meta span:first-child{color:var(--ink);font-weight:720;font-size:13px}.cw-divider{height:1px;background:var(--line)}.cw-cal-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.cw-cal-header strong{font-size:15px;font-weight:800}.cw-cal-header span{color:var(--muted);font-size:11px}.cw-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;font-size:12px}.cw-cal-weekday{text-align:center;padding:4px 0;color:var(--faint);font-weight:720;font-size:11px}.cw-cal-day{display:grid;place-items:center;aspect-ratio:1 / 1;border-radius:8px;color:var(--ink);font-weight:620;transition:background var(--dur-xs) var(--ease-glide),color var(--dur-xs) var(--ease-glide)}.cw-cal-day.is-outside{color:var(--faint);opacity:.45}.cw-cal-day.is-today{color:#fff8ee;background:var(--dark-grad);box-shadow:0 6px 14px #14110e38}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:20px;align-items:start}.wide-panel{min-width:0;max-width:none}.compact-rail{min-width:0;grid-column:auto;grid-row:auto}.page-panel{width:100%;max-width:1040px;padding:34px 38px;border-radius:var(--radius-lg)}.page-grid>.page-panel{max-width:none}.page-heading{margin-bottom:24px}.page-heading h1{margin:0 0 10px;font-size:36px;font-weight:850}.page-heading p,.listing-meta{margin:0;color:var(--muted);line-height:1.7}.page-tabs{margin-bottom:18px}.article-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px}.article-detail{overflow:hidden;border-radius:var(--radius-lg)}.detail-hero{width:100%;height:300px}.article-heading{padding:36px 42px 0}.article-heading h1{margin:18px 0 14px;max-width:780px;font-size:36px;line-height:1.24}.chip-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.article-body-rich{padding:12px 42px 42px;color:var(--text);font-size:16px;line-height:1.95}.article-body-rich h2{margin:32px 0 12px;color:var(--ink);font-size:21px}.article-body-rich p{margin:0 0 18px}.article-body-rich img,.article-body-rich video{max-width:100%;height:auto;display:block;margin:0 auto 18px}.article-body-rich audio{width:100%;margin:0 0 18px}.article-body-rich iframe{max-width:100%;width:100%;border:0}.article-body-rich .katex,.article-body-rich .katex-display{max-width:100%;overflow-x:auto}.article-body-rich pre{max-width:100%;overflow-x:auto;white-space:pre;word-wrap:normal}.article-body-rich code{word-break:break-word;overflow-wrap:anywhere}.article-body-rich pre code{word-break:normal;overflow-wrap:normal;white-space:pre}.article-body-rich table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.article-body-rich a{word-break:break-word;overflow-wrap:anywhere}.article-actions{display:flex;flex-wrap:wrap;gap:10px;margin:28px 42px 18px}.article-action-btn,.comment-like-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--muted);padding:8px 14px;font:inherit;font-weight:600;cursor:pointer}.article-action-btn strong,.comment-like-btn strong{color:var(--text);font-size:13px}.article-action-btn.active,.comment-like-btn.active{border-color:var(--border-strong);background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-strong)}.article-action-btn:disabled,.comment-like-btn:disabled{opacity:.65;cursor:wait}.comments-section{margin:4px 42px 42px;padding:26px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.comments-section h3{margin:0 0 18px;font-size:22px}.comment-list{display:grid;gap:14px;margin:0 0 24px;padding:0;list-style:none}.comment-item{padding:0 0 14px;border-bottom:1px solid var(--border)}.comment-header{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px}.comment-content{margin:8px 0 0;color:var(--text);line-height:1.7}.comment-like-btn{margin-top:10px;padding:6px 11px;font-size:13px}.no-comments,.success-msg,.error-msg{margin:0 0 14px}.no-comments{color:var(--muted)}.success-msg{color:var(--accent-strong)}.error-msg{color:#e07a6c}.comment-form{display:grid;gap:12px;margin-top:20px}.comment-form-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.comment-form h4,.comment-form-head h4{margin:0;font-size:17px}.comment-form-head span{color:var(--muted);font-size:13px;font-weight:650}.comment-form textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);padding:12px 13px;color:var(--text);font:inherit}.comment-anonymous-toggle{display:inline-flex;align-items:center;gap:8px;justify-self:start;color:var(--muted);font-size:13px;font-weight:650;cursor:pointer}.comment-anonymous-toggle input{width:16px;height:16px;margin:0;accent-color:var(--accent-strong)}.comment-form button{justify-self:start;border:0;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);padding:11px 18px;font-weight:600;cursor:pointer}.comment-login{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--muted)}.comment-login a{color:var(--text);font-weight:600;text-decoration:none}.comment-form button:disabled{opacity:.6;cursor:wait}.article-aside{display:grid;gap:18px;align-content:start}.article-aside .glass-card{padding:22px;border-radius:var(--radius-md)}.article-aside h3{margin:0 0 14px}.sticky-panel{position:sticky;top:24px;display:grid;gap:10px}.sticky-panel a{color:var(--muted);font-weight:650}.related-link{display:grid;grid-template-columns:78px 1fr;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-weight:720;transition:transform var(--dur-sm) var(--ease-spring),background var(--dur-sm) var(--ease-glide)}.related-link:hover{transform:translate(6px);background:var(--surface-soft)}.related-link .soft-art{width:78px;height:54px;border-radius:12px}.archive-page{margin:0 auto}.archive-group{margin-top:24px}.archive-group h2{margin:0 0 10px;font-size:20px}.archive-row{min-height:48px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);color:var(--muted)}.search-panel{max-width:1040px;margin:0 auto}.search-input-wrap{height:62px;margin-bottom:22px;display:grid;grid-template-columns:28px 1fr;align-items:center;padding:0 18px;border-radius:999px;transition:transform var(--dur-sm) var(--ease-spring),box-shadow var(--dur-sm) var(--ease-glide),background var(--dur-sm) var(--ease-glide)}.search-input-wrap input{border:0;background:transparent}.search-input-wrap:focus-within{transform:translateY(-2px);background:var(--glass-bg-hover);box-shadow:var(--glass-shadow-hover)}.search-loading,.search-empty{text-align:center;padding:32px 0;color:var(--muted);font-size:15px}.about-page{max-width:980px;margin:0 auto;overflow:hidden;border-radius:var(--radius-lg)}.about-cover{width:100%;height:280px}.about-profile{margin-top:-54px;padding:0 40px 20px;position:relative;text-align:center}.about-profile h1{margin:14px 0 8px}.about-profile p,.about-copy{color:var(--muted);line-height:1.8}.about-copy{max-width:820px;margin:0 auto;padding:0 40px 24px}.about-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0 40px 28px}.gear-panel{padding:0 40px 40px}.gear-panel h2{margin:0 0 14px;font-size:19px}.gear-panel div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gear-panel span{padding:20px;border-radius:18px;text-align:center;font-weight:760}.settings-grid{max-width:900px;margin:0 auto;display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px}.settings-nav{padding:18px;border-radius:var(--radius-md);display:grid;gap:8px;align-content:start}.settings-nav a{padding:12px 14px;border-radius:var(--radius-sm);color:var(--muted);font-weight:500}.settings-nav a.active{color:var(--accent-ink);background:var(--accent)}.settings-form{padding:30px;border-radius:var(--radius-md);display:grid;gap:12px}.settings-form label{color:var(--muted);font-size:13px;font-weight:760}.form-avatar{margin-bottom:8px}.not-found{min-height:calc(100vh - 170px);max-width:760px;margin:0 auto;padding:44px;display:grid;justify-items:center;text-align:center;border-radius:var(--radius-lg);overflow:hidden}.not-found h1{margin:0;font-size:clamp(80px,14vw,150px);line-height:.9}.not-found h2{margin:4px 0 0}.not-found p{color:var(--muted)}.not-found .soft-art{width:min(520px,100%);height:230px;margin-top:20px;border-radius:22px}.page{max-width:1120px;margin:0 auto;padding:28px;border-radius:var(--radius-lg)}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.15}}.skeleton-pill{width:60px;height:24px;border-radius:999px;background:var(--line);animation:skeleton-pulse 1.4s ease-in-out infinite}.skeleton-title{margin-top:18px;width:65%;height:36px;border-radius:8px;background:var(--line);animation:skeleton-pulse 1.4s ease-in-out infinite .1s}.skeleton-meta{margin-top:14px;width:30%;height:16px;border-radius:6px;background:var(--line);animation:skeleton-pulse 1.4s ease-in-out infinite .2s}.skeleton-line{width:100%;height:16px;margin-bottom:14px;border-radius:6px;background:var(--line);animation:skeleton-pulse 1.4s ease-in-out infinite .3s}.skeleton-line.short{width:45%}.chat-page{width:min(1120px,100%);min-height:calc(100vh - 170px);margin:0 auto;display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);grid-template-rows:auto 1fr;gap:16px}.chat-page-header,.chat-create-form{grid-column:1}.chat-page-header h2{margin:0 0 4px;font-size:28px;letter-spacing:0}.chat-page-header p{margin:0;color:var(--muted, #666)}.chat-create-form{align-self:start;display:grid;gap:10px;padding:16px;border-radius:18px}.chat-create-form input{width:100%;min-width:0;padding:11px 13px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-soft);color:var(--text);font:inherit}.chat-create-form button{min-height:42px;padding:0 16px;border-radius:var(--radius-sm);border:0;background:var(--accent);color:var(--accent-ink);cursor:pointer;font-weight:600}.chat-create-form button:disabled{opacity:.6;cursor:not-allowed}.chat-rooms{grid-column:2;grid-row:1 / span 2;list-style:none;margin:0;padding:10px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-tight)}.chat-room-card{min-height:76px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);text-decoration:none;color:inherit;transition:background var(--dur-xs) var(--ease-soft),transform var(--dur-xs) var(--ease-soft)}.chat-room-card:hover{background:var(--surface-soft);transform:translateY(-1px)}.chat-room-avatar,.chat-msg-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-weight:700;flex:0 0 auto}.chat-room-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-room-card small{display:block;margin-top:4px;color:var(--muted, #666);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-empty,.chat-empty-msg,.chat-loading{color:var(--muted, #666);text-align:center;padding:24px}.chat-empty{grid-column:2;grid-row:1 / span 2;align-self:start;border-radius:var(--radius-md);background:var(--surface)}.chat-empty button{margin-top:12px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);cursor:pointer}.chat-error{color:#e07a6c;font-size:13px}.chat-view{display:grid;gap:0;width:100%;max-width:none;margin:0 auto;grid-template-rows:auto 1fr auto;height:calc(100vh - 180px);min-height:520px;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-tight)}.chat-view-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;border-bottom:1px solid var(--border);background:var(--surface-soft)}.chat-view-header h2{margin:2px 0 0;font-size:20px;letter-spacing:0}.chat-back{color:var(--muted, #666);text-decoration:none;font-size:14px}.chat-back:hover{color:inherit}.chat-room-status{padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent-strong);font-size:12px;font-weight:600;white-space:nowrap}.chat-messages{overflow-y:auto;min-height:0;padding:18px 20px;display:flex;flex-direction:column;gap:14px;scroll-behavior:smooth;background:var(--bg-2);border:0;border-radius:0;box-shadow:none}.chat-msg{max-width:min(74%,720px);display:flex;align-items:flex-end;gap:9px;align-self:flex-start}.chat-msg.self{align-self:flex-end;flex-direction:row-reverse}.chat-msg.self .chat-msg-avatar{background:var(--accent-strong)}.chat-msg-main{min-width:0;display:grid;gap:4px}.chat-msg-meta{display:flex;gap:10px;align-items:baseline;font-size:12px;color:var(--muted, #666);padding:0 4px}.chat-msg.self .chat-msg-meta{justify-content:flex-end}.chat-msg-meta strong{color:inherit;font-weight:600}.chat-msg-body{padding:10px 13px;border-radius:16px 16px 16px 4px;background:var(--surface-solid);border:1px solid var(--border);box-shadow:0 4px 12px var(--shadow);overflow-wrap:anywhere}.chat-msg.self .chat-msg-body{border-radius:16px 16px 4px;background:var(--accent);color:var(--accent-ink);border-color:transparent}.chat-msg-body p{margin:0}.chat-msg-body p+p{margin-top:6px}.chat-msg-body code{background:var(--surface-soft);padding:1px 5px;border-radius:4px;font-size:.9em}.chat-msg-body a{color:var(--accent-strong);text-decoration:underline}.chat-msg.self .chat-msg-body a{color:var(--accent-ink)}.chat-msg-body ul,.chat-msg-body ol{margin:4px 0 4px 1.4em;padding:0}.chat-composer{padding:8px 10px 10px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"insert editor foot";align-items:end;gap:8px;border-top:1px solid var(--border);border-radius:0;background:var(--surface-soft);box-shadow:none}.chat-insert{grid-area:insert;position:relative}.chat-insert-toggle{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--text);font-size:24px;line-height:1;cursor:pointer;font-weight:400}.chat-insert-toggle:hover:not(:disabled){background:var(--surface)}.chat-insert-toggle:disabled{opacity:.5;cursor:not-allowed}.chat-insert-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:5;width:156px;padding:6px;display:grid;gap:2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);box-shadow:var(--shadow-tight)}.chat-insert-menu button{min-height:34px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:13px;text-align:left}.chat-insert-menu button:hover{background:var(--surface-soft)}.chat-media-input{display:none}.chat-composer .chat-editor{grid-area:editor;position:relative;z-index:auto;min-height:42px;max-height:112px;overflow-y:auto;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-solid);box-shadow:none}.chat-composer .chat-editor .ProseMirror{min-height:24px;outline:none;font-size:14px;line-height:1.45;color:var(--text)}.chat-composer .chat-editor .ProseMirror p{margin:0}.chat-composer .chat-editor .ProseMirror p+p{margin-top:6px}.chat-composer-foot{grid-area:foot;display:flex;justify-content:flex-end;align-items:center;gap:8px}.chat-hint{display:none;font-size:12px;color:var(--muted, #666)}.chat-send{min-width:72px;min-height:42px;padding:0 14px;border-radius:var(--radius-sm);border:0;background:var(--accent);color:var(--accent-ink);cursor:pointer;font-weight:600}.chat-send:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 760px){.chat-page{min-height:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.chat-page-header,.chat-create-form,.chat-rooms,.chat-empty{grid-column:1;grid-row:auto}.chat-view{width:100%;height:calc(100vh - 120px);min-height:0;border-radius:18px}.chat-view-header{padding:13px 14px}.chat-room-status,.chat-hint,.chat-msg-avatar{display:none}.chat-messages{padding:14px 10px}.chat-msg{max-width:88%}.chat-composer{padding:7px;grid-template-columns:auto minmax(0,1fr) auto}.chat-composer .chat-editor{min-height:38px;max-height:88px}.chat-send{min-width:64px;min-height:38px;padding:0 12px}}.jamstack-page{display:flex;flex-direction:column;gap:18px;padding:28px}.jamstack-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.jamstack-header h1{margin:0;font-size:28px}.jamstack-header p,.jamstack-status{margin:6px 0 0;color:var(--muted)}.jamstack-grid{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);gap:16px}.jamstack-panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:16px}.jamstack-panel h2{margin:0 0 12px;font-size:16px}.jamstack-create{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}.jamstack-create input{min-width:0;border:1px solid var(--line);border-radius:6px;background:var(--bg);padding:10px 12px}.jamstack-site-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.jamstack-site-item{display:grid;gap:4px;width:100%;border:1px solid var(--line);border-radius:6px;background:var(--bg);padding:10px 12px;text-align:left;cursor:pointer}.jamstack-site-item.active{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.jamstack-site-item span,.jamstack-deployment-row span{color:var(--muted);font-size:13px}.jamstack-drop{display:grid;gap:6px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--bg);padding:18px;cursor:pointer}.jamstack-drop input{display:none}.jamstack-drop span{color:var(--muted)}.jamstack-progress{height:8px;overflow:hidden;border-radius:999px;background:var(--line);margin:14px 0}.jamstack-progress span{display:block;height:100%;background:var(--accent);transition:width .16s ease}.jamstack-deployments{display:grid;gap:8px}.jamstack-deployment-row{display:grid;grid-template-columns:1.4fr .7fr .8fr .8fr 1.2fr;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.analytics-page{--analytics-white: #ffffff;--analytics-white-strong: #ffffff;--analytics-ink: #171717;--analytics-muted: #626262;--analytics-line: rgba(0, 0, 0, .1);display:flex;flex-direction:column;gap:18px;padding:28px}.analytics-page .jamstack-header,.analytics-page .jamstack-panel{background:var(--analytics-white);border-color:var(--analytics-line);color:var(--analytics-ink);box-shadow:0 18px 48px #0000001f}.analytics-page .jamstack-header p,.analytics-page .empty-state{color:var(--analytics-muted)}.analytics-filters{display:grid;grid-template-columns:minmax(220px,1.2fr) repeat(2,minmax(150px,.7fr)) minmax(220px,1fr);gap:12px}.analytics-filters label{display:grid;gap:6px;color:var(--analytics-muted);font-size:13px}.analytics-filters input,.analytics-filters select{min-width:0;min-height:40px;border:1px solid var(--analytics-line);border-radius:6px;background:var(--analytics-white-strong);color:var(--analytics-ink);padding:0 12px}.analytics-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.analytics-card{border:1px solid var(--analytics-line);border-radius:8px;background:var(--analytics-white);color:var(--analytics-ink);padding:18px;box-shadow:0 18px 48px #0000001f}.analytics-card span,.analytics-panel-head span{color:var(--analytics-muted);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.analytics-card strong{display:block;margin-top:8px;font-size:clamp(28px,4vw,42px);line-height:1}.analytics-card em{display:block;margin-top:10px;color:var(--analytics-muted);font-style:normal}.analytics-panel{display:grid;gap:14px}.analytics-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.analytics-panel-head h2{margin:0;font-size:16px}.analytics-chart,.analytics-paths{display:grid;gap:10px}.analytics-day{display:grid;grid-template-columns:104px minmax(0,1fr) 120px;gap:12px;align-items:center;color:var(--analytics-muted);font-size:13px}.analytics-day strong{color:var(--analytics-ink);font-weight:600;text-align:right}.analytics-bars{display:grid;gap:4px}.analytics-bars i,.analytics-bars b{display:block;height:9px;border-radius:999px}.analytics-bars i{background:#2563eb}.analytics-bars b{background:#93c5fd}.analytics-path-row{display:grid;grid-template-columns:minmax(0,1fr) 90px 90px;gap:12px;align-items:center;border-bottom:1px solid var(--analytics-line);padding:10px 0}.analytics-path-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-path-row span{color:var(--analytics-muted);font-size:13px;text-align:right}.analytics-empty{color:var(--analytics-muted)}.analytics-messages-list{display:grid;gap:12px;max-height:520px;overflow-y:auto;padding-right:4px}.analytics-message-row{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--analytics-line);border-radius:10px;background:#fff6}.analytics-message-meta{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;color:var(--analytics-muted);font-size:12px}.analytics-message-name{color:var(--analytics-ink);font-weight:600;font-size:13px}.analytics-message-path{margin-left:auto;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}.analytics-message-body{margin:0;color:var(--analytics-ink);font-size:14px;line-height:1.55;white-space:pre-wrap;word-break:break-word}@media (max-width: 900px){.jamstack-page{padding:18px}.jamstack-header,.jamstack-grid{display:grid;grid-template-columns:1fr}.jamstack-create,.jamstack-deployment-row{grid-template-columns:1fr}.analytics-page{padding:18px}.analytics-filters,.analytics-summary,.analytics-day,.analytics-path-row{grid-template-columns:1fr}.analytics-day strong,.analytics-path-row span{text-align:left}}.article-table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:var(--radius-md)}.article-table th,.article-table td{padding:14px;border-bottom:1px solid var(--border);text-align:left}.article-table th{color:var(--muted);background:color-mix(in srgb,var(--accent) 6%,var(--surface-soft))}.article-filter-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 18px}.article-filter-tabs .filter-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px;font-weight:600;text-decoration:none;transition:background var(--dur-xs) var(--ease-glide),color var(--dur-xs) var(--ease-glide),border-color var(--dur-xs) var(--ease-glide)}.article-filter-tabs .filter-tab:hover{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:var(--border-strong)}.article-filter-tabs .filter-tab.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.article-filter-tabs .filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:0 6px;height:18px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--text) 8%,transparent);font-size:11px;font-weight:700}.article-filter-tabs .filter-tab.active .filter-count{background:color-mix(in srgb,var(--accent-ink) 22%,transparent);color:var(--accent-ink)}.article-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 16px;border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--muted)}.article-empty-actions,.article-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.article-status-cell{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.article-status-cell small{color:var(--muted);font-size:12px}.editor-page{display:flex;flex-direction:column;gap:0;width:100%;max-width:210mm;margin-left:12px;margin-right:auto}.bloghub-shell.focus-mode .editor-page{margin:0 auto;padding:28px 24px 64px;max-width:min(900px,calc(100% - 32px))}.editor-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 16px}.editor-header h1{font-size:20px;font-weight:800;margin:0}.editor-back{display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 8px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--text);font-size:13px;font-weight:650;cursor:pointer;transition:background var(--dur-xs) var(--ease-glide),transform var(--dur-xs) var(--ease-spring),border-color var(--dur-xs) var(--ease-glide)}.editor-back:hover{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:var(--border-strong);transform:translate(-2px)}.editor-back:active{transform:translate(-2px) scale(.97)}.editor-back svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.editor-actions{display:flex;flex-wrap:wrap;gap:8px}.btn-icon{display:inline-flex;align-items:center;gap:6px;position:relative;overflow:hidden;transition:background var(--dur-xs) var(--ease-glide),border-color var(--dur-xs) var(--ease-glide),transform var(--dur-sm) var(--ease-spring),box-shadow var(--dur-sm) var(--ease-glide)}.btn-icon .btn-svg{width:16px;height:16px;flex-shrink:0;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;transition:transform var(--dur-sm) var(--ease-spring)}.btn-icon:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-tight)}.btn-icon:active:not(:disabled){transform:translateY(0) scale(.97);transition-duration:var(--dur-xs)}.btn-icon:disabled .btn-svg{opacity:.6}.editor-actions .btn-icon:nth-child(1):hover:not(:disabled) .btn-svg{animation:editor-bounce-down .6s var(--ease-spring) infinite}.editor-actions .btn-icon:nth-child(2):hover:not(:disabled) .btn-svg{animation:editor-bounce-up .6s var(--ease-spring) infinite}.editor-actions .btn-icon:nth-child(3):hover:not(:disabled) .btn-svg{animation:editor-eye-pulse 1.1s var(--ease-glide) infinite}.editor-actions .btn-icon:nth-child(4):hover:not(:disabled) .btn-svg{animation:editor-save-tilt .7s var(--ease-spring) infinite}.editor-actions .btn-primary.btn-icon:hover:not(:disabled) .btn-svg{animation:editor-paper-plane .9s var(--ease-spring) infinite}.editor-actions .btn-warning.btn-icon:hover:not(:disabled) .btn-svg{animation:editor-spin 1.2s linear infinite}@keyframes editor-bounce-down{0%,to{transform:translateY(0)}50%{transform:translateY(2px)}}@keyframes editor-bounce-up{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes editor-eye-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@keyframes editor-save-tilt{0%,to{transform:rotate(0) translateY(0)}35%{transform:rotate(-6deg) translateY(-1px)}70%{transform:rotate(6deg) translateY(0)}}@keyframes editor-paper-plane{0%{transform:translate(0) rotate(0)}45%{transform:translate(3px,-3px) rotate(8deg)}to{transform:translate(0) rotate(0)}}@keyframes editor-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.editor-actions .btn-icon:hover:not(:disabled) .btn-svg{animation:none!important}.btn-icon:hover:not(:disabled){transform:none}}.editor-meta{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.input-title{font-size:22px;font-weight:820;padding:10px 14px}.publish-state{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--muted);font-size:13px}.publish-state span{color:var(--text);font-weight:700}.publish-state small{border:1px solid var(--border);border-radius:999px;padding:2px 8px;background:var(--surface)}.tag-editor{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-height:44px}.tag-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-strong);font-size:13px;font-weight:650;line-height:1.4}.tag-remove{border:0;background:transparent;color:inherit;font-size:16px;line-height:1;cursor:pointer;padding:0;opacity:.7}.tag-remove:hover{opacity:1}.tag-input{flex:1;min-width:120px;border:0;outline:none;background:transparent;font-size:14px;padding:4px 0;color:var(--text)}.editor-toolbar{position:relative;z-index:30;display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--surface-solid)}.tb-menu{position:relative}.tb-menu>summary,.tb-btn{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--dur-xs) var(--ease-glide),border-color var(--dur-xs) var(--ease-glide)}.tb-menu>summary{list-style:none;user-select:none}.tb-menu>summary::-webkit-details-marker{display:none}.tb-menu>summary:hover,.tb-btn:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface-solid));border-color:var(--border-strong)}.tb-menu[open]>summary{background:color-mix(in srgb,var(--accent) 18%,var(--surface-solid));border-color:var(--accent)}.tb-menu-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:40;min-width:140px;display:flex;flex-direction:column;padding:4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);box-shadow:var(--shadow-tight)}.tb-menu-panel button{width:100%;display:flex;align-items:center;gap:8px;text-align:left;padding:6px 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text);font-size:13px;font-weight:550;cursor:pointer;transition:background var(--dur-xs) var(--ease-glide)}.tb-menu-panel button:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 14%,transparent)}.tb-menu-panel button:disabled{opacity:.5;cursor:not-allowed}.tb-btn{min-width:32px}.tb-icon{width:16px;height:16px;flex-shrink:0;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}.tb-divider{width:1px;height:22px;margin:0 4px;background:var(--border)}.tb-color-panel{min-width:180px;gap:8px}.tb-color-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:4px}.tb-color-swatch{width:22px;height:22px;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--dur-xs) var(--ease-glide)}.tb-color-swatch:hover{transform:scale(1.12)}.tb-menu-sep{height:1px;margin:4px 2px;background:var(--border)}.media-upload-status{min-height:36px;display:flex;align-items:center;padding:8px 14px;border-left:1px solid var(--border);border-right:1px solid var(--border);background:color-mix(in srgb,var(--accent) 18%,var(--surface-solid));color:var(--accent-strong);font-size:13px;font-weight:720}.tiptap-editor{position:relative;z-index:1;min-height:500px;padding:28px 32px;border:1px solid var(--border);border-top:0;border-radius:0 0 var(--radius-md) var(--radius-md);background:var(--surface-solid);box-shadow:var(--shadow-tight)}.tiptap-editor .ProseMirror{min-height:460px;outline:none;font-size:16px;line-height:1.8;color:var(--text)}.conflict-banner{padding:13px;border:1px solid color-mix(in srgb,var(--accent) 36%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 18%,var(--surface));color:var(--accent-strong);display:flex;gap:10px;align-items:center}.login-page{min-height:calc(100vh - 170px);display:grid;place-items:center}.login-form{width:min(430px,100%);padding:30px;border-radius:var(--radius-md);background:var(--surface-solid);border:1px solid var(--border);box-shadow:var(--shadow-elev)}.login-form h1{margin:0 0 18px;text-align:center}.login-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.login-form button{min-height:42px;border:0;border-radius:var(--radius-sm)}.login-form .login-mode button.active,.login-form>button{color:var(--accent-ink);background:var(--accent)}.login-form .error{margin:0 0 12px;color:var(--danger, #d23f3f);text-align:center}.auth-checking{color:var(--text)}.preview-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:color-mix(in srgb,var(--bg) 70%,transparent);backdrop-filter:blur(8px)}.preview-content{width:min(820px,100%);max-height:84vh;overflow:auto;padding:28px 32px;border-radius:var(--radius-md);background:var(--surface-solid);border:1px solid var(--border);box-shadow:var(--shadow-elev)}.article-content{line-height:1.85;color:var(--text)}.article-content img,.article-content video{display:block;max-width:100%;height:auto;margin:0 auto}.article-content audio{display:block;max-width:100%}.article-content figure{margin:1em 0}.history-panel{position:fixed;top:0;right:0;width:320px;height:100vh;background:var(--surface-solid);border-left:1px solid var(--border);box-shadow:-4px 0 12px var(--shadow);z-index:100;display:flex;flex-direction:column}.history-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border)}.history-panel-header h3{margin:0;font-size:16px;font-weight:600}.history-close{background:none;border:none;color:var(--text);font-size:20px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm)}.history-close:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.history-panel-body{flex:1;overflow-y:auto;padding:12px}.history-empty{color:var(--muted);text-align:center;padding:32px 0}.index-status-row{display:grid;gap:4px;padding:10px 12px;margin-bottom:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 8%,transparent)}.index-status-row span,.index-status-row small{color:var(--muted);font-size:12px}.index-status-row strong{color:var(--text);font-size:13px}.history-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);margin-bottom:4px}.history-item.current{background:color-mix(in srgb,var(--accent) 12%,transparent)}.history-item:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.history-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}.history-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--text)}.history-current{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:11px;font-weight:700}.history-time{font-size:12px;color:var(--muted)}.history-size{font-size:11px;color:var(--subtle)}.btn-sm{padding:4px 10px;font-size:12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-solid);color:var(--text);cursor:pointer;white-space:nowrap}.btn-sm:hover{background:color-mix(in srgb,var(--accent) 10%,var(--surface-solid));border-color:var(--border-strong)}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.workspace-page{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.workspace-header h1{font-size:1.5rem;font-weight:700;margin:0}.workspace-subtitle{color:var(--text-muted, #888);font-size:.85rem;margin:.25rem 0 0}.workspace-stats{display:flex;gap:1.5rem;margin:1rem 0;padding:.75rem 1rem;background:var(--surface-2, #f5f5f5);border-radius:8px;font-size:.85rem;flex-wrap:wrap}.stat-item{color:var(--text-secondary, #666)}.workspace-layout{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:1rem}@media (min-width: 900px){.workspace-layout{grid-template-columns:1fr 320px}}.workspace-tree{border:1px solid var(--border, #e0e0e0);border-radius:10px;padding:.75rem;overflow-x:auto;font-size:.82rem;font-family:var(--font-mono, monospace)}.tree-root-label{font-weight:600;margin-bottom:.5rem;padding:.25rem .5rem;color:var(--text-secondary, #555);border-bottom:1px solid var(--border, #eee)}.tree-loading{padding:1rem;color:var(--text-muted, #aaa);text-align:center}.tree-list{list-style:none;margin:0;padding:0 0 0 1rem}.tree-item{margin:0}.tree-row{display:flex;align-items:center;gap:.35rem;padding:.25rem .4rem;border-radius:4px;cursor:default;white-space:nowrap}.tree-row:hover{background:var(--surface-2, #f5f5f5)}.tree-row.tree-selected{background:var(--accent-bg, #e8f4fd)}.tree-dir{cursor:pointer;font-weight:500}.tree-toggle{font-size:.65rem;width:1rem;text-align:center;color:var(--text-muted, #999)}.tree-icon{font-size:.9rem;flex-shrink:0}.tree-name{overflow:hidden;text-overflow:ellipsis;max-width:300px}.tree-meta{color:var(--text-muted, #999);font-size:.72rem;margin-left:.5rem;flex-shrink:0}.tree-actions{display:flex;gap:.15rem;margin-left:auto;opacity:0;transition:opacity .15s}.tree-row:hover .tree-actions{opacity:1}.ws-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:5px;background:transparent;color:var(--text-secondary, #666);cursor:pointer;transition:background .15s,color .15s}.ws-btn:hover{background:var(--surface-3, #e8e8e8);color:var(--text-primary, #222)}.ws-btn-danger:hover{background:#fde8e8;color:#c0392b}.workspace-preview{border:1px solid var(--border, #e0e0e0);border-radius:10px;overflow:hidden;position:sticky;top:1rem}.preview-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid var(--border, #eee);background:var(--surface-2, #f8f8f8)}.preview-title{font-size:.75rem;font-family:var(--font-mono, monospace);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:.5rem}.preview-body{padding:1rem;display:flex;align-items:center;justify-content:center;min-height:200px;background:var(--surface-1, #fafafa)}.preview-body img{max-width:100%;max-height:400px;object-fit:contain;border-radius:4px}.preview-fallback{color:var(--text-muted, #aaa);font-size:.85rem}.empty-state{text-align:center;color:var(--text-muted, #aaa);padding:2rem 0}@media (max-width: 1280px){.bloghub-shell{grid-template-columns:260px minmax(0,1fr);padding:18px}.home-dashboard{grid-template-columns:minmax(0,1fr) 310px;grid-template-rows:auto auto auto}.feature-card,.latest-card{grid-column:1 / 2}.spotlight-grid{grid-column:1 / 2;grid-template-columns:repeat(2,minmax(0,1fr))}.home-dashboard>.right-rail{grid-column:2 / 3;grid-row:1 / 4}}@media (max-width: 980px){.bloghub-shell{grid-template-columns:minmax(0,1fr);height:auto;overflow:visible}.bloghub-sidebar,.bloghub-workspace,.bloghub-main,.glass-card,.article-detail,.article-body-rich,.article-heading,.related-panel,.topbar,.top-actions{min-width:0}.bloghub-workspace{overflow:visible}.bloghub-main{overflow-y:visible}.bloghub-sidebar{height:auto;overflow-y:visible;padding:18px}.brand-mark{margin-bottom:18px}.bloghub-nav,.bloghub-nav.secondary{display:flex;overflow-x:auto;padding-bottom:4px;min-width:0}.bloghub-nav a{min-width:112px;height:48px;padding:0 14px;flex:0 0 auto}.sidebar-divider,.sidebar-user{display:none}.topbar{grid-template-columns:minmax(0,1fr);gap:14px;min-height:auto;padding:8px 0 18px}.top-actions{justify-content:space-between}.top-search{width:100%}.home-dashboard,.page-grid,.article-detail-grid,.settings-grid{grid-template-columns:minmax(0,1fr)}.feature-card,.latest-card,.spotlight-grid,.home-dashboard>.right-rail{grid-column:auto;grid-row:auto}.spotlight-grid{grid-template-columns:minmax(0,1fr)}.right-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.author-card{min-height:auto}}@media (max-width: 680px){.bloghub-shell{padding:10px;gap:12px}.bloghub-sidebar{border-radius:22px}.brand-mark strong{font-size:21px}.brand-mark small{font-size:12px}.top-greeting strong{font-size:22px}.top-greeting span{font-size:14px}.top-search{height:54px}.icon-button{width:54px;height:54px}.compose-button{min-width:150px;height:54px}.home-dashboard{gap:14px}.feature-card{min-height:500px}.feature-content{inset:auto 22px 22px}.feature-card>.pill{left:22px}.feature-content h1{font-size:30px}.feature-footer{flex-wrap:wrap;gap:14px}.round-link{margin-left:0}.latest-card,.page-panel,.settings-form{padding:22px}.latest-row,.article-row{grid-template-columns:96px minmax(0,1fr);padding:14px 0}.latest-row .soft-art,.article-row .soft-art{width:96px;height:72px}.latest-row time,.article-row time,.latest-row>.heat{display:none}.right-rail,.stats-grid,.about-stats,.gear-panel div{grid-template-columns:1fr}.article-heading,.article-body-rich,.article-actions,.comments-section{padding-left:22px;padding-right:22px}.article-actions,.comments-section{margin-left:22px;margin-right:22px}.article-heading h1{font-size:29px}.detail-hero,.about-cover{height:220px}.newsletter-card div{grid-template-columns:minmax(0,1fr)}}@media (max-width: 480px){.bloghub-shell{padding:8px;gap:10px}.article-heading{padding:22px 18px 0}.article-heading h1{font-size:24px;line-height:1.25}.article-body-rich{padding:12px 18px 28px;font-size:16px;line-height:1.85}.article-body-rich h2{font-size:19px;margin:24px 0 10px}.article-body-rich h3{font-size:17px}.article-actions,.comments-section{margin-left:18px;margin-right:18px;padding-left:18px;padding-right:18px}input,textarea,select{font-size:16px}}
