/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--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-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-brand:#ff6a00;--color-brand-dark:#e55e00;--color-ink:#171a1f;--color-muted:#69707a;--color-line:#e8eaed;--color-soft:#f6f7f9}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.\!container{width:100%!important}@media (min-width:40rem){.\!container{max-width:40rem!important}}@media (min-width:48rem){.\!container{max-width:48rem!important}}@media (min-width:64rem){.\!container{max-width:64rem!important}}@media (min-width:80rem){.\!container{max-width:80rem!important}}@media (min-width:96rem){.\!container{max-width:96rem!important}}.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}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-1{width:var(--spacing);height:var(--spacing)}.flex-shrink,.shrink{flex-shrink:1}.flex-grow,.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.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}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.p-7{padding:calc(var(--spacing) * 7)}.text-center{text-align:center}.text-justify{text-align:justify}.text-wrap{text-wrap:wrap}.text-soft{color:var(--color-soft)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.ring,.shadow{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.invert{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,)}.invert{--tw-invert:invert(100%)}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#171a1f;-webkit-font-smoothing:antialiased;background:#f6f7f9;margin:0;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%}.container{width:100%;max-width:1160px;margin:0 auto;padding:0 18px}.site-header{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-bottom:1px solid #e8eaed;position:sticky;top:0}.header-inner{gap:22px;height:62px}.header-inner,.logo{align-items:center;display:flex}.logo{flex:none;gap:10px}.logo-mark{letter-spacing:-.5px;background:linear-gradient(135deg,#ffb02e,#ff6a00);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;font-weight:900;display:flex}.logo-text{flex-direction:column;line-height:1.15;display:flex}.logo-text span{color:#8a919b;font-size:11px}.main-nav{flex:1;align-items:center;gap:4px;display:flex;overflow:hidden}.main-nav a{color:#4b5563;white-space:nowrap;border-radius:999px;padding:7px 12px}.header-side{flex:none;gap:10px}.header-search,.header-side{align-items:center;display:flex}.header-search{background:#f2f3f5;border-radius:999px;padding:4px 6px 4px 12px}.header-search input{background:0 0;border:0;outline:none;width:150px;font-size:13px}.header-search button{cursor:pointer;color:#69707a;background:0 0;border:0;padding:2px 6px;font-size:14px}.btn{color:#374151;cursor:pointer;background:#fff;border:1px solid #e8eaed;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:7px 14px;font-size:13px;transition:all .15s;display:inline-flex}.btn:hover{border-color:#d5d9df}.btn-primary{background:linear-gradient(135deg,#ffb02e,#ff6a00);border:0}.btn-primary:hover{filter:brightness(1.05)}.btn-danger{color:#d94057}.layout-main{grid-template-columns:minmax(0,1fr) 308px;align-items:start;gap:22px;display:grid}.panel{background:#fff;border-radius:14px;padding:18px 20px;box-shadow:0 1px 2px #1018280a,0 6px 24px #1018280a}.panel+.panel{margin-top:16px}.panel-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.panel-head h2,.panel-head h3{margin:0;font-size:16px;font-weight:700}.panel-head .more{color:#8a919b;font-size:12px}.hero{background:linear-gradient(120deg,#fff,#fff7ef 55%,#ffefdd);border-radius:16px;margin-bottom:18px;padding:26px 28px;box-shadow:0 1px 2px #1018280a,0 8px 28px #ff6a000f}.hero h1{letter-spacing:.3px;margin:0 0 6px;font-size:24px}.hero p{color:#69707a;margin:0;font-size:14px}.hero-stats b{color:#171a1f;margin-right:4px;font-size:16px}.hero-tags{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.chip{color:#b45309;background:#fff;border:1px solid #f0dcc8;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;display:inline-flex}.section-title{justify-content:space-between;align-items:center;margin:4px 0 12px;display:flex}.section-title h2{align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.section-title h2:before{content:"";background:linear-gradient(#ffb02e,#ff6a00);width:4px;height:18px}.post-list{flex-direction:column;gap:12px;display:flex}.post-card{padding:18px 20px;transition:all .18s;display:block;box-shadow:0 1px 2px #1018280a,0 6px 24px #1018280a}.post-card:hover{transform:translateY(-2px);box-shadow:0 4px 10px #1018280f,0 12px 32px #10182812}.post-card-top{gap:16px;display:flex}.post-card-body{flex:1;min-width:0}.post-card h3{margin:0 0 6px;font-size:17px;font-weight:700;line-height:1.45}.post-card h3 a:hover{color:#ff6a00}.post-card .summary{color:#69707a;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.65;display:-webkit-box;overflow:hidden}.post-card .meta{color:#8a919b;flex-wrap:wrap;align-items:center;gap:14px;margin-top:10px;font-size:12px;display:flex}.post-card .cover{object-fit:cover;background:#f2f3f5;border-radius:10px;flex:none;width:150px;height:100px}.badge{color:#c2410c;background:#fff3e6;border-radius:6px;align-items:center;padding:1px 7px;font-size:11px;display:inline-flex}.badge-pin{color:#b91c1c;background:#fee2e2}.side-cats{flex-wrap:wrap;gap:8px;display:flex}.side-cats a{color:#4b5563;background:#f6f7f9;border-radius:8px;padding:5px 11px;font-size:13px}.hot-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.hot-list li{gap:10px;font-size:13px;line-height:1.5;display:flex}.hot-list .rank{color:#8a919b;background:#f2f3f5;border-radius:5px;flex:none;justify-content:center;align-items:center;width:18px;height:18px;margin-top:2px;font-size:11px;display:flex}.hot-list li:first-child .rank{color:#fff;background:#ff6a00}.hot-list li:nth-child(2) .rank{color:#fff;background:#ff9f1a}.hot-list li:nth-child(3) .rank{color:#fff;background:#ffc069}.tag-cloud{flex-wrap:wrap;gap:7px;display:flex}.tag-cloud a{color:#69707a;background:#f6f7f9;border-radius:999px;padding:3px 9px;font-size:12px}.breadcrumb{color:#8a919b;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;min-width:0;margin-bottom:12px;font-size:12px;display:flex}.breadcrumb>a,.breadcrumb>span:not(.crumb-cur){flex:none}.breadcrumb .crumb-cur{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;max-width:22rem;line-height:1.45;overflow:hidden}@media (max-width:760px){.breadcrumb .crumb-cur{max-width:11.5rem}}.article{background:#fff;padding:30px 34px 26px;box-shadow:0 1px 2px #1018280a,0 6px 24px #1018280a}.article h1{letter-spacing:.2px;margin:0 0 12px;font-size:27px;line-height:1.4}.article-meta{color:#8a919b;border-bottom:1px solid #eef0f3;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px;padding-bottom:16px;font-size:12px;display:flex}.article-meta .author{color:#4b5563;font-weight:600}.article-tags{flex-wrap:wrap;gap:6px;margin:22px 0 4px;display:flex}.article-nav{color:#69707a;justify-content:space-between;gap:14px;margin-top:18px;font-size:13px;display:flex}.prose{color:#23272e;word-break:break-word;line-height:1.9}.prose>*+*{margin-top:.9em}.prose h2{border-bottom:1px solid #f0f1f3;margin:1.6em 0 .6em;padding-bottom:6px;font-size:21px;line-height:1.4}.prose h3{margin:1.3em 0 .5em;font-size:18px}.prose h4{margin:1.2em 0 .4em;font-size:16px}.prose a{color:#e55e00;text-decoration:underline}.prose ol,.prose ul{margin:.8em 0;padding-left:1.4em}.prose li{margin:.3em 0}.prose blockquote{color:#5b6167;background:#fff8f2;border-left:3px solid #ff6a00;margin:1em 0;padding:10px 16px}.prose code{background:#f4f5f7;padding:.15em .4em;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.prose pre{color:#d6dee7;background:#0f1419;border-radius:10px;padding:14px 16px;font-size:13px;line-height:1.6;overflow-x:auto}.prose pre code{color:inherit;background:0 0;padding:0}.prose img{margin:1em auto;display:block}.prose table{border-collapse:collapse;width:100%;font-size:14px}.prose td,.prose th{text-align:left;border:1px solid #e8eaed;padding:8px 10px}.prose hr{border:0;border-top:1px solid #eef0f3;margin:1.6em 0}.reply-list{flex-direction:column;gap:14px;display:flex}.reply-item{gap:12px;display:flex}.reply-avatar{color:#b45309;background:linear-gradient(135deg,#ffe1c2,#ffc78f);border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:flex}.reply-body{flex:1;min-width:0}.reply-head{color:#8a919b;align-items:baseline;gap:10px;font-size:12px;display:flex}.reply-head b{color:#374151;font-size:13px}.reply-content{color:#374151;white-space:pre-wrap;word-break:break-word;margin-top:2px;font-size:14px}.reply-form textarea{width:100%;min-height:90px;font:inherit;resize:vertical;border:1px solid #e8eaed;border-radius:10px;outline:none;padding:10px 12px;font-size:14px}.reply-form textarea:focus{border-color:#ff6a00}.form-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.form-field label{color:#4b5563;font-size:13px;font-weight:600}.form-field input,.form-field select,.form-field textarea{font:inherit;background:#fff;border:1px solid #e8eaed;border-radius:9px;outline:none;padding:9px 12px;font-size:14px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#ff6a00}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.error-text{color:#d94057;font-size:13px}.success-text{color:#16a34a;font-size:13px}.pagination{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:20px;display:flex}.pagination a,.pagination span{color:#4b5563;background:#fff;border:1px solid #e8eaed;border-radius:8px;justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 10px;font-size:13px;display:inline-flex}.pagination .current{color:#fff;background:#171a1f;border-color:#171a1f}.site-footer{color:#8a919b;border-top:1px solid #e8eaed;margin-top:10px;padding:26px 0;font-size:12px}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:20px;display:flex}.footer-links{flex-wrap:wrap;gap:16px;display:flex}.footer-links a:hover{color:#ff6a00}.empty{text-align:center;color:#8a919b;padding:40px 0;font-size:14px}.admin-layout{grid-template-columns:190px minmax(0,1fr);gap:18px;display:grid}.admin-nav{background:#fff;border-radius:14px;align-self:start;padding:10px;position:sticky;top:80px;box-shadow:0 1px 2px #1018280a}.admin-nav a{color:#4b5563;border-radius:9px;padding:9px 12px;font-size:13px;display:block}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table td,.admin-table th{text-align:left;vertical-align:middle;border-bottom:1px solid #eef0f3;padding:10px 8px}.admin-table th{color:#8a919b;font-size:12px;font-weight:600}.admin-table .actions{justify-content:flex-end;gap:8px;display:flex}.editor-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.editor-grid textarea{min-height:460px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.7}.preview-box{background:#fff;border:1px solid #e8eaed;border-radius:10px;min-height:460px;max-height:640px;padding:14px 16px;overflow:auto}.notice{color:#92400e;background:#fff8e6;border:1px solid #ffe1a6;border-radius:9px;padding:10px 14px;font-size:13px}@media (max-width:900px){.layout-main{grid-template-columns:1fr}.sidebar{order:2}.article{padding:22px 18px}.article h1{font-size:22px}.header-search,.main-nav{display:none}.admin-layout{grid-template-columns:1fr}.admin-nav{flex-wrap:wrap;display:flex;position:static}.editor-grid,.form-row{grid-template-columns:1fr}.post-card .cover{width:110px;height:82px}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #ff8a3d}.skip-link{z-index:999;color:#fff;background:#171a1f;border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:12px}.reading-progress{z-index:60;background:linear-gradient(90deg,#ffb02e,#ff6a00);width:0;height:3px;transition:width .1s linear;position:fixed;top:0;left:0}.back-top{z-index:45;color:#4b5563;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;opacity:0;pointer-events:none;background:#ffffffeb;border:1px solid #e8eaed;border-radius:50%;width:42px;height:42px;font-size:17px;transition:all .2s;position:fixed;bottom:28px;right:22px;transform:translateY(8px);box-shadow:0 6px 20px #1018281f}.back-top.show{opacity:1;pointer-events:auto;transform:translateY(0)}.share-btn{align-items:center;gap:5px;display:inline-flex}.article-cover{object-fit:cover;background:#f2f3f5;width:100%;max-height:420px;margin:4px 0 20px}.mobile-panel{z-index:45;background:#fff;border-bottom:1px solid #e8eaed;padding:12px 18px 18px;display:none;position:fixed;inset:62px 0 auto;box-shadow:0 16px 40px #1018281f}.mobile-panel.open{display:block}.mobile-panel .mobile-search{gap:8px;margin-bottom:12px;display:flex}.mobile-panel .mobile-search input{font:inherit;border:1px solid #e8eaed;border-radius:9px;flex:1;padding:9px 12px}.mobile-links{grid-template-columns:1fr 1fr;gap:8px;display:grid}.mobile-links a{background:#f6f7f9;border-radius:9px;padding:10px 12px;font-size:13px}.toast-stack{z-index:99;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.toast-item{color:#fff;background:#14191e;border-radius:999px;padding:10px 18px;font-size:13px;animation:toast-in .18s ease-out;box-shadow:0 10px 30px #00000047}.toast-item.err{background:#b3261e}.toast-item.ok{background:#17803d}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.editor-toolbar{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.editor-toolbar button{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #e8eaed;border-radius:7px;min-width:32px;height:30px;padding:0 9px;font-size:12px}.draft-bar{color:#92400e;background:#fff8e6;border:1px solid #ffe1a6;border-radius:9px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding:8px 12px;font-size:12px;display:flex}mark{color:inherit;background:#ffe4bf;border-radius:3px;padding:0 2px}.skeleton-page{padding:26px 0}.skeleton{background:linear-gradient(90deg,#eef0f3 25%,#f6f7f9 37%,#eef0f3 63%) 0 0/400% 100%;border-radius:10px;animation:shimmer 1.2s infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}.skeleton-line{height:14px;margin:10px 0}.skeleton-card{height:118px;margin-bottom:12px}.post-card .cover{aspect-ratio:3/2;height:auto}html.dark{color-scheme:dark}html.dark body{color:#e7e9ee;background:#0e1116}html.dark .logo-text span{color:#8b93a1}html.dark .header-search input{color:#e7e9ee}html.dark .header-search input::placeholder{color:#7d8695}html.dark .btn:hover{border-color:#3a4150}html.dark .btn-primary{background:linear-gradient(135deg,#ffb02e,#ff6a00);border:0}html.dark .hero{background:linear-gradient(120deg,#171b22,#1d1a17 55%,#2a1d12)}html.dark .hero p,html.dark .hero-stats{color:#9aa3b2}html.dark .chip{color:#ffab5e;background:#1c212a;border-color:#3a2c20}html.dark .article,html.dark .mobile-panel,html.dark .panel,html.dark .post-card{background:#151920;box-shadow:0 1px 2px #0000004d,0 8px 28px #00000038}html.dark .panel-head h2,html.dark .panel-head h3,html.dark .section-title h2{color:#eef1f5}html.dark .post-card h3 a:hover{color:#ffab5e}html.dark .hint,html.dark .post-card .summary,html.dark .spider-meta{color:#9aa3b2}html.dark .article-meta,html.dark .breadcrumb,html.dark .post-card .meta{color:#8b93a1}html.dark .article-meta .author,html.dark .kv b,html.dark .reply-head b{color:#d7dce4}html.dark .badge{color:#ffab5e;background:#2a2118}html.dark .badge-pin{color:#ff8f8f;background:#331d1d}html.dark .mobile-links a,html.dark .side-cats a,html.dark .tag-cloud a{color:#aab2bf;background:#1c212a}html.dark .hot-list .rank{color:#8b93a1;background:#232833}html.dark .article-meta,html.dark .prose h2{border-bottom-color:#232833}html.dark .prose a{color:#ffab5e}html.dark .prose code{color:#e7e9ee;background:#232833}html.dark .prose hr{border-top-color:#232833}html.dark .reply-avatar{color:#ffab5e;background:linear-gradient(135deg,#3a2a18,#4a3218)}html.dark .reply-content{color:#c9d0da}html.dark .form-field input,html.dark .form-field select,html.dark .form-field textarea,html.dark .json-area,html.dark .mobile-panel .mobile-search input,html.dark .reply-form textarea,html.dark .rule-head input,html.dark .rule-row input,html.dark .rule-row select{color:#e7e9ee;background:#12161c;border-color:#2a303b}html.dark .check-row,html.dark .form-field label{color:#aab2bf}html.dark .pagination a,html.dark .pagination span{color:#aab2bf;background:#151920;border-color:#2a303b}html.dark .pagination .current{color:#111;background:#e7e9ee;border-color:#e7e9ee}html.dark .site-footer{color:#7d8695;background:#11141a;border-top-color:#232833}html.dark .admin-nav{background:#151920}html.dark .admin-nav a{color:#aab2bf}html.dark .admin-table td,html.dark .admin-table th{border-bottom-color:#232833}html.dark .admin-table th{color:#8b93a1}html.dark .preview-box,html.dark .result-content{background:#12161c;border-color:#2a303b}html.dark .result-content{color:#b9c0cb}html.dark .modal{background:#151920}html.dark .modal-head{border-bottom-color:#232833}html.dark .editor-toolbar button{color:#aab2bf;background:#181c23;border-color:#2a303b}html.dark .draft-bar{color:#f0c671;background:#2a2415;border-color:#4a3a1a}html.dark .skeleton{background:linear-gradient(90deg,#1a1f27 25%,#232833 37%,#1a1f27 63%) 0 0/400% 100%}html.dark .back-top{color:#aab2bf;background:#151920eb;border-color:#2a303b}html.dark .empty,html.dark .hint.small,html.dark .qr-tip{color:#8b93a1}@media (max-width:900px){.menu-btn{display:inline-flex}}.stat-num{color:#171a1f}html.dark .stat-num{color:#fff}.inline-input{font:inherit;color:inherit;background:#fff;border:1px solid #e8eaed;border-radius:9px;outline:none;flex:1;padding:9px 12px}.inline-input:focus{border-color:#ff6a00}html.dark .inline-input{background:#12161c;border-color:#2a303b}.text-soft{color:#4b5563}html.dark .text-soft{color:#aab2bf}body{background:#f5f3ef}.home-hero{background:linear-gradient(135deg,#fffaf3,#fff1df 55%,#ffe3c4);border-radius:26px;grid-template-columns:1.05fr .95fr;align-items:center;gap:30px;margin-bottom:26px;padding:40px 44px;display:grid;overflow:hidden;box-shadow:0 2px 4px #7848140a,0 18px 44px #ff7a0014}.hero-eyebrow{letter-spacing:2px;color:#b45309;background:#ffffffb3;border:1px solid #ffddb8;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;display:inline-flex}.hero-copy h1{letter-spacing:.5px;margin:16px 0 12px;font-size:38px;font-weight:800;line-height:1.32}.hero-copy h1 em{color:#0000;background:linear-gradient(100deg,#ff5c1a,#f97316 60%,#d97706);-webkit-background-clip:text;background-clip:text;font-style:normal}.hero-copy p{color:#6b6257;margin:0 0 20px;font-size:15px}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.hero-actions .btn{padding:10px 18px;font-size:14px}.hero-stats{color:#7c7062;gap:28px;margin-top:24px;font-size:13px;display:flex}.hero-stats b{color:#2b2118;font-size:20px;line-height:1.2;display:block}.hero-art img{border-radius:18px;width:100%;height:auto;display:block}.featured-section{margin-bottom:26px}.featured-card{background:#fff;border-radius:22px;grid-template-columns:1.12fr 1fr;transition:transform .2s,box-shadow .2s;display:grid;overflow:hidden;box-shadow:0 2px 4px #1018280a,0 16px 40px #10182812}.featured-card:hover{transform:translateY(-3px);box-shadow:0 6px 12px #1018280f,0 24px 56px #1018281a}.featured-cover{background:#f3f4f6;min-height:300px;position:relative}.featured-cover img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.featured-badge{color:#fff;background:linear-gradient(135deg,#ffb02e,#ff5c1a);border-radius:999px;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;top:18px;left:18px;box-shadow:0 6px 16px #ff5c1a59}.featured-body{flex-direction:column;justify-content:center;padding:30px 32px;display:flex}.featured-cat{color:#b45309;letter-spacing:1px;align-items:center;gap:6px;font-size:12px;display:flex}.featured-body h2{margin:10px 0 12px;font-size:24px;font-weight:800;line-height:1.42}.featured-body h2 a:hover{color:#ff5c1a}.featured-body p{color:#69707a;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 18px;font-size:14px;line-height:1.75;display:-webkit-box;overflow:hidden}.featured-meta{color:#8a919b;flex-wrap:wrap;align-items:center;gap:18px;font-size:12px;display:flex}.featured-meta>span{align-items:center;gap:4px;display:inline-flex}.featured-more{color:#ff5c1a;margin-left:auto;font-weight:600}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.post-card{background:#fff;border-radius:18px;flex-direction:column;padding:0;display:flex;overflow:hidden;box-shadow:0 1px 2px #1018280a,0 10px 28px #1018280d}.post-cover{aspect-ratio:16/9.6;background:#f1f2f4;position:relative;overflow:hidden}.post-cover img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.post-card:hover .post-cover img{transform:scale(1.035)}.post-cat{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#11182794;left:12px}.post-cat,.post-pin{color:#fff;border-radius:999px;padding:3px 10px;font-size:11px;position:absolute;top:12px}.post-pin{background:linear-gradient(135deg,#ffb02e,#ff5c1a);font-weight:600;right:12px}.post-body{flex-direction:column;flex:1;padding:16px 18px 18px;display:flex}.post-body h3{margin:0 0 8px;font-weight:700;line-height:1.5}.post-body .summary{color:#69707a;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.65;display:-webkit-box;overflow:hidden}.post-body .meta{gap:14px;margin-top:auto;padding-top:12px}.post-body .meta span{align-items:center;gap:4px;display:inline-flex}.meta-author{color:#4b5563;font-weight:600}.about-head{align-items:center;gap:12px;margin-bottom:10px;display:flex}.about-head b{font-size:15px;display:block}.about-head span:not(.logo-mark){color:#8a919b;font-size:11px}.about-card p{color:#69707a;margin:0;font-size:13px;line-height:1.7}.about-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;display:grid}.about-stats div{text-align:center;border:1px solid #f1e4d3;border-radius:10px;padding:8px 4px}.about-stats b{color:#2b2118;font-size:17px;display:block}.about-stats span{color:#8a919b;font-size:11px}.panel-head h3,.side-cats a{align-items:center;gap:6px;display:inline-flex}.cat-banner{background:#f3f4f6;border-radius:22px;height:210px;margin-bottom:22px;position:relative;overflow:hidden;box-shadow:0 2px 4px #1018280a,0 16px 40px #1018280f}.cat-banner img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cat-banner:after{content:"";background:linear-gradient(90deg,#1118279e,#11182742 55%,#0000);position:absolute;inset:0}.cat-banner-body{z-index:1;color:#fff;flex-direction:column;justify-content:center;height:100%;padding:0 34px;display:flex;position:relative}.cat-banner-body .eyebrow{letter-spacing:3px;opacity:.8;font-size:12px}.cat-banner-body h1{margin:6px 0 8px;font-size:30px}.cat-banner-body p{opacity:.88;max-width:560px;margin:0;font-size:14px}.article-banner{background:#f3f4f6;border-radius:14px;height:220px;margin:4px 0 22px;position:relative;overflow:hidden}.article-banner img{object-fit:cover;width:100%;height:100%}.article-banner span{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1118278c;border-radius:999px;padding:4px 12px;font-size:12px;position:absolute;bottom:14px;left:16px}.avatar-badge{object-fit:cover;vertical-align:middle;background:#e7e8ec;border:1px solid #d5d6db;border-radius:50%;flex:none;line-height:1;display:inline-block;overflow:hidden}.pr-author{align-items:center;gap:6px;display:inline-flex}.footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:28px;display:grid}.footer-brand{align-items:flex-start;gap:12px;display:flex}.footer-brand b{color:#374151;font-size:15px}.footer-brand p{color:#8a919b;max-width:340px;margin:6px 0 0;font-size:12px;line-height:1.7}.footer-col h4{color:#4b5563;margin:0 0 10px;font-size:13px}.footer-col a{color:#8a919b;padding:3px 0;font-size:12px;display:block}.footer-bottom{color:#9aa3ad;border-top:1px solid #efece6;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:12px;margin-top:8px;padding-top:14px;font-size:12px;display:flex}html.dark .home-hero{background:linear-gradient(135deg,#171a20,#221a12 60%,#2c1d10);box-shadow:0 18px 44px #00000059}html.dark .hero-eyebrow{color:#ffab5e;background:#ffffff0f;border-color:#4a361f}html.dark .hero-copy p,html.dark .hero-stats{color:#a8b0bb}html.dark .hero-stats b{color:#fff}html.dark .featured-card,html.dark .post-card{background:#151920}html.dark .featured-body p,html.dark .post-body .summary{color:#9aa3b2}html.dark .featured-meta,html.dark .post-body .meta{color:#8b93a1}html.dark .cat-banner:after{background:linear-gradient(90deg,#000000b8,#00000059 60%,#0000)}html.dark .footer-bottom{border-top-color:#232833}html.dark .footer-brand b,html.dark .footer-col h4{color:#c9d0da}@media (max-width:1000px){.featured-card,.post-grid{grid-template-columns:1fr}.featured-cover{aspect-ratio:16/9;min-height:220px;position:relative}.featured-cover img{height:auto;position:static}}@media (max-width:900px){.home-hero{grid-template-columns:1fr;gap:18px;padding:26px 22px}.hero-copy h1{font-size:27px}.hero-art{order:-1}.hero-art img{object-fit:contain;max-height:220px}.cat-banner{height:170px}.cat-banner-body{padding:0 20px}.cat-banner-body h1{font-size:23px}.footer-grid{grid-template-columns:1fr;gap:18px}}.post-grid>.empty{grid-column:1/-1}.feed-tabs{border-bottom:1px solid #e9e4dc;gap:6px;margin:0 0 16px;padding-bottom:2px;display:flex}.feed-tabs a{color:#6b6257;border-radius:9px 9px 0 0;padding:8px 16px;font-size:14px;position:relative}.feed-tabs a.active{color:#c2410c;font-weight:700}.feed-tabs a.active:after{content:"";background:linear-gradient(90deg,#ffb02e,#ff5c1a);border-radius:3px;height:3px;position:absolute;bottom:-3px;left:14px;right:14px}.feed-tabs.small{margin-bottom:14px}.featured-mosaic{grid-template-rows:1fr 1fr;grid-template-columns:1.65fr 1fr;gap:14px;height:420px;margin-bottom:24px;display:grid}.mosaic-card{background:#eee9e2;border-radius:18px;display:block;position:relative;overflow:hidden}.mosaic-card.main{grid-row:span 2}.mosaic-card img{object-fit:cover;width:100%;height:100%;transition:transform .45s;position:absolute;inset:0}.mosaic-card:hover img{transform:scale(1.035)}.mosaic-overlay{color:#fff;background:linear-gradient(#0000 32%,#0c0a08bd);flex-direction:column;justify-content:flex-end;inset:0}.mosaic-overlay,.mosaic-top{display:flex;position:absolute}.mosaic-top{gap:6px;top:14px;left:14px;right:14px}.mosaic-cat{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff3}.mosaic-cat,.mosaic-pin{border-radius:999px;padding:3px 10px;font-size:11px}.mosaic-pin{background:linear-gradient(135deg,#ffb02e,#ff5c1a);font-weight:600}.mosaic-overlay h3{margin:0 0 8px;font-size:21px;font-weight:800;line-height:1.42}.mosaic-card:not(.main) .mosaic-overlay h3{margin-bottom:5px;font-size:15px}.mosaic-meta{opacity:.85;gap:12px;font-size:11.5px;display:flex}.featured-mosaic.single{grid-template-rows:auto;grid-template-columns:1fr;height:380px}.featured-mosaic.single .mosaic-card.main{grid-row:auto}.hot-topics{padding:4px 8px}.topic-row{border-bottom:1px solid #f1eeea;border-radius:10px;align-items:center;gap:12px;padding:11px 10px;display:flex}.topic-row:last-child{border-bottom:0}.topic-rank{color:#8a8278;background:#f3f1ed;border-radius:6px;flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:flex}.topic-rank.top{background:linear-gradient(135deg,#ffb02e,#ff5c1a)}.topic-main{flex:1;min-width:0}.topic-title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.topic-meta{color:#9a938a;flex-wrap:wrap;gap:10px;margin-top:3px;font-size:11.5px;display:flex}.topic-cat{color:#b45309;background:#fff3e6;border-radius:6px;padding:1px 7px}.topic-stats{color:#9a938a;flex:none;gap:14px;font-size:12px;display:flex}.topic-stats span{align-items:center;gap:4px;display:inline-flex}.reply-mini-list{flex-direction:column;gap:2px;display:flex}.reply-mini{border-radius:10px;padding:9px 10px;display:block}.reply-mini:hover{background:#fffaf3}.reply-mini-head{color:#9a938a;justify-content:space-between;gap:8px;font-size:12px;display:flex}.reply-mini-head b{color:#4b5563;font-size:12.5px}.reply-mini p{color:#5b534a;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 3px;font-size:12.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.reply-mini-thread{color:#b0a99f;font-size:11px}.author-card{background:#fff;border-radius:14px;align-items:center;gap:14px;margin-top:16px;padding:18px 20px;display:flex;box-shadow:0 1px 2px #1018280a,0 6px 24px #1018280a}.author-info{flex:1;min-width:0}.author-info b{font-size:15px}.author-info span{color:#9a938a;margin-left:8px;font-size:11px}.author-info p{color:#7c7062;margin:5px 0 0;font-size:12.5px}.post-new{color:#fff;letter-spacing:.5px;background:#16a34af0;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700;position:absolute;bottom:12px;right:12px}html.dark .mosaic-card{background:#1a1f27}html.dark .mosaic-overlay{background:linear-gradient(#0000 32%,#000c)}html.dark .reply-mini:hover{background:#1a1f27}html.dark .reply-mini-head b{color:#d7dce4}html.dark .reply-mini p{color:#b9c0cb}html.dark .reply-mini-thread{color:#8b93a1}html.dark .author-card{background:#151920}html.dark .author-info p{color:#9aa3b2}@media (max-width:900px){.featured-mosaic{grid-template-rows:auto;grid-template-columns:1fr;height:auto}.mosaic-card.main{aspect-ratio:16/10;grid-row:auto}.mosaic-card:not(.main){aspect-ratio:16/7}.mosaic-overlay h3{font-size:18px}.mosaic-card:not(.main) .mosaic-overlay h3{font-size:14px}.featured-mosaic.single{height:auto}.featured-mosaic.single .mosaic-card.main{aspect-ratio:16/9}.topic-stats span:nth-child(2){display:none}.author-card{flex-wrap:wrap}.author-card .btn{justify-content:center;width:100%}}.category-grid{grid-template-columns:repeat(4,1fr);display:grid}.category-card{aspect-ratio:16/8.5;background:#eee9e2;border-radius:16px;display:block;overflow:hidden;box-shadow:0 1px 2px #1018280a,0 8px 24px #1018280d}.category-card img{object-fit:cover;width:100%;height:100%;transition:transform .4s;position:absolute;inset:0}.category-card:hover img{transform:scale(1.04)}.category-overlay{color:#fff;background:linear-gradient(#0000 35%,#0c0a08b8);flex-direction:column;justify-content:flex-end;padding:14px 16px;display:flex;position:absolute;inset:0}.category-overlay b{font-size:16px;font-weight:700}.category-overlay span{opacity:.82;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11.5px;overflow:hidden}@media (max-width:1000px){.category-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.category-grid{grid-template-columns:1fr}}.home-hero.tech-hero{color:#fff;background:#0b1220 url(/images/gen/hero.jpg) 50%/cover no-repeat;min-height:360px;padding:46px 48px;position:relative}.home-hero.tech-hero:before{content:"";background:linear-gradient(90deg,#060b16f0,#060b16c7 42%,#060b1638);position:absolute;inset:0}.home-hero.tech-hero .hero-copy{z-index:1;max-width:620px;position:relative}.home-hero.tech-hero .hero-eyebrow{color:#bfdbfe;background:#ffffff14;border-color:#93c5fd59}.home-hero.tech-hero .hero-copy h1{color:#fff}.home-hero.tech-hero .hero-copy h1 em{color:#0000;background:linear-gradient(100deg,#93c5fd,#38bdf8 55%,#22d3ee);-webkit-background-clip:text;background-clip:text}.home-hero.tech-hero .hero-copy p{color:#cbd5e1}.home-hero.tech-hero .hero-stats{color:#94a3b8}.home-hero.tech-hero .hero-stats b{color:#fff}.hero-ghost{color:#e2e8f0;background:#ffffff14;border-color:#ffffff38}.hero-ghost:hover{background:#ffffff24;border-color:#ffffff59}.logo-mark{background:linear-gradient(135deg,#3b82f6,#06b6d4)}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb)}.section-title h2:before{background:linear-gradient(#60a5fa,#2563eb)}.feed-tabs a.active:after{background:linear-gradient(90deg,#60a5fa,#2563eb)}.chip,.feed-tabs a:hover{color:#1d4ed8}.badge,.side-cats a:hover,.tag-cloud a:hover{color:#1d4ed8;background:#eff6ff}.featured-badge,.mosaic-pin,.post-pin,.topic-rank.top{background:linear-gradient(135deg,#3b82f6,#2563eb)}mark{background:#dbeafe}html.dark mark{color:#dbeafe;background:#1e3a8a}.author-card .btn:hover,.pagination a:hover{border-color:#93c5fd}.post-card h3 a:hover,.post-card:hover h3{color:#1d4ed8}html.dark .post-card h3 a:hover,html.dark .post-card:hover h3{color:#93c5fd}.prose pre.hljs{color:#e6edf3;background:#0b1220;border-radius:12px;padding:16px 18px;font-size:13.5px;line-height:1.68;overflow-x:auto}.hljs-comment,.hljs-quote{color:#8b949e;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:#ff7b72}.hljs-attr,.hljs-regexp,.hljs-string,.hljs-template-tag{color:#a5d6ff}.hljs-bullet,.hljs-number,.hljs-symbol{color:#79c0ff}.hljs-name,.hljs-section,.hljs-title,.hljs-title.function_{color:#d2a8ff}.hljs-attribute,.hljs-built_in,.hljs-class .hljs-title,.hljs-template-variable,.hljs-type,.hljs-variable{color:#ffa657}.hljs-meta,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}:root{--brand-blue:#2563eb;--brand-blue-dark:#1d4ed8;--ink-900:#0f172a;--ink-700:#334155;--ink-500:#64748b;--ink-400:#94a3b8;--line-soft:#e6eaf0;--page-bg:#f7f8fa}body{background:var(--page-bg);color:var(--ink-900)}.container{max-width:1180px;padding:0 20px}.site-header{border-bottom-color:var(--line-soft);background:#ffffffe0}.header-inner{gap:18px;height:64px}.logo-mark{background:var(--brand-blue);color:#fff;letter-spacing:-1px;border-radius:9px;width:34px;height:34px;font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Consolas,monospace;font-size:12px;font-weight:700;box-shadow:0 4px 12px #2563eb42}.logo-text b{letter-spacing:.4px;font-size:16px}.logo-text span{letter-spacing:.9px;color:#94a3b8;font-size:10px}.main-nav a{color:#475569;border-radius:8px;padding:7px 11px;font-size:14px}.main-nav a:hover{color:var(--brand-blue-dark);background:#eff6ff}.header-side{gap:8px}.header-auth{align-items:center;gap:8px;display:flex}.header-search{background:#f2f4f7;border:1px solid #0000;transition:all .15s}.header-search:focus-within{background:#fff;border-color:#bfdbfe;box-shadow:0 0 0 3px #2563eb14}.header-search button{color:#64748b;align-items:center;display:inline-flex}.btn{border-color:var(--line-soft);border-radius:8px}.btn-primary{background:var(--brand-blue);color:#fff;font-weight:600}.btn-primary:hover{background:var(--brand-blue-dark);filter:none}.menu-btn,.theme-btn{justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.page{padding:24px 0 60px}.home-hero.tech-hero{min-height:0;color:var(--ink-900);background:radial-gradient(circle at 1px 1px,#2563eb21 1px,#0000 0) 0 0/22px 22px,linear-gradient(135deg,#f9fbff,#eff4ff 55%,#e9f0ff);border:1px solid #e2e8f2;border-radius:20px;margin-bottom:24px;padding:44px 46px;display:block;overflow:hidden;box-shadow:0 1px 2px #0f172a08,0 18px 42px #2563eb0f}.home-hero.tech-hero:before{display:none}.hero-main{z-index:1;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);align-items:center;gap:46px;display:grid;position:relative}.home-hero.tech-hero .hero-copy{max-width:none}.home-hero.tech-hero .hero-eyebrow{color:var(--brand-blue-dark);letter-spacing:.6px;background:#ffffffd1;border:1px solid #d7e3fb;border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:11.5px;display:inline-flex}.live-dot{background:#22c55e;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #22c55e29}.home-hero.tech-hero .hero-copy h1{letter-spacing:-1.2px;color:#0b1220;margin:18px 0 14px;font-size:clamp(32px,3.4vw,46px);font-weight:800;line-height:1.24}.home-hero.tech-hero .hero-copy h1 em{color:var(--brand-blue-dark);background:linear-gradient(#0000 64%,#2563eb2b 0);-webkit-background-clip:border-box;background-clip:border-box;font-style:normal;display:inline}.home-hero.tech-hero .hero-copy p{color:#475569;margin:0 0 22px;font-size:15px;line-height:1.85}.hero-search{background:#fff;border:1px solid #dbe3f0;border-radius:10px;align-items:center;gap:10px;max-width:470px;padding:5px 6px 5px 14px;transition:all .15s;display:flex;box-shadow:0 2px 10px #0f172a0a}.hero-search:focus-within{border-color:#93b4f8;box-shadow:0 0 0 4px #2563eb14}.hero-search>svg{color:#94a3b8}.hero-search input{color:#0f172a;min-width:0;font:inherit;background:0 0;border:0;outline:none;flex:1;padding:8px 0;font-size:13.5px}.hero-search input::placeholder{color:#94a3b8}.hero-search button{color:#fff;cursor:pointer;background:#0f172a;border:0;border-radius:7px;flex:none;padding:9px 18px;font-size:12.5px;font-weight:600;transition:all .15s}.hero-search button:hover{background:var(--brand-blue)}.home-hero.tech-hero .hero-stats{color:var(--ink-500);gap:0;margin-top:22px;font-size:12.5px;display:flex}.home-hero.tech-hero .hero-stats span{border-left:1px solid #dbe3f0;padding:0 18px}.home-hero.tech-hero .hero-stats span:first-child{border-left:0;padding-left:0}.home-hero.tech-hero .hero-stats b{color:#0f172a;margin-right:4px;font-size:18px;line-height:1;display:inline}.hero-term{background:radial-gradient(520px 200px at 88% -12%,#2563eb57,#0000 62%),#0b1220;border:1px solid #1e293b;border-radius:14px;position:relative;overflow:hidden;box-shadow:0 28px 60px #0f172a3d,0 2px 6px #0f172a2e}.term-bar{color:#7d8da8;border-bottom:1px solid #94a3b824;align-items:center;gap:6px;padding:11px 14px;font:11px/1 ui-monospace,SFMono-Regular,JetBrains Mono,Consolas,monospace;display:flex}.term-bar i{background:#2b3a52;border-radius:50%;width:8px;height:8px}.term-bar span{letter-spacing:.2px;margin-left:8px}.hero-term pre{color:#cbd5e1;white-space:pre;margin:0;padding:18px 20px 20px;font:12.5px/1.95 ui-monospace,SFMono-Regular,JetBrains Mono,Consolas,monospace;overflow-x:auto}.hero-term .t-dim{color:#7d8da8}.hero-term .t-ok{color:#4ade80}.hero-term .t-key{color:#93c5fd}.hero-term .t-num{color:#fbbf24}.hero-term .t-str{color:#67e8f9}.term-foot{color:#94a3b8;border-top:1px solid #94a3b824;align-items:center;gap:7px;padding:10px 16px;font-size:11px;display:flex}.term-pulse{background:#4ade80;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #4ade8024}.term-time{color:#64748b;margin-left:auto;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.feed-tabs{border-bottom-color:#e7ebf1;gap:2px;margin-bottom:18px}.feed-tabs a{color:var(--ink-500);border-radius:8px 8px 0 0;padding:8px 14px;font-size:13.5px}.feed-tabs a:hover{background:#eff6ff}.feed-tabs a.active,.feed-tabs a:hover{color:var(--brand-blue-dark)}.feed-tabs a.active:after{background:var(--brand-blue);height:2px;bottom:-1px;left:13px;right:13px}.featured-mosaic{gap:12px;height:400px;margin-bottom:30px}.mosaic-card{background:#e8edf5;border-radius:14px;box-shadow:0 1px 2px #0f172a0a,0 12px 30px #0f172a0f}.mosaic-overlay{background:linear-gradient(#02061700 10%,#02061742 42%,#020617e6);padding:18px 20px}.mosaic-overlay h3{letter-spacing:-.2px;text-shadow:0 2px 14px #00000052;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 7px;font-size:20px;line-height:1.45;display:-webkit-box;overflow:hidden}.mosaic-card:not(.main) .mosaic-overlay h3{margin-bottom:4px;font-size:15.5px;line-height:1.5}.mosaic-cat{background:#ffffff24;border:1px solid #ffffff38}.mosaic-pin{background:var(--brand-blue)}.mosaic-meta{color:#ffffffd1}.category-section{margin-bottom:30px}.category-grid{gap:14px}.category-card{aspect-ratio:auto;border:1px solid var(--line-soft);background:#fff;border-radius:14px;flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 1px 2px #0f172a08}.category-card:hover{border-color:#bfdbfe;transform:translateY(-3px);box-shadow:0 14px 30px #2563eb17}.category-thumb{aspect-ratio:16/8.6;background:#eef2f7;overflow:hidden}.category-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block;position:static}.category-card:hover .category-thumb img{transform:scale(1.04)}.category-body{padding:12px 14px 14px}.category-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.category-head b{color:var(--ink-900);font-size:15px}.category-head svg{color:var(--ink-400);transition:all .2s}.category-card:hover .category-head svg{color:var(--brand-blue);transform:translate(2px)}.category-body>span{color:var(--ink-500);white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.section-title{margin:2px 0 14px}.section-title h2{letter-spacing:.2px;color:var(--ink-900);font-size:18px}.section-title h2:before{background:var(--brand-blue);border-radius:2px;width:3px;height:16px}.hint{color:var(--ink-400);font-size:12px}.post-grid{gap:18px}.post-card{border:1px solid var(--line-soft);border-radius:14px;transition:transform .2s,border-color .2s,box-shadow .2s;box-shadow:0 1px 2px #0f172a08}.post-card:hover{border-color:#bfdbfe;transform:translateY(-3px);box-shadow:0 16px 34px #0f172a14}.post-cover{aspect-ratio:16/9}.post-cat{background:#0f172a8c;border:1px solid #ffffff29}.post-new{background:var(--brand-blue)}.post-body{padding:16px 18px 17px}.post-body h3{letter-spacing:-.1px;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:16.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.post-body .summary{color:var(--ink-500);font-size:13px;line-height:1.68}.post-body .meta{color:var(--ink-400);border-top:1px solid #f1f4f8;gap:12px;margin-top:14px;padding-top:13px}.meta-author{color:#475569}.sidebar .panel{padding:16px 18px}.panel{border:1px solid var(--line-soft);border-radius:12px;box-shadow:0 1px 2px #0f172a08}.panel-head h2,.panel-head h3{color:var(--ink-900)}.about-card{background:linear-gradient(160deg,#fff,#f4f7ff)}.about-head b{color:var(--ink-900)}.about-head span:not(.logo-mark){color:var(--ink-400);letter-spacing:.4px;font-size:10.5px}.about-card p{color:var(--ink-500)}.about-stats div{background:#fff;border:1px solid #e6ebf3;border-radius:9px}.about-stats b{color:var(--ink-900)}.about-stats span{color:var(--ink-400)}.subscribe-card{background:linear-gradient(135deg,#eff6ff,#f8fbff);border-color:#dbeafe;justify-content:space-between;align-items:center;gap:12px;display:flex}.subscribe-copy b{color:var(--ink-900);font-size:14px;display:block}.subscribe-copy span{color:var(--ink-500);margin-top:2px;font-size:11.5px;line-height:1.5;display:block}.subscribe-card .btn{flex:none;padding:6px 12px;font-size:12px}.side-cats a{color:#475569;background:#f4f6f9}.side-cats a:hover{color:var(--brand-blue-dark);background:#eff6ff}.tag-cloud a{color:var(--ink-500);background:#f4f6f9}.tag-cloud a:hover{color:var(--brand-blue-dark);background:#eff6ff}.hot-topics{border:1px solid var(--line-soft);border-radius:12px}.topic-row{border-bottom-color:#f1f4f8;border-radius:8px}.topic-row:hover{background:#f8faff}.topic-rank{color:var(--ink-500);background:#f1f5f9}.topic-rank.top{background:var(--brand-blue);color:#fff}.topic-cat{color:var(--brand-blue-dark);background:#eff6ff}.topic-stats{color:var(--ink-400)}.topic-new{background:#eff6ff;border-radius:5px;padding:1px 7px;font-size:11px}.breadcrumb a:hover,.topic-new{color:var(--brand-blue-dark)}.article{border:1px solid var(--line-soft);border-radius:14px;padding:32px 36px 28px;box-shadow:0 1px 2px #0f172a08}.article h1{letter-spacing:-.4px;color:var(--ink-900);font-size:30px;font-weight:800;line-height:1.42}.article-meta{color:var(--ink-400);border-bottom-color:#eef2f7;gap:12px}.article-meta .author{color:#334155}.article-cover{max-height:380px;margin:2px 0 24px}.article-banner,.article-cover{border-radius:12px}.article-tags{margin:24px 0 4px}.chip{color:var(--brand-blue-dark);background:#f8fbff;border-color:#dbeafe}.article-nav{border-top:1px solid #eef2f7;padding-top:18px}.article-nav a:hover{color:var(--brand-blue-dark)}.toc-panel{position:sticky;top:84px}.toc-panel .hot-list a{color:var(--ink-500);padding:3px 0;font-size:13px;line-height:1.6;display:block}.toc-panel .hot-list a:hover{color:var(--brand-blue-dark)}.author-card{border:1px solid var(--line-soft);border-radius:12px;box-shadow:0 1px 2px #0f172a08}.author-info p{color:var(--ink-500)}.prose{color:#26303f;font-size:16px;line-height:1.92}.prose p{margin:0 0 1.05em}.prose h2{letter-spacing:-.2px;border-bottom:1px solid #eef2f7;margin:1.8em 0 .7em;padding-bottom:8px;font-size:22px}.prose h2,.prose h3{color:var(--ink-900)}.prose h3{margin:1.5em 0 .6em;font-size:18.5px}.prose h4{color:var(--ink-900)}.prose a{color:var(--brand-blue-dark);text-underline-offset:3px;-webkit-text-decoration:underline #bfdbfe;text-decoration:underline #bfdbfe}.prose a:hover{-webkit-text-decoration-color:var(--brand-blue);text-decoration-color:var(--brand-blue)}.prose code{color:#0f172a;background:#f1f4f9;border:1px solid #e6ebf3;border-radius:5px;padding:2px 6px;font-size:.9em}.prose pre.hljs{border:1px solid #1e293b;border-radius:10px}.prose blockquote{border-left:3px solid var(--brand-blue);color:#475569;background:#f5f8ff;border-radius:0 8px 8px 0}.prose img{border-radius:10px}.prose th{background:#f6f8fb}.prose td,.prose th{border-color:#e8edf4}.site-footer{border-top:1px solid var(--line-soft);background:#fff;padding:32px 0}.footer-col a:hover{color:var(--brand-blue-dark)}.footer-bottom{border-top-color:#eef2f7}.menu-btn{display:none}.mobile-backdrop{z-index:44;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a52;position:fixed;inset:64px 0 0}.mobile-panel{z-index:46;inset:64px 0 auto}.mobile-links a{color:#374151;background:#f4f6f9}.mobile-panel .mobile-search input{background:#fff}html.dark .home-hero.tech-hero{background:radial-gradient(circle at 1px 1px,#60a5fa26 1px,#0000 0) 0 0/22px 22px,linear-gradient(135deg,#111827,#0f172a 60%,#101a2e);border-color:#1e293b;box-shadow:0 18px 44px #0000004d}html.dark .home-hero.tech-hero .hero-copy h1{color:#f8fafc}html.dark .home-hero.tech-hero .hero-copy h1 em{color:#93c5fd;background:linear-gradient(#0000 64%,#3b82f63d 0)}html.dark .home-hero.tech-hero .hero-copy p{color:#94a3b8}html.dark .home-hero.tech-hero .hero-eyebrow{color:#93c5fd;background:#2563eb21;border-color:#1e3a8a}html.dark .home-hero.tech-hero .hero-stats{color:#94a3b8}html.dark .home-hero.tech-hero .hero-stats span{border-left-color:#243044}html.dark .home-hero.tech-hero .hero-stats b{color:#f1f5f9}html.dark .hero-search{box-shadow:none;background:#0f172a;border-color:#243044}html.dark .hero-search input{color:#e2e8f0}html.dark .hero-search button{background:var(--brand-blue)}html.dark .hero-search button:hover{background:#3b82f6}html.dark body{background:#0b0f16}html.dark .site-header{background:#0b0f16e6;border-bottom-color:#1e2635}html.dark .main-nav a{color:#94a3b8}html.dark .main-nav a:hover{color:#e2e8f0;background:#151c28}html.dark .header-search{background:#131a25}html.dark .btn{color:#cbd5e1;background:#111823;border-color:#263141}html.dark .btn-primary{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}html.dark .article,html.dark .author-card,html.dark .category-card,html.dark .hot-topics,html.dark .mobile-panel,html.dark .panel,html.dark .post-card,html.dark .subscribe-card{background:#0f1520;border-color:#1e2836}html.dark .about-head b,html.dark .article h1,html.dark .category-head b,html.dark .panel-head h2,html.dark .panel-head h3,html.dark .post-body h3,html.dark .section-title h2,html.dark .subscribe-copy b{color:#e2e8f0}html.dark .hint{color:#64748b}html.dark .feed-tabs{border-bottom-color:#1e2836}html.dark .feed-tabs a{color:#94a3b8}html.dark .feed-tabs a:hover{color:#93c5fd;background:#151c28}html.dark .feed-tabs a.active{color:#93c5fd}html.dark .feed-tabs a.active:after{background:#3b82f6}html.dark .about-card p,html.dark .author-info p,html.dark .category-body>span,html.dark .post-body .summary{color:#94a3b8}html.dark .post-body .meta{color:#64748b;border-top-color:#1a2432}html.dark .meta-author{color:#cbd5e1}html.dark .category-card:hover,html.dark .post-card:hover{border-color:#2b4a80}html.dark .about-card{background:linear-gradient(160deg,#0f1520,#111b2e)}html.dark .about-stats div{background:#0b111b;border-color:#1e2836}html.dark .about-stats b{color:#f1f5f9}html.dark .subscribe-card{background:linear-gradient(135deg,#0f1a2e,#0d1524);border-color:#1e3a5f}html.dark .side-cats a,html.dark .tag-cloud a{color:#94a3b8;background:#141b26}html.dark .side-cats a:hover,html.dark .tag-cloud a:hover{color:#93c5fd;background:#17233a}html.dark .topic-row{border-bottom-color:#1a2432}html.dark .topic-row:hover{background:#131a25}html.dark .topic-title{color:#e2e8f0}html.dark .topic-rank{color:#94a3b8;background:#1a2330}html.dark .topic-rank.top{background:var(--brand-blue);color:#fff}html.dark .topic-cat{color:#93c5fd;background:#17233a}html.dark .topic-meta,html.dark .topic-stats{color:#64748b}html.dark .topic-new{color:#93c5fd;background:#17233a}html.dark .article-meta{color:#64748b;border-bottom-color:#1e2836}html.dark .article-meta .author{color:#cbd5e1}html.dark .article-nav{border-top-color:#1e2836}html.dark .prose{color:#cbd5e1}html.dark .prose h2,html.dark .prose h3,html.dark .prose h4{color:#f1f5f9;border-bottom-color:#1e2836}html.dark .prose a{color:#93c5fd;text-decoration-color:#1e3a8a}html.dark .prose code{color:#e2e8f0;background:#151c28;border-color:#263141}html.dark .prose blockquote{color:#94a3b8;background:#111a29;border-left-color:#3b82f6}html.dark .prose th{background:#131a25}html.dark .prose td,html.dark .prose th{border-color:#1e2836}html.dark .site-footer{background:#0b0f16;border-top-color:#1e2635}html.dark .footer-col a:hover{color:#93c5fd}html.dark .mobile-panel{border-bottom-color:#1e2836}html.dark .mobile-links a{color:#cbd5e1;background:#141b26}html.dark .mobile-panel .mobile-search input{color:#e2e8f0;background:#0b111b;border-color:#263141}@media (max-width:1080px){.hero-main{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:28px}.home-hero.tech-hero{padding:38px 34px}.hero-term pre{font-size:11.5px}}@media (max-width:1000px){.hero-main{grid-template-columns:1fr;gap:30px}.hero-term{max-width:620px}.category-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.home-hero.tech-hero{padding:30px 22px}.home-hero.tech-hero .hero-copy h1{font-size:31px}.home-hero.tech-hero .hero-stats{gap:0}.article{padding:24px 18px}.article h1{font-size:24px}.post-grid{grid-template-columns:1fr}.category-grid{gap:10px}.menu-btn{display:inline-flex}.toc-panel{position:static}}@media (max-width:700px){.header-inner{gap:10px}.logo-text span{display:none}.header-side{gap:6px}.header-register{display:none}}@media (max-width:520px){.container{padding:0 14px}.home-hero.tech-hero{border-radius:16px}.home-hero.tech-hero .hero-copy h1{letter-spacing:-.6px;font-size:27px}.hero-br{display:none}.hero-search{max-width:100%}.home-hero.tech-hero .hero-stats{flex-wrap:wrap;row-gap:10px}.home-hero.tech-hero .hero-stats span{padding:0 14px}.home-hero.tech-hero .hero-stats b{font-size:17px}.hero-term pre{padding:14px;font-size:10.5px}.hero-term .term-foot{font-size:10px}.category-grid{grid-template-columns:1fr}.mosaic-card:not(.main){aspect-ratio:16/9}.subscribe-card{flex-wrap:wrap}}@media (max-width:900px){.layout-main,.post-grid{grid-template-columns:minmax(0,1fr)}.layout-main>*,.post-body,.post-card,.post-cover{min-width:0}}@media (max-width:520px){.category-grid{grid-template-columns:minmax(0,1fr)}}.hero{background:linear-gradient(135deg,#f9fbff,#eef4ff);border:1px solid #e3e8f2;border-radius:14px;box-shadow:0 1px 2px #0f172a08,0 12px 30px #2563eb0d}.hero h1{color:var(--ink-900)}.hero p{color:var(--ink-500)}.inline-input{border-color:var(--line-soft);border-radius:8px}.inline-input:focus{border-color:#93b4f8;box-shadow:0 0 0 3px #2563eb14}.notice{color:#1e40af;background:#f5f8ff;border-color:#dbeafe}.admin-nav a.active,.admin-nav a:hover,.editor-toolbar button:hover{color:var(--brand-blue-dark);background:#eff6ff}.editor-toolbar button:hover{border-color:#93b4f8}html.dark .hero{background:linear-gradient(135deg,#121826,#0f172a);border-color:#1e293b}html.dark .hero h1{color:#f1f5f9}html.dark .hero p{color:#94a3b8}html.dark .inline-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #2563eb29}html.dark .notice{color:#93c5fd;background:#111a29;border-color:#1e3a5f}html.dark .admin-nav a.active,html.dark .admin-nav a:hover{color:#93c5fd;background:#17233a}html.dark .editor-toolbar button:hover{color:#93c5fd;background:#17233a;border-color:#2b4a80}.prose pre.hljs code{color:inherit;background:0 0;border:0;padding:0;font-size:13.5px}@media (max-width:520px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-thumb{aspect-ratio:16/9.4}.category-body{padding:10px 11px 11px}.category-head b{font-size:14px}.category-body>span{font-size:11px}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--brand-blue)}.reading-progress{background:linear-gradient(90deg,#60a5fa,#2563eb)}.back-top:hover{color:var(--brand-blue);border-color:#bfdbfe}@media (max-width:900px){.featured-mosaic{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);gap:12px;height:auto}.featured-mosaic .mosaic-card.main{aspect-ratio:16/10;grid-row:auto}.featured-mosaic .mosaic-card:not(.main){aspect-ratio:16/9}.featured-mosaic.single{height:auto}}.mosaic-overlay{background:linear-gradient(#02061700 8%,#02061761 38%,#020617d1 62%,#020617f2)}@media (min-width:600px) and (max-width:900px){.featured-mosaic{grid-template-rows:1fr 1fr;grid-template-columns:1.35fr 1fr;height:360px}.featured-mosaic .mosaic-card.main{aspect-ratio:auto;grid-row:span 2}.featured-mosaic .mosaic-card:not(.main){aspect-ratio:auto}}@media (max-width:900px){.toc-panel{display:none}}@media (max-width:520px){.article-nav{flex-direction:column;gap:6px}.article-nav span,.article-nav span:last-child{text-align:left!important}.prose pre.hljs,.prose pre.hljs code{white-space:pre-wrap;word-break:break-word}}.wqq-card{border-radius:16px;max-width:380px;padding:26px 22px 18px;box-shadow:0 20px 50px #0f121838}.wqq-title{margin:4px 18px 14px;line-height:1.5}.wqq-num{gap:10px;margin-bottom:16px;padding:12px}.wqq-num span{font-size:13px}.wqq-acts button{flex:1}@keyframes wqqIn{0%{opacity:0;transform:translateY(6px)scale(.985)}to{opacity:1;transform:none}}@media (max-width:480px){.wqq-card{padding:24px 16px 14px}.wqq-num strong{font-size:20px}}.wqq-card{max-width:440px}.wqq-body{text-align:left;align-items:flex-start;gap:16px;display:flex}.wqq-qr{flex:0 0 172px}.wqq-qr img{background:#fff;border:1px solid #eef1f5;border-radius:10px;width:172px;height:auto;display:block}.wqq-side{text-align:left;flex-direction:column;flex:1;gap:9px;min-width:0;display:flex}.wqq-side .wqq-num{text-align:left;background:#f4f6fa;border-radius:12px;margin:0;padding:10px 12px;display:block}.wqq-side .wqq-num span{color:#6b7280;margin-bottom:2px;font-size:11.5px;display:block}.wqq-side .wqq-num strong{letter-spacing:.5px;color:#171a1f;font-variant-numeric:tabular-nums;-webkit-user-select:all;user-select:all;word-break:break-all;font-size:19px;line-height:1.25;display:block}.wqq-side .wqq-close,.wqq-side .wqq-copy{cursor:pointer;border:1px solid #0000;border-radius:10px;width:100%;height:38px;font-size:13.5px;transition:background .15s,border-color .15s}.wqq-side .wqq-copy{color:#fff;background:#2563eb}.wqq-side .wqq-copy:hover{background:#1d4ed8}.wqq-side .wqq-close{color:#374151;background:#fff;border-color:#e5e7eb}.wqq-side .wqq-close:hover{background:#f9fafb}.wqq-side .wqq-live{color:#16a34a;min-height:16px;margin:0;font-size:11.5px}@media (max-width:480px){.wqq-card{max-width:360px;padding:22px 16px 14px}.wqq-body{flex-direction:column;gap:12px}.wqq-qr{flex:none;width:100%}.wqq-qr img{width:190px;margin:0 auto}.wqq-side .wqq-num strong{font-size:18px}}.wqq-qr-box{aspect-ratio:340/328;background:#f5f6f8;border:1px solid #eef1f5;border-radius:10px;width:100%;position:relative;overflow:hidden}.wqq-qr-box img{object-fit:contain;width:100%;height:100%;display:block}.wqq-qr-loading{color:#9ca3af;letter-spacing:.5px;place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.wqq-qr-box.is-ready .wqq-qr-loading{display:none}@media (max-width:480px){.wqq-qr{max-width:210px;margin:0 auto}.wqq-qr-cap{font-size:11px}.wqq-card{max-height:calc(100vh - 24px);padding:20px 16px 14px;overflow-y:auto}}.wqq-card{max-width:400px;padding:26px 20px 18px}.wqq-body{text-align:center;justify-items:center;gap:12px;display:grid}.wqq-qr{flex:none;width:200px;max-width:100%}.wqq-qr-cap{color:#6b7280;text-align:center;margin:8px 0 0;font-size:11.5px;line-height:1.5}.wqq-num{text-align:center;border-radius:12px;max-width:320px;margin:2px 0 0;padding:10px 12px;display:block}.wqq-num span{margin-bottom:2px;font-size:11.5px;line-height:1.4}.wqq-acts button{border-radius:10px;font-size:14px}@media (max-width:480px){.wqq-card{max-width:348px;padding:22px 16px 14px}.wqq-qr{width:196px}.wqq-num strong{font-size:19px}}.pricepill{isolation:isolate;white-space:nowrap;background:linear-gradient(#1c2d52,#0d1932) padding-box padding-box,linear-gradient(115deg,#f7e1a8,#b98b42 32%,#fcebc0 55%,#a07537 80%,#e9c98a) border-box;border:1px solid #0000;border-radius:999px;align-items:center;height:36px;padding:0 16px;text-decoration:none;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 14px #0a162e42,0 1px 2px #0a162e33,inset 0 1px #ffffff21}.pricepill:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 28%,#fff5d68c 46%,#ffffffd9 52%,#fff5d673 58%,#0000 72%);border-radius:999px;transition:transform .65s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:translate(-130%)}.pricepill:hover{transform:translateY(-2px)scale(1.015);box-shadow:0 10px 24px #0a162e6b,0 0 0 1px #f7e1a873,0 0 18px #e9c98a59,inset 0 1px #ffffff40}.pricepill:hover:after{transform:translate(130%)}.pricepill-t{letter-spacing:.03em;color:#f3f5fa;font-size:13.5px;font-weight:700}.pricepill:hover .pricepill-t{color:#fff}.pricepill-sep{background:linear-gradient(#f7e1a800,#f7e1a8bf,#f7e1a800);flex:none;width:1px;height:15px;margin:0 10px}.pricepill-p{letter-spacing:.01em;font-variant-numeric:tabular-nums;color:#0000;background:linear-gradient(#fff3d1,#f5cd7a 55%,#dda24a);-webkit-background-clip:text;background-clip:text;align-items:baseline;font-size:17px;font-weight:800;display:inline-flex}.pricepill-p small{margin-right:1px;font-size:.74em;font-weight:700}@media (max-width:900px){.home-topbar{padding:10px 0 0}.pricepill{height:34px;padding:0 14px}}.home-pill-left{margin:0 0 14px}@media (max-width:860px){.pricepill{display:none}}.home-topbar{padding:12px 0 0;display:flex}.home-topbar .pricepill{display:inline-flex}.wqq-mask{z-index:1000;background:#0f121873;justify-content:center;align-items:center;padding:20px;animation:wqqIn .18s ease-out;display:flex!important;position:fixed!important;inset:0!important}.wqq-card{text-align:center;background:#fff;border-radius:18px;width:100%;max-width:360px;max-height:none;padding:26px 22px 20px;display:block;position:relative;overflow:visible;box-shadow:0 24px 64px #0f12183d}.wqq-title{color:#171a1f;margin:0 0 16px;padding:0;font-size:17px;font-weight:700;line-height:1.45}.wqq-num{background:#f4f6fa;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;max-width:none;margin:0 0 16px;padding:14px 12px;display:flex}.wqq-num span{color:#6b7280;font-size:12px;line-height:1.2;display:block}.wqq-num strong{letter-spacing:1px;color:#171a1f;font-variant-numeric:tabular-nums;-webkit-user-select:all;user-select:all;font-size:22px;line-height:1.3;display:block}.wqq-acts{gap:10px;width:100%;max-width:none;margin:0;display:flex}.wqq-acts button{cursor:pointer;border:1px solid #0000;border-radius:12px;flex:1 1 0;min-width:0;height:42px;font-size:15px;transition:background .15s,border-color .15s,transform .12s}.wqq-acts button:active{transform:scale(.985)}.wqq-copy{color:#fff;background:#2563eb}.wqq-copy:hover{background:#1d4ed8}.wqq-close{color:#374151;background:#fff;border-color:#e5e7eb!important}.wqq-close:hover{background:#f9fafb}.wqq-x{color:#9ca3af;cursor:pointer;background:0 0;border:0;border-radius:8px;width:32px;height:32px;font-size:22px;line-height:1;position:absolute;top:10px;right:12px}.wqq-x:hover{color:#374151;background:#f3f4f6}.wqq-live{color:#16a34a;min-height:16px;margin:8px 0 0;font-size:12px}.wqq-acts button:focus-visible,.wqq-x:focus-visible{outline-offset:2px;outline:2px solid #2563eb}@media (max-width:480px){.wqq-card{max-width:340px;padding:24px 16px 18px}.wqq-num strong{font-size:20px}}@media (prefers-reduced-motion:reduce){.wqq-mask{animation:none}}.home-topbar{line-height:0}.home-topbar .pricepill{vertical-align:top}.home-topbar{justify-content:flex-end;align-items:center;margin:0;height:auto!important;padding:10px 22px 0!important;line-height:normal!important;display:flex!important}.home-topbar .pricepill{flex: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-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}