:root{color-scheme:light;--app-bg: #fcfcfc;--app-safe-area-top-bg: #fcfcfc;--app-safe-area-top-height: 0px;--app-safe-area-bottom-bg: #fcfcfc;--app-surface: #ffffff;--app-surface-solid: #ffffff;--app-resource-card-bg: #f3f6fa;--app-border: #E5E5EA;--app-border-strong: #D1D1D6;--app-text: #1D1D1F;--app-text-secondary: #86868B;--app-muted: #AEAEB2;--app-primary: #0071E3;--app-primary-hover: #0077ED;--app-primary-soft: #E8F4FD;--app-shadow-sm: 0 1px 4px rgba(0, 0, 0, .06), 0 2px 4px rgba(0, 0, 0, .04);--app-shadow-md: 0 4px 12px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04);--app-shadow-lg: 0 8px 24px rgba(0, 0, 0, .1), 0 4px 12px rgba(0, 0, 0, .06);--app-transition-fast: .15s ease;--app-transition-normal: .2s ease;--app-transition-slow: .35s ease;--app-hover-bg: rgba(0, 0, 0, .06);--app-focus-ring: 0 0 0 3px rgba(0, 113, 227, .22);--app-radius: 8px;--app-radius-sm: 4px;--app-radius-lg: 12px;--app-max-width: 1500px;--app-header-h: 48px;--app-bottom-nav-h: 56px;--app-bottom-inset: calc(var(--app-bottom-nav-h) + env(safe-area-inset-bottom, 0px));--app-pwa-top-compensation: 0px;--app-sidebar-w: 160px;--app-gap: 10px;--app-font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;--app-rich-text-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--app-font-size-xs: .75rem;--app-font-size-sm: .8125rem;--app-font-size-base: .875rem;--app-font-size-md: 1rem;--app-font-size-lg: 1.125rem;--app-font-size-xl: 1.25rem;--app-font-size-2xl: 1.5rem;--app-font-size-3xl: 1.875rem;--app-font-weight-normal: 400;--app-font-weight-medium: 500;--app-font-weight-semibold: 600;--app-font-weight-bold: 700;--app-line-height-tight: 1.2;--app-line-height-normal: 1.5;--app-line-height-relaxed: 1.7}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;background:#fcfcfc;overscroll-behavior-y:none;height:100%;touch-action:manipulation;-ms-touch-action:manipulation}body{min-height:100vh;min-height:100svh;font-family:var(--app-font-family);font-size:var(--app-font-size-base);line-height:var(--app-line-height-relaxed);color:var(--app-text);background:var(--app-bg);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;overflow-x:hidden}html,body,#root{scrollbar-color:var(--app-border-strong) transparent;scrollbar-width:thin}html::-webkit-scrollbar,body::-webkit-scrollbar,#root::-webkit-scrollbar{width:8px;height:8px}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,#root::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:var(--app-border-strong);background-clip:padding-box}body.app-boot{transition:none}body.app-boot--home{background:#fcfcfc}body.app-boot--home #root{min-height:0!important}.app-home>.ant-layout-content{flex:0 0 auto!important}#root:has(.app-home){min-height:0!important}#root:has(.app-home) .ant-layout-content{flex:1 1 auto!important}#root:has(.app-home) .ant-layout{min-height:100vh!important}body.app-boot--default{background:#fcfcfc}body:before,body:after{content:"";position:fixed;left:0;right:0;z-index:0}body:before{top:0;height:max(env(safe-area-inset-top,0px),var(--app-safe-area-top-height, 0px));background:var(--app-safe-area-top-bg)}body:after{bottom:0;height:env(safe-area-inset-bottom,0px);background:var(--app-safe-area-bottom-bg)}body:before,body:after{transition:none!important}a{color:inherit}:where(a,button,input,textarea,select,[role=button],[tabindex]):focus-visible{outline:none;box-shadow:var(--app-focus-ring)}img,video,iframe{max-width:100%}#root{min-height:100vh;min-height:100svh;position:relative;z-index:1}body.app-pwa-standalone{overflow:clip}body.app-pwa-standalone #root{min-height:100dvh;padding-top:calc(env(safe-area-inset-top,0px) + var(--app-pwa-top-compensation));box-sizing:border-box}body.app-pwa-standalone .app-header{padding-top:env(safe-area-inset-top,0px)!important;height:calc(var(--app-header-h) + env(safe-area-inset-top,0px))!important}@media (max-width: 767px){body.app-pwa-standalone .app-header{top:var(--app-pwa-top-compensation)!important}}.app-route-loading{display:flex;min-height:100svh;align-items:center;justify-content:center}.app-shell{max-width:var(--app-max-width);margin:0 auto;width:100%}.app-header{background:#ffffffb8!important;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.06);box-shadow:none;padding:0 12px!important;height:var(--app-header-h)!important;line-height:var(--app-header-h)!important;position:sticky;top:0;z-index:100;overflow:visible!important}.app-header:before{content:"";position:absolute;left:0;right:0;top:calc(-1*env(safe-area-inset-top,0px));height:env(safe-area-inset-top,0px);background:inherit;transition:none!important}.app-header--scroll-hide{position:fixed;left:0;right:0;top:0;transition:transform .22s ease;will-change:transform}.app-header--scroll-hide.app-header--hidden{transform:translateY(-100%);border-bottom:none!important;box-shadow:none!important}.app-header--scroll-hide.app-header--snap{transition:none!important}.app-detail-page{--detail-scroll-bottom: 96px;padding-top:var(--app-header-h);min-height:100vh;min-height:calc(100svh - env(safe-area-inset-top,0px))}.app-page-loading{min-height:100vh;min-height:calc(100svh - env(safe-area-inset-top,0px));background:#fcfcfc}.app-search-page{min-height:100vh;min-height:calc(100svh - env(safe-area-inset-top,0px))}@media (min-width: 768px){.app-search-page{padding-top:var(--app-header-h)}}.detail-ad-banner{border-radius:var(--app-radius);border:none;background:transparent;box-shadow:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.detail-scroll-fabs{position:fixed;right:max(16px,calc((100vw - var(--detail-content-width) + var(--detail-ad-width) + 18px) / 2 - 52px));bottom:var(--detail-scroll-bottom);display:flex;flex-direction:column;gap:6px;z-index:99}.detail-scroll-fab{width:36px;height:36px;padding:0;border:1px solid var(--app-border);border-radius:var(--app-radius);background:var(--app-surface);cursor:pointer;color:var(--app-text-secondary);display:flex;align-items:center;justify-content:center;line-height:0;box-shadow:none;transition:color .15s ease,border-color .15s ease,background .15s ease}.detail-scroll-fab:hover{color:var(--app-primary);border-color:#91caff;background:var(--app-primary-soft)}.detail-scroll-fab:active{background:#e6f4ff}.app-header-inner{display:flex;align-items:center;justify-content:space-between;height:var(--app-header-h);gap:12px}.app-header-title{margin:0!important;font-size:var(--app-font-size-md)!important;font-weight:600!important;line-height:1.2!important;white-space:nowrap}.app-page-content{padding:8px 12px 16px}.app-page-content--full{padding:0}.app-page-layout{display:flex;gap:var(--app-gap);align-items:flex-start}.app-page-layout--full{gap:0;width:100%;align-items:stretch}.app-header-inner--full{max-width:none;width:100%;padding:0 16px}.app-sidebar{width:var(--app-sidebar-w);flex-shrink:0;background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius);padding:4px;position:sticky;top:calc(var(--app-header-h) + 8px)}.app-sidebar--flush{border-radius:0;border-top:none;border-bottom:none;border-left:none;top:var(--app-header-h);min-height:calc(100vh - var(--app-header-h));padding:6px}.app-main{flex:1;min-width:0}.app-main--flush{padding:10px 12px 16px;flex:1;width:100%}.app-panel{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius)}.app-admin .ant-card,.app-admin .app-card,.app-admin .ant-modal .ant-modal-content,.app-admin .ant-table{border-radius:var(--app-radius)!important}.app-admin-table-compact .ant-table-thead>tr>th,.app-admin-table-compact .ant-table-tbody>tr>td{padding:8px 10px!important;font-size:var(--app-font-size-sm)}.app-admin-table-compact .ant-table-thead>tr>th{white-space:nowrap}.app-admin-list{border:1px solid var(--app-border);border-radius:var(--app-radius);overflow:hidden;background:var(--app-surface)}.app-admin-block{padding:12px;border-radius:var(--app-radius);border:1px solid var(--app-border);background:#fafafa}.app-admin-block-inner{padding:8px 10px;border-radius:var(--app-radius-sm);border:1px solid var(--app-border);background:var(--app-surface)}.app-card{background:var(--app-surface-solid);border:1px solid var(--app-border);border-radius:var(--app-radius);box-shadow:none;transition:box-shadow .25s ease,transform .25s ease}.app-card-compact{border-radius:var(--app-radius)}.app-resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--app-gap)}.app-resource-grid--desktop{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.app-resource-grid--mobile{grid-template-columns:1fr;padding:8px 12px 16px}.app-section-title{font-size:var(--app-font-size-base);font-weight:600;color:var(--app-text);letter-spacing:.5px}.app-subtitle{color:var(--app-text-secondary);font-size:var(--app-font-size-xs)}.app-muted{color:var(--app-muted)}.app-empty-state{text-align:center;padding:32px 16px;color:var(--app-muted);font-size:var(--app-font-size-sm)}.site-sidebar-menu.ant-menu,.site-sidebar-menu.ant-menu-inline,.site-sidebar-menu.ant-menu-root{border-inline-end:none!important;background:transparent!important;padding:0!important;width:100%}.site-sidebar-menu .ant-menu-item{margin:2px 0!important;margin-inline:0!important;width:100%!important;height:32px!important;line-height:32px!important;border-radius:var(--app-radius-sm)!important;padding-inline:6px!important;font-size:var(--app-font-size-sm)!important;display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important}.site-sidebar-menu .ant-menu-item:after{display:none!important}.site-sidebar-menu .ant-menu-item .ant-menu-item-icon{flex-shrink:0;margin-inline-end:6px!important;min-width:14px;font-size:var(--app-font-size-base)!important}.site-sidebar-menu .ant-menu-item .ant-menu-title-content{flex:0 1 auto!important;margin-inline:0!important;overflow:hidden;text-overflow:ellipsis}.site-sidebar-menu .ant-menu-item .anticon{font-size:var(--app-font-size-base)!important}.content-render{font-family:var(--app-rich-text-font-family);font-size:var(--app-font-size-base);line-height:1.7;color:var(--app-text);white-space:break-spaces;overflow-wrap:break-word}.content-render p{margin:.4em 0}.content-render p:empty,.content-render p>br:only-child{min-height:1em}.content-render img{max-width:100%;height:auto;border-radius:var(--app-radius);margin:.25em 0;cursor:pointer}.content-render h1,.content-render h2,.content-render h3{margin:.9em 0 .4em;color:var(--app-text);line-height:1.3}.content-render a{color:var(--app-primary);text-decoration:none}.content-render a:hover{text-decoration:none}.content-render ul,.content-render ol{padding-left:1.4em}.content-render blockquote{margin:.6em 0;padding:.6em .8em;border-left:3px solid var(--app-primary);background:#fafafa;color:var(--app-text-secondary)}.content-render video{margin:.25em 0;border-radius:var(--app-radius)}.content-render .app-download-card{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:.5em 0;padding:12px 14px;background:var(--app-primary-soft);border-radius:var(--app-radius-lg);white-space:normal}.content-render .app-download-card__main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:140px}.content-render .app-download-card__title{font-size:var(--app-font-size-sm);font-weight:600;color:var(--app-text);line-height:1.4}.content-render .app-download-card__url{font-size:12px;color:var(--app-text-secondary, #86868B);line-height:1.4;overflow-wrap:anywhere}.content-render .app-download-card__code{display:inline-flex;align-items:center;gap:6px;font-size:var(--app-font-size-sm);color:var(--app-text-secondary, #6E6E73)}.content-render .app-download-card__code-value{font-weight:700;color:var(--app-primary);font-size:14px;letter-spacing:.5px}.content-render .app-download-card__copy{border:none;cursor:pointer;padding:3px 10px;border-radius:999px;font-size:12px;line-height:1.5;background:#0071e31a;color:var(--app-primary);transition:background .15s ease;min-width:58px;text-align:center;flex-shrink:0}.content-render .app-download-card__copy:hover{background:#0071e32e}.content-render .app-download-card__btn{display:inline-flex;align-items:center;padding:3px 12px;border-radius:999px;background:var(--app-primary);color:#fff!important;font-size:12px;font-weight:500;line-height:1.5;text-decoration:none;transition:opacity .15s ease;flex-shrink:0}.content-render .app-download-card__btn:hover{opacity:.88;text-decoration:none}.content-render a[href^="blob:"],.content-render a[href^="asset://file_"]{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--app-primary-soft);border:1px solid #91caff;border-radius:var(--app-radius);color:var(--app-primary);text-decoration:none;font-size:var(--app-font-size-sm);margin:2px 0;cursor:pointer}.content-render a[href^="blob:"]:hover,.content-render a[href^="asset://file_"]:hover{background:#bae0ff}.content-render a[href^="blob:"]:before,.content-render a[href^="asset://file_"]:before{content:"🔗";font-size:var(--app-font-size-base)}.app-rich-editor{border:1px solid var(--app-border);border-radius:var(--app-radius);overflow:visible;background:var(--app-surface)}.app-rich-editor__toolbar{padding:10px 12px;border-bottom:1px solid var(--app-border);background:#f8fafc;position:sticky;top:var(--app-header-h, 48px);z-index:50;border-radius:var(--app-radius) var(--app-radius) 0 0}.app-rich-editor__toolbar-mobile{display:flex;flex-direction:column;gap:6px}.app-rich-editor__toolbar-row{display:flex;flex-wrap:nowrap;align-items:center;gap:4px}.app-rich-editor__toolbar-sep{display:inline-block;width:1px;height:16px;background:var(--app-border);margin:0 2px;flex-shrink:0}@media (max-width: 767px){.app-home-category-preview__tab-list{overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap!important;touch-action:pan-x}.app-home-category-preview__tab-list::-webkit-scrollbar{display:none}.app-rich-editor__toolbar{padding:8px;position:static}.app-rich-editor__toolbar-mobile .app-rich-editor__color-picker{min-width:90px}}.app-rich-editor__toolbar .ant-btn{border-radius:var(--app-radius)!important}.app-rich-editor__toolbar .ant-btn-icon-only{width:30px}.app-rich-editor__toolbar .ant-select{min-width:0}.app-rich-editor__color-picker{min-width:100px;max-width:108px}.app-rich-editor__color-picker.ant-color-picker-trigger{justify-content:space-between;padding-inline:8px 10px;border-radius:var(--app-radius)!important}.app-rich-editor__color-picker .ant-color-picker-trigger-text{font-size:var(--app-font-size-xs);font-variant-numeric:tabular-nums}.app-rich-editor__content{background:var(--app-surface)}.app-rich-editor__prosemirror{min-height:var(--app-rich-editor-min-height, 300px);padding:14px 16px;outline:none;color:var(--app-text);font-family:var(--app-rich-text-font-family);font-size:var(--app-font-size-base);line-height:1.75;white-space:break-spaces}.app-rich-editor__prosemirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--app-muted);height:0}.app-rich-editor__prosemirror h1,.app-rich-editor__prosemirror h2,.app-rich-editor__prosemirror h3{margin:.85em 0 .35em;line-height:1.3;color:var(--app-text)}.app-rich-editor__prosemirror h1{font-size:1.65rem}.app-rich-editor__prosemirror h2{font-size:1.35rem}.app-rich-editor__prosemirror h3{font-size:1.15rem}.app-rich-editor__prosemirror p{margin:.45em 0}.app-rich-editor__prosemirror ul,.app-rich-editor__prosemirror ol{padding-left:1.45em}.app-rich-editor__prosemirror blockquote{margin:.8em 0;padding:.65em .9em;border-left:3px solid var(--app-primary);background:#f8fbff;color:var(--app-text-secondary)}.app-rich-editor__prosemirror hr{margin:1em 0;border:none;border-top:1px solid var(--app-border-strong)}.app-rich-editor__prosemirror code{padding:.12em .35em;border-radius:var(--app-radius-sm);background:var(--app-primary-soft);color:var(--app-primary);font-size:.92em}.app-rich-editor__prosemirror pre{margin:.8em 0;padding:12px 14px;border-radius:var(--app-radius);background:#0f172a;color:#e2e8f0;overflow-x:auto;white-space:pre-wrap}.app-rich-editor__prosemirror pre code{padding:0;background:transparent;color:inherit}.app-rich-editor__prosemirror span[style*=font-size]{line-height:1.4}.app-rich-editor__prosemirror span[style*=font-family]{letter-spacing:.01em}.app-rich-editor__prosemirror a{color:inherit;text-decoration:none}.app-rich-editor__prosemirror a:hover{text-decoration:none}.app-rich-editor__prosemirror img{display:block;max-width:100%;height:auto;margin:.55rem 0;border-radius:var(--app-radius)}.app-rich-editor__prosemirror img.ProseMirror-selectednode{outline:2px solid var(--app-primary);outline-offset:2px}.app-rich-editor__prompt-desc{margin-bottom:10px;color:var(--app-text-secondary);font-size:var(--app-font-size-xs);line-height:1.65}.app-rich-editor__gallery-assets{border-top:1px solid var(--app-border);padding:12px 14px 14px;background:#fafcff}.app-rich-editor__gallery-assets-title{font-size:var(--app-font-size-sm);font-weight:600;color:var(--app-text);margin-bottom:10px}.app-rich-editor__gallery-assets-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.app-rich-editor__gallery-assets-item{position:relative;aspect-ratio:16 / 9;border:1px solid var(--app-border);border-radius:var(--app-radius);overflow:hidden;background:#f5f5f7}.app-rich-editor__gallery-assets-item:hover{border-color:var(--app-primary)}.app-rich-editor__gallery-assets-grip{position:absolute;top:4px;left:4px;z-index:1;padding:2px;border-radius:4px;background:#00000073;display:flex;align-items:center;justify-content:center;cursor:grab;opacity:0;transition:opacity .15s ease}.app-rich-editor__gallery-assets-item:hover .app-rich-editor__gallery-assets-grip{opacity:1}.app-rich-editor__gallery-assets-thumb{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.app-rich-editor__gallery-assets-del{position:absolute;top:6px;right:6px;width:22px;height:22px;border:none;border-radius:50%;background:#0000008c;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;z-index:1}.app-rich-editor__gallery-assets-del svg{display:block}.app-rich-editor__gallery-assets-empty{font-size:var(--app-font-size-xs);color:var(--app-muted);line-height:1.7}.app-detail-gallery{position:relative;margin-bottom:2px}.app-detail-gallery__thumbs{display:flex;gap:10px;overflow-x:auto;min-height:103px;padding:0 0 4px;scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory}.app-detail-gallery__thumbs::-webkit-scrollbar{display:none}.app-detail-gallery__thumb{flex:0 0 auto;width:78px;border:1px solid transparent;border-radius:var(--app-radius);padding:0;background:transparent;overflow:hidden;cursor:pointer;outline:none;box-shadow:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;scroll-snap-align:start}.app-detail-gallery__thumb:focus,.app-detail-gallery__thumb:focus-visible,.app-detail-gallery__thumb:active{outline:none;box-shadow:none}.app-detail-gallery__thumb--large{width:176px;aspect-ratio:16 / 9}.app-detail-gallery__thumb-image{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;background:#f8fafc}.app-detail-gallery__rail-nav{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;border-radius:50%;background:#00000073;color:#fff;font-size:14px;cursor:pointer;z-index:2;opacity:0;transition:opacity .2s ease,background .2s ease;display:flex;align-items:center;justify-content:center}.app-detail-gallery:hover .app-detail-gallery__rail-nav{opacity:1}.app-detail-gallery__rail-nav:hover{background:#000000a6}.app-detail-gallery__rail-nav--prev{left:8px}.app-detail-gallery__rail-nav--next{right:8px}.app-image-viewer{position:fixed;inset:0;z-index:1200;padding:18px}.app-image-viewer__dialog{width:min(100%,1180px);max-height:100%;display:flex;flex-direction:column;gap:12px;position:relative}.app-image-viewer__topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#0f172acc}.app-image-viewer__counter{position:absolute;left:50%;bottom:20px;transform:translate(-50%);font-size:var(--app-font-size-sm);color:#0f172ac7;background:#fff9;border-radius:999px;padding:6px 14px;z-index:2}.app-image-viewer__close{width:40px;height:40px;border:none;border-radius:50%;background:#0f172a0f;color:var(--app-text);font-size:26px;line-height:1;cursor:pointer;position:absolute;top:16px;right:16px;z-index:2}.app-image-viewer__stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;touch-action:auto;z-index:1;background:#f8fafce0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.app-image-viewer__carousel{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-x:none;scrollbar-width:none;touch-action:pan-x}.app-image-viewer__carousel::-webkit-scrollbar{display:none;width:0;height:0}.app-image-viewer__carousel.is-zoomed{overflow:hidden;touch-action:none}.app-image-viewer__slide{position:relative;display:flex;flex:0 0 100%;align-items:center;justify-content:center;width:100%;height:100%;scroll-snap-align:center;scroll-snap-stop:always}.app-image-viewer__preview-image{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-image-viewer__shell{position:relative;width:0;height:0;display:flex;align-items:center;justify-content:center}.app-image-viewer__image{display:block;max-width:100%;max-height:72vh;-o-object-fit:contain;object-fit:contain;border-radius:var(--app-radius);transform-origin:center center;transition:transform .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-image-viewer__shell.is-draggable{cursor:grab}.app-image-viewer__shell.is-dragging{cursor:grabbing}.app-image-viewer__hint{position:absolute;left:50%;bottom:56px;transform:translate(-50%);background:#ffffffb8;color:#0f172ab8;font-size:var(--app-font-size-xs);line-height:1;border-radius:999px;padding:6px 12px;z-index:2}.app-image-viewer__hint.is-hidden{display:none}.app-image-viewer__nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:84px;border:none;border-radius:0;background:transparent;color:var(--app-text);font-size:34px;line-height:1;cursor:pointer;z-index:3}.app-image-viewer__nav--prev{left:max(14px,2vw)}.app-image-viewer__nav--next{right:max(14px,2vw)}@media (max-width: 767px){.content-render .app-download-card{display:grid;grid-template-columns:minmax(0,1fr) auto;-moz-column-gap:10px;column-gap:10px;row-gap:4px;padding:10px 12px}.content-render .app-download-card__main{display:contents}.content-render .app-download-card__title{grid-column:1 / -1}.content-render .app-download-card__url{grid-column:1 / -1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.content-render .app-download-card__code{grid-column:1;align-self:center}.content-render .app-download-card__btn{grid-column:2;justify-self:end;align-self:center}.content-render .app-download-card--no-code .app-download-card__url{grid-column:1;grid-row:2;min-width:0}.content-render .app-download-card--no-code .app-download-card__btn{grid-column:2;grid-row:2}}.resource-detail-layout{--detail-ad-width: 280px;--detail-content-width: 920px;--detail-sticky-top: 56px;display:flex;justify-content:center;align-items:flex-start;gap:18px;width:100%;max-width:min(100%,calc(var(--detail-content-width) + var(--detail-ad-width) + 18px));margin:0 auto}.resource-detail-layout .resource-detail-main{width:min(100%,var(--detail-content-width));min-width:0;flex-shrink:0}.resource-detail-layout .ad-rail--right{width:calc(var(--detail-ad-width));flex-shrink:0}.resource-detail-layout .ad-column--right{position:sticky;top:var(--detail-sticky-top);display:flex;flex-direction:column;gap:10px;width:100%}@media (max-width: 991px){.resource-detail-layout{max-width:100%}.resource-detail-layout .ad-rail--right{display:none}}:root{--app-bg: #fcfcfc;--app-surface: #FFFFFF;--app-surface-solid: #FFFFFF;--app-surface-soft: #F5F5F7;--app-surface-dark: #1D1D1F;--app-surface-dark-2: #2D2D2F;--app-border: #E5E5EA;--app-border-strong: #D1D1D6;--app-text: #1D1D1F;--app-text-secondary: #86868B;--app-muted: #AEAEB2;--app-primary: #0071E3;--app-primary-soft: #E8F4FD;--app-shadow-sm: 0 1px 4px rgba(0, 0, 0, .06), 0 2px 4px rgba(0, 0, 0, .04);--app-shadow-md: 0 4px 12px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04);--app-shadow-lg: 0 8px 24px rgba(0, 0, 0, .1), 0 4px 12px rgba(0, 0, 0, .06);--app-transition-fast: .15s ease;--app-transition-normal: .2s ease;--app-transition-slow: .35s ease;--app-hover-bg: rgba(0, 0, 0, .06);--app-focus-ring: 0 0 0 2px rgba(0, 113, 227, .2);--app-radius: 8px;--app-radius-sm: 4px;--app-radius-rect: 0px;--app-max-width: 1540px;--app-header-h: 56px;--app-sidebar-w: 220px;--app-gap: 18px;--app-font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;--app-font-size-xs: .75rem;--app-font-size-sm: .8125rem;--app-font-size-base: .875rem;--app-font-size-md: 1rem;--app-font-size-lg: 1.125rem;--app-font-size-xl: 1.25rem;--app-font-size-2xl: 1.5rem;--app-font-size-3xl: 1.875rem;--app-font-weight-normal: 400;--app-font-weight-medium: 500;--app-font-weight-semibold: 600;--app-font-weight-bold: 700;--app-line-height-tight: 1.2;--app-line-height-normal: 1.5;--app-line-height-relaxed: 1.7}body{background:var(--app-bg)}.app-header{border-bottom:1px solid rgba(0,0,0,.05);box-shadow:0 1px 3px #0000000a;backdrop-filter:saturate(180%) blur(20px)}.app-header--hero .ant-btn,.app-header--hero .ant-btn-text,.app-header--hero .ant-btn-link,.app-header--hero .app-nav-link{color:#ffffffdb!important;transition:none!important}.app-header--hero .ant-btn:hover,.app-header--hero .ant-btn-text:hover,.app-header--hero .ant-btn-link:hover,.app-header--hero .app-nav-link:hover{color:#fff!important;background:#ffffff14!important}.app-admin-header .ant-btn,.app-admin-header .ant-btn-text{color:var(--app-text)!important}.app-admin-header .ant-btn:hover{background:#f5f5f5!important}.app-header .ant-btn-text,.app-header .app-nav-link{color:var(--app-text-secondary)}.app-nav-link{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:inherit;line-height:1.5;cursor:pointer;background:transparent;border:none;border-radius:var(--app-radius);text-decoration:none;color:inherit}.app-nav-link:hover{background:var(--app-hover-bg)}.app-admin .app-header{box-shadow:none!important}.app-header-title{color:var(--app-text-secondary)!important}.app-header--hero .app-header-title{color:#fff!important}.app-header-inline-search.ant-input-search,.app-header-inline-search.ant-input-search:hover,.app-header-inline-search.ant-input-search:focus,.app-header-inline-search.ant-input-search:focus-within,.app-header-inline-search.ant-input-search .ant-input-group-wrapper,.app-header-inline-search.ant-input-search .ant-input-group-wrapper:hover,.app-header-inline-search.ant-input-search .ant-input-group-wrapper:focus,.app-header-inline-search.ant-input-search .ant-input-group-wrapper:focus-within,.app-header-inline-search .ant-input-group,.app-header-inline-search .ant-input-group:hover,.app-header-inline-search .ant-input-group:focus,.app-header-inline-search .ant-input-group:focus-within,.app-header-inline-search .ant-input-group-addon,.app-header-inline-search .ant-input-group-addon:hover,.app-header-inline-search .ant-input-group-addon:focus,.app-header-inline-search .ant-input-group-addon:active,.app-header-inline-search .ant-input-group-addon:focus-visible,.app-header-inline-search .ant-input-group-addon .ant-btn,.app-header-inline-search .ant-input-group-addon .ant-btn:hover,.app-header-inline-search .ant-input-group-addon .ant-btn:focus,.app-header-inline-search .ant-input-group-addon .ant-btn:active,.app-header-inline-search .ant-input-group-addon .ant-btn:focus-visible,.app-header-inline-search .ant-input-search-button,.app-header-inline-search .ant-input-search-button:hover,.app-header-inline-search .ant-input-search-button:focus,.app-header-inline-search .ant-input-search-button:active,.app-header-inline-search .ant-input-search-button:focus-visible,.app-header-inline-search .ant-input-affix-wrapper,.app-header-inline-search .ant-input-affix-wrapper:hover,.app-header-inline-search .ant-input-affix-wrapper:focus,.app-header-inline-search .ant-input-affix-wrapper-focused,.app-header-inline-search .ant-input-affix-wrapper:focus-within,.app-header-inline-search .ant-input-affix-wrapper-status-error,.app-header-inline-search .ant-input-affix-wrapper-status-warning{box-shadow:none!important;outline:none!important}.app-header-inline-search.ant-input-search{width:clamp(198px,16vw,228px)}.app-header-inline-search .ant-input-group{display:flex!important;align-items:stretch!important;width:100%;height:32px;border:1px solid var(--app-border)!important;border-radius:var(--app-radius)!important;background:#fff!important;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease}.app-header-inline-search.ant-input-search:focus-within .ant-input-group,.app-header-inline-search .ant-input-group:focus-within{border-color:#4f84e8!important;box-shadow:0 0 0 2px #4f84e824!important}.app-header-inline-search .ant-input{height:100%!important;padding:0 10px!important;border:none!important;border-radius:0!important;background:transparent!important;color:var(--app-text-secondary)!important;font-size:var(--app-font-size-sm)!important;line-height:30px!important;box-shadow:none!important}.app-header-inline-search .ant-input-affix-wrapper{display:flex!important;align-items:center!important;height:100%!important;padding:0 10px!important;border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.app-header-inline-search .ant-input-affix-wrapper>input.ant-input{padding:0!important;line-height:30px!important}.app-header-inline-search .ant-input-suffix,.app-header-inline-search .ant-input-clear-icon{color:var(--app-muted)!important}.app-header-inline-search .ant-input-group-addon{padding:0!important;border:none!important;background:transparent!important}.app-header-inline-search .ant-input-group-addon:before{display:none!important}.app-header-inline-search .ant-input-search-button,.app-header-inline-search .ant-input-group-addon .ant-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:34px!important;min-width:34px!important;height:100%!important;padding:0!important;border:none!important;border-radius:0!important;background:transparent!important;color:var(--app-text-secondary)!important;font-size:var(--app-font-size-base)!important}.app-header-inline-search .ant-input-search-button:hover,.app-header-inline-search .ant-input-group-addon .ant-btn:hover{color:var(--app-text-secondary)!important}.app-header .ant-btn,.app-header .ant-btn-text,.app-header .ant-btn-link{color:var(--app-text-secondary)}.app-header .ant-btn-text:hover,.app-header .ant-btn-text:active,.app-header .ant-btn-text:focus{color:var(--app-text-secondary);background:var(--app-hover-bg)}.app-header-inner,.app-header-inner--full{max-width:var(--app-max-width);margin:0 auto;padding:0 12px}.app-site-brand{display:inline-flex;align-items:center;gap:10px;color:var(--app-text-secondary);font-size:var(--app-font-size-base);font-weight:700;letter-spacing:.02em;white-space:nowrap;flex:0 0 auto}.app-site-brand-dot{width:10px;height:10px;border-radius:999px;background:linear-gradient(135deg,#60a5fa,#38bdf8);box-shadow:0 0 0 5px #60a5fa29}.app-top-nav{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;flex:1 1 auto;justify-content:center}.app-top-nav-item{display:inline-flex;align-items:center;height:32px;padding:0 12px;border:none;border-radius:var(--app-radius);background:transparent;color:var(--app-text-secondary);font-size:var(--app-font-size-sm);font-weight:400;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;font-family:inherit;transition:color .18s ease,background .18s ease}.app-top-nav-item--directory{display:inline-flex;align-items:center;gap:6px;padding-top:0;padding-bottom:0}.app-top-nav-item:hover,.app-top-nav-item.is-active{color:var(--app-text);background:var(--app-hover-bg)}.app-header-actions{width:228px;min-width:228px;flex:0 0 228px;display:flex;align-items:center;justify-content:flex-end}.app-header-inline-search{width:clamp(198px,16vw,228px)}.app-directory-menu .ant-dropdown-menu{min-width:180px;padding:6px;border-radius:var(--app-radius);border:1px solid rgba(226,232,240,.95);box-shadow:var(--app-shadow-md)}.app-directory-menu .ant-dropdown-menu-item{min-height:36px;border-radius:var(--app-radius);display:flex;align-items:center;font-size:var(--app-font-size-sm)}.app-directory-menu .ant-dropdown-menu-item a{display:block;width:100%;color:inherit;text-decoration:none}.app-header-searchbar{border-top:1px solid rgba(226,232,240,.72);background:#fffffff5}.app-header-searchbar__inner{padding:10px 12px 12px}.app-header-searchbar .ant-input-search,.app-header-searchbar .ant-input-search .ant-input,.app-header-searchbar .ant-input-search .ant-input-group-addon .ant-btn{border-radius:var(--app-radius)!important}.app-page-content{padding:18px 12px 32px}.app-card,.app-panel{border:1px solid rgba(0,0,0,.06);box-shadow:var(--app-shadow-sm)}.app-home-shell{display:block;padding:0 0 48px;max-width:var(--app-max-width)!important;width:100%}.app-home-footer{padding:6px 0 18px}.app-home-footer__inner{max-width:var(--app-max-width)!important}.app-home-main{flex:1;min-width:0}.app-home-loading{min-height:50vh;display:flex;align-items:center;justify-content:center;padding:28px 0 10px}.app-home-main--full{width:100%}.home-announcement-bar{display:flex;align-items:center;gap:10px;padding:8px 16px;border-bottom:1px solid rgba(226,232,240,.95);background:#fffffff0;overflow:hidden;width:100%}.home-announcement-bar__badge{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border-radius:var(--app-radius);background:#303643;color:#fff;font-size:11px;flex-shrink:0}.home-announcement-bar__track{flex:1;min-width:0;overflow:hidden}.home-announcement-bar__marquee{display:inline-flex;align-items:center;gap:24px;white-space:nowrap;will-change:transform}.home-announcement-bar__item{display:inline;color:var(--app-text-secondary);font-size:var(--app-font-size-sm);line-height:1.4;white-space:nowrap}.home-announcement-bar__item a{color:var(--app-text-secondary);text-decoration:none}.home-announcement-bar__item a:hover{color:var(--app-primary)}.home-announcement-bar__sep{color:var(--app-muted)}.app-home-carousel-row{display:flex;gap:14px;margin-top:8px;margin-bottom:24px;align-items:flex-start;width:100%}.app-home-carousel-row>.app-home-side-section{flex:1;min-width:0;width:auto}.app-home-carousel-row__main{flex:3;min-width:0}.app-home-carousel-row__side{flex:2;min-width:0;display:flex}.app-home-side-section{width:100%;display:flex;flex-direction:column;margin-top:8px}.app-home-side-section__title{display:inline-flex;align-items:center;gap:4px;font-size:var(--app-font-size-base);font-weight:700;color:var(--app-text);margin-bottom:10px;padding-left:10px;border-bottom:none;flex-shrink:0}.app-home-side-section__list{display:flex;flex-direction:column;gap:6px;flex:1}.app-home-side-section__item{display:block;padding:6px 8px;border-radius:var(--app-radius);text-decoration:none;transition:background .16s ease}.app-home-side-section__item:hover{background:var(--app-surface-soft)}.app-home-side-section__item-title{font-size:var(--app-font-size-sm);font-weight:500;color:var(--app-text);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-home-side-section__item-meta{font-size:11px;color:var(--app-text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-home-side-card{display:flex;gap:10px;padding:8px 10px;border-radius:var(--app-radius);text-decoration:none;transition:background .16s ease;align-items:center}.app-home-side-card:hover{background:var(--app-primary-soft)}@keyframes app-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.app-shimmer{background:linear-gradient(90deg,var(--app-border) 25%,#f0f1f2 50%,var(--app-border) 75%);background-size:200% 100%;animation:app-shimmer 1.5s ease-in-out infinite}.app-home-side-card__thumb{width:80px;height:45px;border-radius:var(--app-radius);-o-object-fit:cover;object-fit:cover;flex-shrink:0;background:linear-gradient(90deg,#e8ecf0 25%,#f0f4f8,#e8ecf0 75%);background-size:200% 100%;animation:app-shimmer 1.5s ease-in-out infinite}.app-home-side-card__thumb--empty{background:transparent;animation:none}.app-cover-placeholder{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%;height:100%;color:#1f446c8f;background:radial-gradient(circle at 88% 14%,rgba(0,113,227,.16) 0 1px,transparent 1.5px),linear-gradient(145deg,#f3f7fb,#e1eaf4);box-sizing:border-box}.app-cover-placeholder:before{content:"";position:absolute;z-index:-1;width:72%;aspect-ratio:1.45;top:-46%;right:-22%;border:1px solid rgba(0,113,227,.14);border-radius:50%;transform:rotate(-18deg);box-shadow:0 0 0 16px #0071e309,0 0 0 32px #0071e307}.app-cover-placeholder:after{content:"";position:absolute;z-index:-1;inset:0;opacity:.52;background:repeating-linear-gradient(135deg,transparent 0 15px,rgba(255,255,255,.2) 15px 16px,transparent 16px 32px);pointer-events:none}.app-cover-placeholder__mark{display:inline-flex;position:relative;z-index:1;align-items:center;justify-content:center;min-width:38px;max-width:76%;height:34px;padding:0 10px;overflow:hidden;color:#1f446c94;background:#ffffff75;border:1px solid rgba(0,113,227,.16);border-radius:8px;box-shadow:0 5px 14px #24486e14;font-size:18px;font-weight:700;letter-spacing:.08em;line-height:1;text-overflow:ellipsis;white-space:nowrap}.app-home-side-card__thumb--empty .app-cover-placeholder{border:0;border-radius:inherit}.app-home-side-card__thumb--empty .app-cover-placeholder__mark,.app-resource-list__cover--empty .app-cover-placeholder__mark{min-width:24px;height:22px;padding:0 5px;border-radius:5px;font-size:11px;letter-spacing:.04em}.app-home-side-card__body{flex:1;min-width:0;overflow:hidden}.app-home-side-card__title{font-size:var(--app-font-size-sm);font-weight:500;color:var(--app-text);line-height:1.35;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}.app-home-side-card__meta{font-size:11px;color:var(--app-muted);margin-top:4px;display:flex;align-items:center;gap:6px}.home-category-carousel{margin-bottom:40px}.home-carousel{margin-top:8px;margin-bottom:24px}.home-carousel__viewport,.home-carousel__slide-wrap{position:relative}.home-carousel__slide{position:relative;display:block;width:100%;aspect-ratio:16 / 9;max-height:360px;border-radius:var(--app-radius);overflow:hidden;text-decoration:none;cursor:pointer}.home-carousel__image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.home-carousel__skeleton{width:100%;height:100%;background:linear-gradient(90deg,var(--app-border) 25%,#f0f1f2 50%,var(--app-border) 75%);background-size:200% 100%;animation:app-shimmer 1.5s ease-in-out infinite}.home-carousel--hero .home-carousel-hero__image .home-carousel__skeleton{background:linear-gradient(90deg,#ffffff0f 25%,#ffffff1f,#ffffff0f 75%);background-size:200% 100%;animation:app-shimmer 1.5s ease-in-out infinite}.home-carousel__overlay{position:absolute;inset:0;background:linear-gradient(180deg,#0f172a05 36%,#0f172ab8);display:flex;flex-direction:column;justify-content:flex-end;padding:20px}.home-carousel__badge{position:absolute;top:12px;left:12px;padding:2px 8px;border-radius:4px;background:#ef4444;color:#fff;font-size:11px;font-weight:600;line-height:1.5}.home-carousel--hero .home-carousel__badge{inset:auto auto 70px 18px;z-index:10}.home-carousel__info{max-width:70%}.home-carousel__title{color:#fff;font-size:22px;font-weight:700;line-height:1.25;margin-bottom:6px;text-shadow:0 2px 8px rgba(0,0,0,.3)}.home-carousel__desc{color:#ffffffd9;font-size:var(--app-font-size-base);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 4px rgba(0,0,0,.2)}.home-carousel__progress{position:absolute;bottom:0;left:0;height:3px;background:var(--app-primary);border-radius:0 2px 2px 0;z-index:2;animation:homeCarouselProgress 5s linear}.home-carousel:hover .home-carousel__progress{animation-play-state:paused}@keyframes homeCarouselProgress{0%{width:0%}to{width:100%}}.home-carousel__control{position:absolute;top:50%;z-index:3;width:40px;height:40px;padding:0;border:none;border-radius:50%;background:transparent;color:#fff;font-size:var(--app-font-size-2xl);line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transform:translateY(-50%);transition:background .16s ease}.home-carousel__control:hover{background:#ffffff4d}.home-carousel__control--prev{left:16px}.home-carousel__control--next{right:16px}.home-carousel__dots{display:none}.home-carousel__bar{position:absolute;bottom:14px;right:16px;width:80px;height:4px;border-radius:2px;background:#ffffff4d;z-index:2;overflow:hidden}.home-carousel__bar-thumb{position:absolute;top:0;left:0;height:100%;border-radius:2px;background:var(--app-primary);transition:left .3s ease}.home-category-carousel__viewport{position:relative}.home-category-carousel__track{display:grid;grid-template-columns:repeat(var(--home-category-carousel-columns, 6),minmax(0,1fr));gap:0;align-items:stretch}.home-category-carousel__control{position:absolute;top:50%;z-index:3;width:28px;height:28px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--app-text-secondary);font-size:var(--app-font-size-lg);line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transform:translateY(-50%);transition:color .16s ease;opacity:0}.home-category-carousel__viewport:hover .home-category-carousel__control{opacity:1}.home-category-carousel__control:hover{color:var(--app-text)}.home-category-carousel__control--prev{left:4px}.home-category-carousel__control--next{right:4px}.home-category-carousel__slide{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:10px 16px;border:none;background:transparent;cursor:pointer;min-width:0;text-decoration:none;position:relative}.home-category-carousel__slide:after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px;height:55%;background:var(--app-border)}.home-category-carousel__track>.home-category-carousel__slide:last-of-type:after{display:none!important}.home-category-carousel__thumb{flex-shrink:0;width:48px;height:48px;border-radius:10px;overflow:hidden;display:block;background:#fff}.home-category-carousel__thumb img,.home-category-carousel__thumb .asset-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.home-category-carousel__thumb-placeholder{display:block;width:100%;height:100%;background:#fff;border-radius:10px}.home-category-carousel__body{min-width:0;display:flex;flex-direction:column;gap:2px}.home-category-carousel__name{font-size:var(--app-font-size-base);font-weight:600;color:var(--app-text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-category-carousel__desc{font-size:var(--app-font-size-xs);color:var(--app-text-secondary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-category-carousel__count{display:inline-block;margin-top:2px;font-size:11px;color:var(--app-muted);line-height:1}@media (min-width: 768px){.home-category-carousel__slide:after{display:none}.home-category-carousel__slide{border-radius:10px}.home-category-carousel__thumb,.home-category-carousel__thumb-placeholder{border-radius:12px;transition:transform .18s ease}.home-category-carousel__slide:hover .home-category-carousel__thumb{transform:scale(1.06)}.home-category-carousel__slide:hover .home-category-carousel__name{color:var(--app-primary)}}.app-resource-section{border-radius:4px;border:1px solid var(--app-border);background:#fff;padding:16px}.app-home-category-section+.app-home-category-section{margin-top:60px}.app-home-category-row{display:flex;gap:14px;margin-top:20px;align-items:flex-start}.app-home-category-row__main{flex:1;min-width:0}.app-home-category-row__side-rec{flex:2;min-width:0;display:flex}.app-home-category-row__side-rec .app-home-side-section{margin-top:0}.app-home-category-row__side .app-home-side-section__title{font-size:var(--app-font-size-base);font-weight:600;line-height:1.6;padding:2px 2px 2px 12px}.app-home-category-preview{display:flex;flex-direction:column;gap:14px}.app-home-category-preview__tabs{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0}.app-home-category-preview__tab-list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:1;min-width:0}.app-home-category-preview__tab{position:relative;padding:6px 14px;border:none;border-radius:999px;background:none;color:var(--app-text-secondary);font-size:var(--app-font-size-base);font-weight:500;line-height:1.6;cursor:pointer;text-decoration:none;white-space:nowrap;transition:color .16s ease,background .16s ease}.app-home-category-preview__tab:hover{color:var(--app-text);background:#0071e30f}.app-home-category-preview__tab.is-active{color:var(--app-primary);font-weight:600;background:var(--app-primary-soft)}.app-home-category-preview__more{display:inline-flex;align-items:center;gap:4px;font-size:var(--app-font-size-xs);font-weight:500;color:var(--app-primary);text-decoration:none;cursor:pointer;flex-shrink:0;padding:4px 8px;border-radius:var(--app-radius);transition:background .16s ease}.app-home-category-preview__more:hover{background:var(--app-primary-soft)}.app-home-category-preview__more-icon{font-size:var(--app-font-size-base);line-height:1;transition:transform .16s ease}.app-home-category-preview__more:hover .app-home-category-preview__more-icon{transform:translate(2px)}.app-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.app-section-heading__title{color:var(--app-text);font-size:22px;font-weight:700;line-height:1.2}.app-section-heading__desc{margin-top:6px;color:var(--app-text-secondary);font-size:var(--app-font-size-sm);line-height:1.7}.app-section-heading__meta{color:var(--app-muted);font-size:var(--app-font-size-xs)}.app-resource-grid--desktop{grid-template-columns:repeat(auto-fill,minmax(216px,1fr));gap:14px}.app-resource-grid--mobile{padding:0;gap:14px}.app-ripro-card{position:relative;display:flex;flex-direction:column;gap:7px;border-radius:var(--app-radius)!important;border:none!important;background:#fff!important;box-shadow:var(--app-shadow-sm)!important;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;transition:box-shadow .25s ease,transform .25s ease;overflow:hidden}.app-ripro-card:hover{box-shadow:var(--app-shadow-md)!important;transform:translateY(-2px)}.app-ripro-card:active,.app-ripro-card:focus,.app-ripro-card:focus-visible,.home-category-carousel__slide,.home-category-carousel__slide:active,.home-category-carousel__slide:focus,.home-category-carousel__slide:focus-visible,.app-resource-list__item:active,.app-resource-list__item:focus,.app-resource-list__item:focus-visible{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;outline:none!important;box-shadow:none!important;transition:none!important}.app-ripro-card__cover{position:relative;overflow:hidden;aspect-ratio:16 / 9;background:linear-gradient(135deg,var(--app-border) 0%,var(--app-surface-soft) 100%);border-radius:var(--app-radius)}.app-ripro-card__cover img{border-radius:var(--app-radius)}.app-ripro-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.75) 100%);pointer-events:none}.app-ripro-card__views{position:absolute;top:6px;right:6px;font-size:11px;color:#fff;background:#0000008c;padding:2px 6px;border-radius:var(--app-radius);line-height:1.4;display:inline-flex;align-items:center;gap:3px;opacity:0;transition:opacity .2s ease;pointer-events:none;z-index:2}.app-ripro-card:hover .app-ripro-card__views{opacity:1}.app-ripro-card__cover--empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f1f4f9,#e7edf5 48%,#f4f6fa)}.app-ripro-card__badge{position:absolute;top:12px;left:12px;z-index:2;height:28px;padding:0 12px;border-radius:var(--app-radius);background:#0f172abd;color:#fff;font-size:var(--app-font-size-xs);line-height:28px;backdrop-filter:blur(10px)}.app-ripro-card__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.app-ripro-card__pill{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:var(--app-radius);background:var(--app-primary-soft);color:var(--app-primary);font-size:var(--app-font-size-xs);font-weight:600}.app-ripro-card__date{color:var(--app-muted);font-size:var(--app-font-size-xs)}.app-ripro-card__title{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:20px 10px 8px;color:#fff;font-size:var(--app-font-size-sm);font-weight:600;line-height:1.35;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:center}.app-ripro-card__desc{color:var(--app-text-secondary)!important;font-size:var(--app-font-size-sm)!important;line-height:1.7!important;margin-bottom:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.app-category-page{display:flex;flex-direction:column;gap:12px}.app-category-page__intro{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:0;border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.app-category-page__intro-left{flex:1;min-width:0}.app-category-page__eyebrow{color:var(--app-primary);font-size:var(--app-font-size-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.app-category-page__title{margin-top:8px;color:var(--app-text);font-size:var(--app-font-size-base);font-weight:700;line-height:1.2}.app-category-page__desc{margin-top:0;color:var(--app-text-secondary);font-size:var(--app-font-size-base);line-height:1.6}.app-category-page__meta{display:flex;align-items:center;gap:12px;color:var(--app-text-secondary);font-size:var(--app-font-size-sm)}.app-category-page__meta .ant-radio-group,.app-category-page__meta .ant-radio-button-wrapper,.app-category-page__meta .ant-radio-button-wrapper *,.app-category-page__meta .ant-radio-button-wrapper:before,.app-category-page__meta .ant-radio-button-wrapper:after,.app-category-page__meta .ant-radio-button-wrapper:hover,.app-category-page__meta .ant-radio-button-wrapper:active,.app-category-page__meta .ant-radio-button-wrapper:focus,.app-category-page__meta .ant-radio-button-wrapper:focus-within,.app-category-page__meta .ant-radio-button-wrapper:focus-visible,.app-category-page__meta .ant-radio-button-wrapper-checked,.app-category-page__meta .ant-radio-button-wrapper-checked:hover,.app-category-page__meta .ant-radio-button-wrapper-checked:active,.app-category-page__meta .ant-radio-button-wrapper-checked:focus,.app-category-page__meta .ant-radio-button-wrapper-checked:focus-within,.app-category-page__meta .ant-radio-button-wrapper-checked:focus-visible{transition:none!important;animation:none!important;box-shadow:none!important;outline:none!important;-webkit-tap-highlight-color:transparent!important}.app-category-page__meta .ant-radio-button-wrapper:active,.app-category-page__meta .ant-radio-button-wrapper:focus,.app-category-page__meta .ant-radio-button-wrapper:focus-within,.app-category-page__meta .ant-radio-button-wrapper:focus-visible{outline:none!important}.app-category-page__meta .ant-radio-button-wrapper:after{display:none!important}.app-category-page__meta .ant-wave,.app-category-page__filters .ant-wave{display:none!important}.app-category-page__filters .ant-btn,.app-category-page__filters .ant-btn *,.app-category-page__filters .ant-btn:hover,.app-category-page__filters .ant-btn:active,.app-category-page__filters .ant-btn:focus,.app-category-page__filters .ant-btn:focus-within,.app-category-page__filters .ant-btn:focus-visible,.app-category-page__filters .ant-btn-primary,.app-category-page__filters .ant-btn-primary:hover,.app-category-page__filters .ant-btn-primary:active,.app-category-page__filters .ant-btn-primary:focus,.app-category-page__filters .ant-btn-primary:focus-within,.app-category-page__filters .ant-btn-primary:focus-visible{transition:none!important;animation:none!important;box-shadow:none!important;transform:none!important;outline:none!important;-webkit-tap-highlight-color:transparent!important}.app-category-page__resources{padding:0;margin-top:-6px;border:none;background:transparent;box-shadow:none}.app-category-page__nav-card{padding:10px 14px}.app-category-page__tabs{display:flex;align-items:center;gap:8px;padding:0 2px}.app-category-page__sticky-head{display:contents}.app-category-page__tab{position:relative;padding:6px 16px;color:var(--app-text-secondary);font-size:var(--app-font-size-base);font-weight:500;text-decoration:none;cursor:pointer;transition:color .16s ease,background .16s ease;white-space:nowrap;border-radius:999px}.app-category-page__tab:hover{color:var(--app-text);background:#0071e30f}.app-category-page__tab.is-active{color:var(--app-primary);font-weight:600;background:var(--app-primary-soft)}.app-category-page__actions{display:flex;align-items:center;gap:6px 16px;padding:4px 2px}.app-category-page__actions-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.app-category-page__sub-tab{position:relative;padding:4px 12px;color:var(--app-text-secondary);font-size:var(--app-font-size-sm);line-height:1.5;text-decoration:none;cursor:pointer;transition:color .16s ease,background .16s ease;white-space:nowrap;background:none;border:none;border-radius:999px}.app-category-page__sub-tab:hover{color:var(--app-text);background:#0071e30f}.app-category-page__sub-tab.is-active{color:var(--app-primary);font-weight:600;background:var(--app-primary-soft)}.app-category-page__sub-tabs{display:flex;align-items:center;gap:4px;flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.app-category-page__sub-tabs::-webkit-scrollbar{display:none}.app-category-page__desc-inline{flex-shrink:0;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--app-text-secondary);font-size:var(--app-font-size-base);line-height:1.6}.app-category-page__actions-right .ant-radio-group,.app-category-page__actions-right .ant-radio-button-wrapper,.app-category-page__actions-right .ant-radio-button-wrapper *,.app-category-page__actions-right .ant-radio-button-wrapper:before,.app-category-page__actions-right .ant-radio-button-wrapper:after,.app-category-page__actions-right .ant-radio-button-wrapper:hover,.app-category-page__actions-right .ant-radio-button-wrapper:active,.app-category-page__actions-right .ant-radio-button-wrapper:focus,.app-category-page__actions-right .ant-radio-button-wrapper:focus-within,.app-category-page__actions-right .ant-radio-button-wrapper:focus-visible,.app-category-page__actions-right .ant-radio-button-wrapper-checked,.app-category-page__actions-right .ant-radio-button-wrapper-checked:hover,.app-category-page__actions-right .ant-radio-button-wrapper-checked:active,.app-category-page__actions-right .ant-radio-button-wrapper-checked:focus,.app-category-page__actions-right .ant-radio-button-wrapper-checked:focus-within,.app-category-page__actions-right .ant-radio-button-wrapper-checked:focus-visible{transition:none!important;animation:none!important;box-shadow:none!important;outline:none!important;-webkit-tap-highlight-color:transparent!important}.app-category-page__actions-right .ant-radio-button-wrapper:after{display:none!important}.app-category-page__actions-right .ant-wave{display:none!important}@media (max-width: 767px){body.app-pwa-standalone .app-detail-page:has(.app-category-page){min-height:calc(100svh - env(safe-area-inset-top,0px) - var(--app-pwa-top-compensation))}.app-category-page__sticky-head{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--app-pwa-top-compensation));z-index:100;display:flex;flex-direction:column;gap:8px;margin:-16px -8px 0;padding:16px 8px 6px;background:#fff;border-bottom:1px solid var(--app-border)}body.app-pwa-standalone .app-category-page:before{position:fixed;top:0;right:0;left:0;z-index:99;height:max(56px,calc(env(safe-area-inset-top,0px) + var(--app-pwa-top-compensation)));background:#fff;content:"";pointer-events:none}.app-category-page__tabs{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;padding:0;touch-action:pan-x}.app-category-page__tabs::-webkit-scrollbar{display:none}.app-category-page__tab{padding:5px 13px;font-size:var(--app-font-size-sm)}.app-category-page__actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:0;overflow:visible}.app-category-page__sub-tabs{order:0;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;touch-action:pan-x}.app-category-page__sub-tabs::-webkit-scrollbar{display:none}.app-category-page__actions-right{order:0;flex-shrink:0}.app-category-page__desc-inline{order:1;flex-basis:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--app-font-size-sm);line-height:1.3;text-align:left}.app-category-page__resources{margin-top:0}.app-category-page__desc-inline{display:none}.app-category-page__sub-tab.is-active:after{content:"";position:absolute;bottom:-1px;left:4px;right:6px;height:1px;background:var(--app-primary);border-radius:0}}.app-search-page{display:flex;flex-direction:column;gap:18px}.app-search-page__intro{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:0;border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.app-search-page__title{color:var(--app-text);font-size:var(--app-font-size-md);font-weight:600;line-height:1.3}.app-search-page__desc{margin-top:6px;color:var(--app-text-secondary);font-size:var(--app-font-size-sm);line-height:1.7}.app-search-page__results{padding:0;border:none;background:transparent;box-shadow:none}.app-resource-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app-bookmarks-content{padding-top:60px!important}.app-resource-list__item{display:flex;align-items:flex-start;gap:12px;padding:8px;border:none;border-radius:16px;background:var(--app-resource-card-bg);text-decoration:none;color:var(--app-text)}.app-resource-list__item--skeleton{pointer-events:none}.app-skeleton-shimmer{background:linear-gradient(90deg,var(--app-border) 25%,#f0f1f2 50%,var(--app-border) 75%);background-size:200% 100%;animation:app-shimmer 1.5s ease-in-out infinite}.app-resource-list__cover{width:120px;height:82px;border-radius:12px;overflow:hidden;flex-shrink:0;background:var(--app-surface-soft);position:relative}.app-resource-list__cover--empty{background:transparent}.app-resource-list__cover--empty .app-cover-placeholder{position:absolute;inset:0;border:0;border-radius:inherit}.app-resource-list__views{position:absolute;top:6px;right:6px;font-size:11px;color:#fff;background:#0000008c;padding:2px 6px;border-radius:14px;line-height:1.4;display:inline-flex;align-items:center;gap:3px;opacity:0;transition:opacity .2s ease;pointer-events:none;z-index:1}.app-resource-list__item:hover .app-resource-list__views{opacity:1}.app-resource-list__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.app-resource-list__title{font-weight:600;font-size:var(--app-font-size-base);line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--app-text)}.app-resource-list__desc{font-size:var(--app-font-size-xs);color:var(--app-text-secondary);overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;white-space:normal;text-overflow:initial;line-height:1.45}.app-resource-list__item:hover,.app-resource-list__item:visited,.app-resource-list__item:hover .app-resource-list__title,.app-resource-list__item:visited .app-resource-list__title,.app-resource-list__item:hover .app-resource-list__desc,.app-resource-list__item:visited .app-resource-list__desc{color:var(--app-text)}.app-resource-list__item:hover{background:var(--app-primary-soft)}.app-resource-list__item:hover .app-resource-list__desc,.app-resource-list__item:visited .app-resource-list__desc{color:var(--app-text-secondary)}@media (max-width: 991px){.app-resource-list{grid-template-columns:1fr}}.app-resource-digest{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.app-resource-digest__item{display:flex;flex-direction:column;gap:8px;min-width:0;padding:14px 12px;border:none;border-radius:0;background:transparent;text-decoration:none;color:var(--app-text)}.app-resource-digest__item+.app-resource-digest__item{border-top:1px solid var(--app-border)}.app-resource-digest__item:hover{background:var(--app-primary-soft)}.app-resource-digest__item:hover,.app-resource-digest__item:visited,.app-resource-digest__item:hover .app-resource-digest__title,.app-resource-digest__item:visited .app-resource-digest__title{color:var(--app-text)}.app-resource-digest__item:hover .app-resource-digest__desc,.app-resource-digest__item:visited .app-resource-digest__desc{color:var(--app-text-secondary)}.app-resource-digest__item--skeleton{pointer-events:none}.app-resource-digest__head{display:flex;align-items:baseline;gap:8px;min-width:0}.app-resource-digest__title{flex:1;min-width:0;font-weight:600;font-size:var(--app-font-size-md);line-height:1.45;color:var(--app-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-resource-digest__views{flex-shrink:0;display:inline-flex;align-items:center;gap:3px;font-size:var(--app-font-size-xs);line-height:1.4;color:var(--app-text-secondary)}.app-resource-digest__desc{font-size:var(--app-font-size-base);line-height:1.6;color:var(--app-text-secondary);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;word-break:break-word}.app-resource-digest__thumbs{display:flex;gap:8px}.app-resource-digest__thumbs:empty{display:none}.app-resource-digest__thumb{flex:1 1 0;min-width:0;max-width:calc((100% - 40px) / 6);height:140px;border-radius:10px;overflow:hidden;background:var(--app-surface-soft)}@media (max-width: 991px){.app-resource-digest__item{gap:6px;padding:12px 2px}.app-resource-digest__title{font-size:var(--app-font-size-base);line-height:1.4}.app-resource-digest__desc{font-size:var(--app-font-size-sm);line-height:1.5}.app-resource-digest__thumbs{gap:6px}.app-resource-digest__thumb{max-width:min(calc((100% - 12px) / 3),200px);height:84px;border-radius:8px}}.app-detail-page{--detail-content-width: 920px;--detail-ad-width: 280px;--detail-scroll-bottom: 76px;background:transparent}.detail-ad-banner{border-radius:var(--app-radius);overflow:hidden;border:none;background:transparent;box-shadow:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.resource-detail-layout .detail-ad-banner{width:100%;max-width:100%;background:transparent}.resource-detail-layout .detail-ad-banner img{display:block;width:100%;height:auto;-o-object-fit:cover;object-fit:cover}.resource-detail-mobile-ads{display:flex;gap:8px;align-items:flex-start}.masonry-container{display:flex;gap:8px;width:100%}.masonry-column--left,.masonry-column--right{flex:1;display:flex;flex-direction:column;gap:8px}.resource-detail-mobile-ads .detail-ad-banner{box-shadow:none;border:none}.detail-ad-banner,.detail-ad-banner *{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.detail-ad-banner:focus,.detail-ad-banner:focus-visible,.detail-ad-banner:active{outline:none}.resource-detail-layout{overflow:visible}.app-detail-card{border-radius:var(--app-radius)!important}@media (min-width: 992px){.resource-detail-layout .app-detail-card .ant-card-body{padding:20px!important}}.app-home-footer{margin:0;padding:0;border-top:1px solid var(--app-border);background:#ffffffc2;backdrop-filter:blur(8px)}.app-home-footer__inner{padding:12px}.app-home-footer,.app-home-footer *{margin-bottom:0}.app-home-footer__content{max-width:none;margin:0;font-size:var(--app-font-size-sm);line-height:1.9;color:var(--app-text-secondary);text-align:left;overflow-wrap:anywhere;white-space:break-spaces}.app-home-footer__content>:first-child{margin-top:0}.app-home-footer__content>:last-child{margin-bottom:0}.app-home-footer__content.content-render h1,.app-home-footer__content.content-render h2,.app-home-footer__content.content-render h3,.app-home-footer__content.content-render p,.app-home-footer__content.content-render li,.app-home-footer__content.content-render blockquote{color:inherit;margin:0}.app-home-footer__content.content-render p:empty,.app-home-footer__content.content-render p>br:only-child{min-height:1em}.app-home-footer__content.content-render ul,.app-home-footer__content.content-render ol{display:block;margin:.45em 0;text-align:left}.app-home-footer__content.content-render blockquote{max-width:none;margin-left:0;margin-right:0}.app-home-footer__content.content-render img{display:block;max-width:min(100%,520px)}.app-home-footer__content .app-rich-video-embed,.app-home-footer__content video,.app-home-footer__content iframe{margin-left:0;margin-right:0}.app-detail-card__title{font-size:22px!important;line-height:1.3!important}.app-detail-card__meta .app-category-tag{margin-inline-end:0;padding:2px 8px;border-radius:var(--app-radius-sm);font-size:var(--app-font-size-xs);line-height:18px;font-weight:500;background:var(--app-primary-soft);color:var(--app-primary)}.app-detail-card__meta .app-category-tag:hover{background:#d5e9fb;color:var(--app-primary)}.app-detail-card__meta .app-muted{color:var(--app-text-secondary)}.app-category-tag{display:inline-block;padding:2px 8px;font-size:var(--app-font-size-xs);line-height:18px;border-radius:4px;background:#f0f2f5;color:var(--app-text-secondary);text-decoration:none;transition:background .15s ease,color .15s ease;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.app-category-tag:hover{background:var(--app-border);color:var(--app-text)}.app-detail-card__divider{opacity:.8}.app-detail-card__body{color:var(--app-text)}.app-comment-node--root{border:1px solid #e8e8e8;border-radius:12px;padding:14px 16px;background:#fff}.app-comment-node--child{margin-top:10px;padding:10px 12px;background:#f5f7fa;border-left:3px solid #D3E7FA;border-radius:10px}.app-comment-composer{border:1px solid #e8e8e8;border-radius:12px;padding:12px;background:#fff}.app-comment-composer textarea,.app-comment-composer textarea.ant-input{border:none;border-radius:8px;background:#f5f7fa;padding:10px 12px;box-shadow:none;resize:none}.app-comment-composer textarea:focus,.app-comment-composer textarea.ant-input:focus{border:none;box-shadow:inset 0 0 0 1px var(--app-primary)}.app-comment-composer .ant-btn-primary{border-radius:999px;padding-inline:18px;font-weight:500}.app-detail-downloads__item{border-radius:var(--app-radius)!important;background:#f8fafc!important}.app-detail-downloads__item:hover{background:#eff6ff!important}.detail-scroll-fabs{right:max(20px,calc((100vw - var(--detail-content-width) + var(--detail-ad-width)) / 2 - 51px));gap:10px}.detail-scroll-fab{width:42px;height:42px;border-radius:var(--app-radius);border-color:#e2e8f0eb;box-shadow:var(--app-shadow-sm);color:var(--app-text-secondary)}.app-admin-header__meta{color:var(--app-text-secondary)!important}.app-admin-layout{gap:20px}.app-admin-sidebar{padding:14px 12px;border-radius:var(--app-radius);background:#fffffff0;box-shadow:var(--app-shadow-md);position:static}.app-admin-main{min-width:0}.app-admin-panel{padding:18px!important;border-radius:var(--app-radius);background:#fffffff5;box-shadow:var(--app-shadow-md)}.app-admin .site-sidebar-menu .ant-menu-item{justify-content:flex-start!important;height:42px!important;line-height:42px!important;padding-inline:12px!important;border-radius:var(--app-radius)!important}.app-admin .site-sidebar-menu .ant-menu-item-selected{background:linear-gradient(135deg,#eff6ff,#dbeafe)!important;color:var(--app-primary)!important;font-weight:600}.app-admin .ant-table-wrapper,.app-admin .ant-card,.app-admin .ant-form-item,.app-admin .app-admin-list{border-radius:var(--app-radius)}.app-admin .ant-table-wrapper .ant-table{overflow:hidden;border:1px solid rgba(226,232,240,.95)}.app-admin .ant-table-wrapper .ant-table-thead>tr>th{background:#f8fafc;color:var(--app-text-secondary);font-weight:700}.app-admin .ant-table-wrapper .ant-table-tbody>tr:hover>td{background:#f8fbff}.app-admin .ant-modal .ant-modal-content{box-shadow:var(--app-shadow-lg)}.app-admin .ant-input,.app-admin .ant-input-affix-wrapper,.app-admin .ant-select-selector,.app-admin .ant-input-number,.app-admin .ant-picker{border-radius:var(--app-radius)!important}.app-admin-settings-card .ant-card-head{border-bottom-color:var(--app-border)}@media (max-width: 1200px){.app-home-shell{gap:18px}.app-home-sidebar{width:224px}}@media (max-width: 991px){html,body,#root{width:100%;overflow-x:clip;overscroll-behavior-y:none}.app-header{box-shadow:none}.app-header .app-header-title,.app-header .app-site-brand,.app-header .ant-btn,.app-header .ant-btn-text,.app-header .ant-btn-icon-only,.app-header .ant-dropdown-trigger,.app-header .app-top-nav-item,.app-header .app-top-nav-item:hover,.app-header .app-top-nav-item:active,.app-header .app-top-nav-item:focus,.app-header .app-top-nav-item:focus-visible{background:transparent!important;box-shadow:none!important;outline:none!important}.app-header .ant-btn:hover,.app-header .ant-btn:active,.app-header .ant-btn:focus,.app-header .ant-btn:focus-visible,.app-header .ant-btn-text:hover,.app-header .ant-btn-text:active,.app-header .ant-btn-text:focus,.app-header .ant-btn-text:focus-visible,.app-header .ant-btn-icon-only:hover,.app-header .ant-btn-icon-only:active,.app-header .ant-btn-icon-only:focus,.app-header .ant-btn-icon-only:focus-visible,.app-header .ant-dropdown-trigger:hover,.app-header .ant-dropdown-trigger:active,.app-header .ant-dropdown-trigger:focus,.app-header .ant-dropdown-trigger:focus-visible,.app-header .app-site-brand:hover,.app-header .app-site-brand:active,.app-header .app-site-brand:focus,.app-header .app-site-brand:focus-visible{background:transparent!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;outline:none!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-header .app-header-title,.app-header .app-site-brand,.app-header .ant-btn,.app-header .ant-btn-text,.app-header .ant-btn-icon-only,.app-header .ant-dropdown-trigger,.app-header .app-top-nav-item,.app-header .app-top-nav-item *{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none!important}.app-header-mobile-menu-button,.app-header-mobile-menu-button:hover,.app-header-mobile-menu-button:active,.app-header-mobile-menu-button:focus,.app-header-mobile-menu-button:focus-visible{background:transparent!important;background-color:transparent!important;border:none!important;-moz-appearance:none!important;appearance:none!important;-webkit-appearance:none!important;box-shadow:none!important;outline:none!important;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:inherit!important}.app-header-mobile-menu-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;padding:0;cursor:pointer;line-height:1;color:var(--app-text-secondary)}.app-header--hero .app-header-mobile-menu-button{color:#ffffffe6!important}.app-header--hero .app-header-mobile-menu-button:hover,.app-header--hero .app-header-mobile-menu-button:active,.app-header--hero .app-header-mobile-menu-button:focus,.app-header--hero .app-header-mobile-menu-button:focus-visible{color:#fff!important}.app-header--hero-scrolled .app-header-mobile-menu-button{color:var(--app-text-secondary)!important}.app-header--hero-scrolled .app-header-mobile-menu-button:hover,.app-header--hero-scrolled .app-header-mobile-menu-button:active,.app-header--hero-scrolled .app-header-mobile-menu-button:focus,.app-header--hero-scrolled .app-header-mobile-menu-button:focus-visible{color:var(--app-text)!important}.app-header-search-mobile{flex:1;margin:0 8px}.app-header-search-mobile .ant-input-affix-wrapper{border-radius:20px;background:#0000000a;border:1px solid transparent;transition:all var(--app-transition-fast);cursor:pointer}.app-header-search-mobile .ant-input-affix-wrapper:hover{background:#0000000f}.app-header-search-mobile .ant-input-affix-wrapper:active{background:#00000014}.app-header-search-mobile .ant-input{font-size:var(--app-font-size-sm);background:transparent!important;cursor:pointer;caret-color:var(--app-primary)!important}.app-header--hero .app-header-search-mobile .ant-input-affix-wrapper{background:#fff3;border-color:#ffffff4d}.app-header--hero .app-header-search-mobile .ant-input-affix-wrapper:hover{background:#ffffff4d}.app-header--hero .app-header-search-mobile .ant-input-affix-wrapper:active{background:#ffffff59}.app-header--hero .app-header-search-mobile .ant-input{color:#fff}.app-header--hero .app-header-search-mobile .ant-input::-moz-placeholder{color:#ffffffb3}.app-header--hero .app-header-search-mobile .ant-input::placeholder{color:#ffffffb3}.app-header--hero-scrolled .app-header-search-mobile .ant-input-affix-wrapper{background:#0000000a;border-color:transparent}.app-header--hero-scrolled .app-header-search-mobile .ant-input-affix-wrapper:hover{background:#0000000f}.app-header--hero-scrolled .app-header-search-mobile .ant-input{color:var(--app-text)!important}.app-header--hero-scrolled .app-header-search-mobile .ant-input::-moz-placeholder{color:var(--app-muted)}.app-header--hero-scrolled .app-header-search-mobile .ant-input::placeholder{color:var(--app-muted)}.app-header .app-header-title::-moz-selection,.app-header .app-site-brand::-moz-selection,.app-header .ant-dropdown-trigger::-moz-selection,.app-header .app-top-nav-item::-moz-selection,.app-header .ant-btn::-moz-selection,.app-header .ant-btn-text::-moz-selection,.app-header .ant-btn-icon-only::-moz-selection{background:transparent}.app-header .app-header-title::selection,.app-header .app-site-brand::selection,.app-header .ant-dropdown-trigger::selection,.app-header .app-top-nav-item::selection,.app-header .ant-btn::selection,.app-header .ant-btn-text::selection,.app-header .ant-btn-icon-only::selection{background:transparent}.app-ripro-card__edited{font-size:10px;color:var(--app-muted);padding:0 2px;margin-top:2px}.app-page-content{padding:16px 8px}.app-home-shell{padding:10px 8px 12px}.app-home-loading{padding:0}.app-home-footer{display:none}body.app-boot--home #root{min-height:0!important}.home-announcement-bar{padding:6px 10px}.home-announcement-bar__badge{height:20px;padding:0 6px;font-size:10px}.home-announcement-bar__item{font-size:var(--app-font-size-xs)}.home-announcement-bar__marquee{animation-duration:8s}.home-category-carousel{margin-bottom:24px;margin-left:-21px;width:calc(100% + 16px)}.home-category-carousel__track{display:flex;gap:0px;overflow-x:auto;overflow-y:hidden;padding:2px 0 6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.home-category-carousel__track::-webkit-scrollbar{display:none}.home-category-carousel__slide:first-child{padding-left:0!important;margin-left:-5px}.home-category-carousel__slide{flex:0 0 calc(42% - 3px);max-width:calc(42% - 3px);height:auto;scroll-snap-align:start;gap:10px;padding:6px 4px}.home-category-carousel__control{display:none!important}.home-category-carousel__thumb{width:40px;height:40px;border-radius:8px}.home-category-carousel__thumb-placeholder{border-radius:8px}.home-category-carousel__name{font-size:var(--app-font-size-sm)}.home-category-carousel__desc{font-size:11px}.app-resource-section,.app-admin-sidebar,.app-admin-panel,.app-detail-card{border-radius:var(--app-radius)!important}.app-section-heading,.app-category-page__intro{display:flex;align-items:center;justify-content:space-between;gap:10px}.app-home-category-preview__more,.app-category-page__meta{flex-shrink:0}.app-category-page__meta .ant-radio-group{max-width:72px}.app-home-category-preview__more{font-size:var(--app-font-size-sm)}.home-hero{min-height:240px;padding:18px 10px 20px}.home-hero-title{font-size:22px;line-height:1.2;margin-bottom:14px}.home-hero-search,.app-shell,.app-home-shell,.app-category-page,.app-search-page{width:100%;max-width:100%}.app-home-category-preview .app-resource-grid--desktop,.app-category-page__title{font-size:var(--app-font-size-base);line-height:1.25;font-weight:700}.app-home-category-preview,.app-category-page__desc{font-size:var(--app-font-size-base);line-height:1.6}.app-home-main .app-resource-grid--desktop{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.app-home-main .app-ripro-card__title{font-size:var(--app-font-size-xs);line-height:1.35;white-space:nowrap}.app-home-main .app-ripro-card__cover{aspect-ratio:16 / 9}.app-home-category-preview .app-resource-grid--desktop{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.app-home-category-preview .app-ripro-card__title{font-size:var(--app-font-size-xs);line-height:1.35;white-space:nowrap}.app-category-page__intro>div:first-child{flex:1;min-width:0;text-align:left}.app-category-page__title{text-align:left;flex:1}.app-category-page__meta{justify-content:center;min-width:72px}.app-category-page__resources .app-resource-grid--desktop,.app-search-page__results .app-resource-grid--desktop{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.app-category-page__resources .app-ripro-card__title{font-size:var(--app-font-size-xs);line-height:1.35;white-space:nowrap}.app-ripro-card__title{max-width:100%;font-size:var(--app-font-size-xs)}.app-resource-list{grid-template-columns:1fr;gap:8px}.app-resource-list__item{display:flex;align-items:center;gap:6px;padding:4px;border-radius:12px;overflow:hidden}.app-resource-list__cover{width:72px;height:54px;border-radius:8px;flex-shrink:0}.app-resource-list__title{font-size:var(--app-font-size-sm);line-height:1.3;-webkit-line-clamp:1;white-space:nowrap;max-width:100%}.app-resource-list__desc{font-size:11px;line-height:1.28;max-width:100%;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-overflow:initial;overflow-wrap:anywhere;word-break:break-word}.app-resource-list__body{flex:1;min-width:0;max-width:100%;overflow:hidden;justify-content:flex-start}.app-resource-list__title,.app-resource-list__desc{min-width:0}.app-resource-list__desc--mobile{white-space:normal}.app-category-page__title{margin-top:0}.app-category-page__desc{margin-top:4px}.app-category-page{gap:12px}.app-category-page__intro{align-items:center}.app-category-page__intro>div:first-child{flex:1;min-width:0}.app-category-page__meta .ant-radio-button-wrapper{height:28px;padding:0 8px;line-height:26px}.app-home-carousel-row__side{width:100%}.resource-detail-layout{display:block}.resource-detail-layout .resource-detail-main{min-width:0}.resource-detail-layout .app-detail-card{padding:10px!important}.app-detail-card{margin-bottom:8px!important}.app-detail-card+.app-detail-card{margin-top:20px!important}.app-detail-card,.app-detail-card .ant-card{background:transparent!important;border:none!important;box-shadow:none!important;border-radius:0!important}.app-detail-card .ant-card-body{padding:0!important}.app-comment-node--root{border:none!important;background:#f5f7fa!important;padding:12px!important;border-radius:12px!important}.app-comment-node--child{margin-top:8px!important;background:#ffffffe6!important;padding:10px 12px!important;border-left:3px solid #D3E7FA!important;border-radius:10px!important}.app-comment-composer{border:none!important;padding:0!important;background:transparent!important}.app-detail-card__title{font-size:var(--app-font-size-lg)!important;line-height:1.25!important}.app-rich-editor__gallery-assets{padding:10px 12px 12px}.app-detail-gallery__stage{min-height:auto;padding:4px 8px}.app-detail-gallery__thumb--large{width:184px;aspect-ratio:16 / 9}.app-detail-gallery__thumbs{min-height:107px}.app-detail-gallery{padding-inline:0}.app-detail-gallery__rail-nav{display:none}.app-image-viewer{padding:0;background:#000}.app-image-viewer__stage{background:#000;backdrop-filter:none;-webkit-backdrop-filter:none}.app-image-viewer__close{top:max(16px,env(safe-area-inset-top,0px) + 8px);right:max(16px,env(safe-area-inset-right,0px) + 8px);background:#ffffff14;color:#ffffffb3}.app-image-viewer__counter{background:#ffffff14;color:#ffffff8c}.app-image-viewer__hint{background:#ffffff14;color:#ffffff73}.app-image-viewer__dialog{width:100%;gap:10px}.app-image-viewer__topbar{padding-inline:2px}.app-image-viewer__image{max-height:64vh}.content-render{font-size:var(--app-font-size-base);line-height:1.85}.content-render p,.content-render li,.content-render blockquote,.content-render div{overflow-wrap:anywhere;word-break:break-word}.content-render a{overflow-wrap:anywhere;word-break:break-all}.app-admin-layout{display:block}.app-admin-sidebar{width:100%!important;margin-bottom:14px;position:static}.detail-scroll-fabs{right:12px;bottom:14px}.detail-scroll-fab{width:32px;height:32px}}.app-header--hero{background:transparent!important;border-bottom:none!important;box-shadow:none!important;transition:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.app-header--hero-top{background:transparent!important;border-bottom:none!important;transition:none!important}.app-header--scroll-hide.app-header--hero-inline{position:absolute;transform:none!important;transition:none!important}.app-header--hero-top .app-site-brand,.app-header--hero-top .app-top-nav-item,.app-header--hero-top .app-nav-link,.app-header--hero-top .ant-btn-text,.app-header--hero .app-header-title,.app-header--hero .app-site-brand{color:#fff!important;transition:none!important;text-shadow:none!important}.app-header--hero .app-site-brand-dot{background:#fff;box-shadow:0 0 0 4px #fff3}.app-header--hero .ant-btn,.app-header--hero .ant-btn-text{color:#ffffffe6!important;transition:none!important}.app-header--hero .ant-btn:hover,.app-header--hero .ant-btn-text:hover{color:#fff!important;background:#ffffff1a!important}.app-header--hero .app-top-nav-item{color:#ffffffbf;transition:none!important;text-shadow:none!important}.app-header--hero .app-top-nav-item:hover,.app-header--hero .app-top-nav-item.is-active{color:#fff}body.app-pwa-standalone .app-header--hero{background:var(--app-primary)!important;backdrop-filter:none!important}body.app-pwa-standalone .app-header--hero-scrolled{background:#fff!important;backdrop-filter:none!important}.app-header--hero-scrolled{background:#fff!important;border-bottom:1px solid var(--app-border)!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transition:none!important}.app-header--hero-scrolled .app-header-title,.app-header--hero-scrolled .app-site-brand{color:var(--app-text-secondary)!important;transition:none!important}.app-header--hero-scrolled .app-site-brand-dot{background:linear-gradient(135deg,#60a5fa,#38bdf8);box-shadow:0 0 0 4px #60a5fa29}.app-header--hero-scrolled .ant-btn,.app-header--hero-scrolled .ant-btn-text,.app-header--hero-scrolled .app-nav-link{color:var(--app-text-secondary)!important;transition:none!important}.app-header--hero-scrolled .ant-btn:hover,.app-header--hero-scrolled .ant-btn-text:hover,.app-header--hero-scrolled .app-nav-link:hover{color:var(--app-text)!important;background:var(--app-hover-bg)!important}.app-header--hero-scrolled .app-top-nav-item{color:var(--app-text-secondary);transition:none!important}.app-header--hero-scrolled .app-top-nav-item:hover,.app-header--hero-scrolled .app-top-nav-item.is-active{color:var(--app-text)}.app-header--hero,.app-header--hero *,.app-header--hero-inline,.app-header--hero-inline *,.app-header--hero-scrolled,.app-header--hero-scrolled *{transition:none!important;animation:none!important}.home-hero-banner{position:relative;overflow:hidden;min-height:520px}.home-hero-banner__announcement{position:absolute;top:var(--app-header-h);left:0;right:0;z-index:10;background:var(--app-hover-bg);padding:6px 0}.home-hero-banner__announcement-inner{padding:0 24px;display:flex;align-items:center;gap:8px;min-width:0}.home-announcement-bar__track{flex:1 1 auto;min-width:0;overflow:hidden}.home-hero-banner__typewriter{flex-shrink:0;font-size:13px;color:#ffffffb3;white-space:nowrap;display:flex;align-items:center;gap:4px}.home-hero-banner__typewriter-label{color:#fff6}.home-hero-banner__typewriter-text{display:inline-block;min-width:1ch}.home-hero-banner__typewriter-cursor{display:inline-block;width:1px;height:14px;background:#fff9;animation:home-typewriter-cursor-blink .8s step-end infinite}@keyframes home-typewriter-cursor-blink{0%,to{opacity:1}50%{opacity:0}}.home-hero-banner__announcement-inner{padding:0 24px}.home-hero-banner__announcement-inner .home-announcement-bar__item{color:#fffc}.home-hero-banner__announcement-inner .home-announcement-bar__item a{color:#ffffffe6}.home-hero-banner__announcement-inner .home-announcement-bar__sep{color:#ffffff59}.home-hero-banner__metrics{position:absolute;bottom:12px;right:70px;display:flex;align-items:center;justify-content:center;gap:20px;z-index:25}.home-hero-banner__metrics .home-hero-metric{display:flex;flex-direction:column;align-items:center;gap:3px}.home-hero-banner__metrics .home-hero-metric b{color:#fffffff2;font-weight:800;font-size:var(--app-font-size-lg);line-height:1;font-variant-numeric:tabular-nums}.home-hero-banner__metrics .home-hero-metric__label{color:#ffffff80;font-size:10px;line-height:1}.home-hero-banner__metrics .home-hero-metric__sep{display:none}.home-category-carousel-wrapper{position:relative;z-index:20;margin-top:-50px;padding-bottom:16px;max-width:1400px;margin-left:auto;margin-right:auto}.home-category-carousel-wrapper .home-category-carousel{padding:0 32px}.home-category-carousel-wrapper .home-category-carousel__viewport{background:#fff;border-radius:16px;box-shadow:0 12px 32px #0000001a;padding:12px}.home-carousel--hero{position:relative;width:100%;max-width:1400px;margin:0 auto;padding:0 32px}.home-carousel--hero:before,.home-carousel--hero:after{display:none!important}.home-carousel-hero{display:flex;gap:0;align-items:stretch;width:100%;height:520px;padding:0;position:relative}.home-carousel-hero__stage-backdrop{display:none!important}.home-carousel-hero__image{flex:1 1 0;position:relative;overflow:hidden;background:transparent;z-index:2}.home-carousel-hero__image:after{content:"";position:absolute;inset:0;z-index:5;pointer-events:none;box-shadow:inset 36px 0 48px -16px var(--slide-bg, #1a1a2e),inset -36px 0 48px -16px var(--slide-bg, #1a1a2e)}.home-carousel-hero__image-link{display:block;width:100%;height:100%;text-decoration:none;overflow:hidden;position:relative}.home-carousel-hero__image-backdrop,.home-carousel-hero__image-overlay{display:none!important}.home-carousel-hero__img{position:relative;z-index:1;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .4s ease}.home-carousel-hero__dots-overlay{position:absolute;bottom:70px;right:18px;display:flex;align-items:center;gap:5px;z-index:10;padding:6px 9px;min-height:26px;box-sizing:border-box;border-radius:14px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .3s ease,backdrop-filter .3s ease}.home-carousel--hero:hover .home-carousel-hero__dots-overlay{background:#0610288a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.home-carousel-hero__dot{width:8px;height:8px;border-radius:50%;border:none;background:#ffffff73;cursor:pointer;padding:0;transition:all .25s ease}.home-carousel-hero__dot:hover{background:#ffffffb3}.home-carousel-hero__dot.is-active{background:#fff;box-shadow:0 0 4px #ffffff73}.home-carousel-hero__nav{position:absolute;bottom:70px;right:90px;display:flex;align-items:center;gap:2px;z-index:10;padding:4px 8px;border-radius:14px;background:#0610288a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;transition:opacity .35s ease;pointer-events:none;box-sizing:border-box}.home-carousel-hero__nav-btn{width:22px;height:20px;padding:0;border:none;border-radius:3px;background:transparent;color:#ffffffd1;font-size:var(--app-font-size-base);line-height:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff}.home-carousel--hero .home-carousel__control{display:none!important}.home-carousel-hero__list{flex:0 0 clamp(220px,17vw,270px);display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-width:0;align-self:flex-start;margin-top:calc(var(--app-header-h) + 46px);max-height:calc(100% - var(--app-header-h) - 72px);padding:20px 18px;background:transparent;border:none;box-shadow:none;border-radius:0;backdrop-filter:none;scrollbar-width:none;-ms-overflow-style:none}.home-carousel-hero__list::-webkit-scrollbar{display:none}.home-carousel-hero__list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;cursor:pointer;transition:all .2s ease;background:#ffffff14;border:1px solid transparent;flex-shrink:0}.home-carousel-hero__list-item:hover{background:#ffffff26}.home-carousel-hero__list-item.is-active{background:#ffffff29;border-color:#ffffff38;transform:translate(-2px)}.home-carousel-hero__list-thumb{display:none}.home-carousel-hero__list-thumb img,.home-carousel-hero__list-thumb .asset-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.home-carousel-hero__list-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.home-carousel-hero__list-title{font-size:var(--app-font-size-base);font-weight:600;line-height:1.35;color:#fff;margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;text-shadow:0 1px 3px rgba(0,0,0,.25);transition:color .2s ease}.home-carousel-hero__list-item.is-active .home-carousel-hero__list-title{color:#fff}.home-carousel-hero__list-item:not(.is-active) .home-carousel-hero__list-title{color:#ffffffd9}.home-carousel-hero__list-desc{font-size:var(--app-font-size-xs);line-height:1.4;color:#ffffffad;margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;text-shadow:0 1px 2px rgba(0,0,0,.15)}.home-carousel__badge--sm{font-size:10px;padding:1px 5px;top:4px;left:4px}.home-carousel-hero__list-item--skeleton{height:84px;background:linear-gradient(90deg,#ffffff0f 25%,#ffffff29,#ffffff0f 75%);background-size:200% 100%;animation:app-shimmer 1.5s ease-in-out infinite;border-radius:14px}.home-carousel-hero--empty{height:520px;background:var(--app-bg)}.home-hero{position:relative;background:var(--app-primary);min-height:260px;display:flex;align-items:center;justify-content:center;padding:calc(var(--app-header-h) + 32px) 16px 40px;overflow:hidden}.home-hero-center{position:relative;z-index:2;text-align:center;max-width:720px;width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:center}.home-hero-title{color:#fff;font-size:clamp(18px,2.5vw,24px);font-weight:700;margin:0 0 10px;height:1.3em;line-height:1.3;letter-spacing:.02em}.home-hero-desc{color:#fffc;font-size:var(--app-font-size-base);margin:0 0 28px}.home-hero-subtitle{color:#ffffffbf;font-size:var(--app-font-size-sm);line-height:1.4;height:1.4em;margin:0 0 8px}.home-hero-search{display:flex;align-items:center;width:400px;max-width:520px;height:42px;background:var(--app-primary);border:none;border-radius:60px;overflow:hidden;transition:background .2s ease;box-shadow:0 4px 20px #0000001f}.home-hero-search:focus-within{background:#fff}.home-hero-search-scope{flex-shrink:0;width:100px}.home-hero-search-scope .ant-select-selector{border:none!important;border-radius:0!important;background:#f5f7fb!important;height:46px!important;line-height:46px!important;padding-left:12px!important}.home-hero-search-input{flex:1;min-width:0}.home-hero-search-input.ant-input{border:none!important;border-radius:0!important;box-shadow:none!important;height:42px;padding:0 16px;font-size:var(--app-font-size-base);background:transparent!important;color:#fff}.home-hero-search-input.ant-input:focus{box-shadow:none!important}.home-hero-search-input.ant-input::-moz-placeholder{color:#ffffff80}.home-hero-search-input.ant-input::placeholder{color:#ffffff80}.home-hero-search:focus-within .home-hero-search-input.ant-input{color:var(--app-text)}.home-hero-search:focus-within .home-hero-search-input.ant-input::-moz-placeholder{color:var(--app-muted)}.home-hero-search:focus-within .home-hero-search-input.ant-input::placeholder{color:var(--app-muted)}.home-hero-search-btn{width:34px;height:34px;border-radius:50%;border:none;flex-shrink:0;margin:4px;background:#ffffff26;color:#fffc;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.home-hero-search-btn:hover{background:#ffffff40}.home-hero-search:focus-within .home-hero-search-btn{background:var(--app-primary)}.home-hero-search:focus-within .home-hero-search-btn:hover{background:var(--app-primary-hover)}.home-hero-search-input{flex:1;height:100%;border:none;outline:none;padding:0 16px 0 20px;font-size:var(--app-font-size-base);background:transparent;color:#ffffffe6;min-width:0;font-family:inherit}.home-hero-search-input::-moz-placeholder{color:#ffffff73}.home-hero-search-input::placeholder{color:#ffffff73}.home-hero-search:focus-within .home-hero-search-input{color:var(--app-text)}.home-hero-search:focus-within .home-hero-search-input::-moz-placeholder{color:var(--app-muted)}.home-hero-search:focus-within .home-hero-search-input::placeholder{color:var(--app-muted)}.home-hero-tags{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.home-hero-metrics{display:flex;gap:24px;margin-top:14px}.home-hero-metric{display:flex;flex-direction:column;align-items:center;gap:4px}.home-hero-metric__value{color:#fff;font-size:22px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;min-height:1.2em;display:inline-block}@keyframes homeHeroCountIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.home-hero-metric__label{color:#ffffffb3;font-size:var(--app-font-size-xs);line-height:1}.home-hero-tags-label{color:#ffffffa6;font-size:var(--app-font-size-xs)}.home-hero-tag{height:28px;padding:0 10px;border:1px solid rgba(255,255,255,.25);border-radius:var(--app-radius);background:#ffffff1a;color:#ffffffe6;font-size:var(--app-font-size-xs);cursor:pointer;transition:background .15s ease,border-color .15s ease}.home-hero-tag:hover{background:#fff3;border-color:#fff6;color:#fff}@media (max-width: 991px){.home-hero{min-height:300px;padding:calc(var(--app-header-h) + 24px) 12px 36px}.home-hero-title{font-size:var(--app-font-size-2xl)}.home-hero-search{max-width:100%}.home-hero-search-scope{width:84px}.home-hero-search-scope .ant-select-selector{height:42px!important;line-height:42px!important}.home-hero-search{width:100%}.home-hero-search-input{height:42px;font-size:var(--app-font-size-base)}.home-hero-search-btn{height:34px;width:34px}.home-hero-metrics{gap:24px}.home-hero-metric__value{font-size:22px}.app-home-carousel-row{flex-wrap:wrap;gap:8px;margin-bottom:14px}.home-carousel{margin-top:0;margin-bottom:20px}.home-category-carousel{margin-bottom:0}.app-promo-banner{margin-top:6px}.app-home-carousel-row__main{width:100%;flex:none!important;min-width:100%}.app-home-carousel-row__side{width:calc(50% - 4px);flex:none!important}.app-home-category-row{flex-wrap:wrap;gap:8px}.app-home-category-row__main{width:100%;flex:none!important;min-width:100%}.app-home-category-row__side{width:100%;flex:none!important}.app-home-side-section{margin-top:0}.app-home-side-section__title,.app-home-side-section__item-title{font-size:var(--app-font-size-xs)}}@media (max-width: 767px){.detail-scroll-fabs{display:none}.home-carousel__slide{aspect-ratio:16 / 9}.home-carousel__control{display:none}.home-carousel__title{font-size:var(--app-font-size-md)}.home-carousel__desc{font-size:var(--app-font-size-xs)}.app-home-carousel-row__side{width:100%!important}.app-header,.app-header--hero-scrolled{background:#fcfcfc!important}.app-header-inner{gap:2px;justify-content:flex-start}.app-header-inner--full{padding:0}.app-top-nav{flex:0 0 auto;justify-content:flex-start;gap:0}.app-header-inner .app-top-nav-item{padding:0 6px;font-size:var(--app-font-size-xs)}.app-header-actions{width:auto;min-width:0;flex:0 0 auto;justify-content:flex-end;margin-left:auto}.app-header-title{font-size:var(--app-font-size-base)!important}.app-site-brand{font-size:var(--app-font-size-base)!important;font-weight:600!important;letter-spacing:normal!important;line-height:1.2!important}.app-home-loading{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:10;background:var(--app-bg);min-height:0}.app-detail-page{padding-top:0!important}.app-home-section{padding:0;margin:0}.app-home-section+.app-home-section{margin-top:0}.app-home-section__inner,.app-home-section--alt{padding:0}.app-home-section .app-home-side-section{margin-top:0}.app-home-section__title{font-size:var(--app-font-size-base)}.app-home-three-col{grid-template-columns:1fr;gap:0}.app-home-three-col .app-home-side-section{margin-top:0;margin-bottom:12px;background:#fff;border-radius:var(--app-radius);border:1px solid var(--app-border);padding:12px 14px}.app-home-three-col .app-home-side-section:last-child{margin-bottom:0}.app-home-three-col .app-home-side-section__title{padding:0 0 8px 12px;margin-bottom:8px;font-size:var(--app-font-size-sm);border-bottom:1px solid var(--app-border)}.app-home-side-section{margin-top:16px}}.app-home-carousel-row__side{width:100%!important}.app-promo-banner{margin-top:28px;margin-bottom:24px}.app-promo-banner__grid{display:grid;grid-template-columns:1fr;gap:10px;align-items:start}.app-promo-banner__card{position:relative;display:block;height:auto;min-height:0;border-radius:var(--app-radius);overflow:hidden;text-decoration:none;cursor:pointer;background:#f8fafc;line-height:0}.app-promo-banner__card--skeleton{height:64px;background:linear-gradient(90deg,#f2f3f5 25%,#e8eaed,#f2f3f5 75%);background-size:200% 100%;animation:app-promo-skeleton-shimmer 1.2s ease-in-out infinite}@keyframes app-promo-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.app-promo-banner__image{position:relative;display:block;width:100%;height:auto;-o-object-fit:contain;object-fit:contain;vertical-align:top}.app-promo-banner__content{position:absolute;left:0;right:0;bottom:0;z-index:1;text-align:center;padding:14px 20px;line-height:normal;pointer-events:none;background:none}.app-promo-banner__title{color:#fff;font-size:var(--app-font-size-base);font-weight:700;line-height:1.3;text-shadow:0 1px 4px rgba(0,0,0,.3)}.app-promo-banner__desc{color:#ffffffd9;font-size:var(--app-font-size-xs);line-height:1.4;margin-top:4px;text-shadow:0 1px 4px rgba(0,0,0,.2)}.app-home-section{margin:0 calc(-50vw + 50%);padding:48px calc(50vw - 50%) 48px}.app-home-section--alt{background:#fcfcfc}.app-home-section__inner{max-width:var(--app-max-width);margin:0 auto}.app-home-section__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.app-home-section__title{display:flex;align-items:center;gap:10px;font-size:var(--app-font-size-lg);font-weight:700;color:var(--app-text);line-height:1.3}.app-home-section__subtitle{font-size:var(--app-font-size-sm);font-weight:400;color:var(--app-muted);margin-left:4px}.app-home-three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:0}.app-home-three-col .app-home-side-section{margin-top:0;background:#fff;border-radius:var(--app-radius);border:1px solid var(--app-border);padding:16px 18px;box-shadow:var(--app-shadow-sm)}.app-home-three-col .app-home-side-section__title{padding:0 0 10px 12px;margin-bottom:10px;border-bottom:1px solid var(--app-border);font-size:var(--app-font-size-base);font-weight:600}.app-home-section .app-home-category-row{margin-top:0}.app-home-section .app-promo-banner{margin-top:28px;margin-bottom:28px}@media (min-width: 768px){.app-promo-banner__grid:has(.app-promo-banner__card:nth-child(2)){grid-template-columns:1fr 1fr}.app-promo-banner__grid:has(.app-promo-banner__card:nth-child(3):last-child) .app-promo-banner__card:last-child{grid-column:span 2}.app-promo-banner__grid:has(.app-promo-banner__card:nth-child(5):last-child) .app-promo-banner__card:last-child{grid-column:span 2}.app-promo-banner__grid:has(.app-promo-banner__card:nth-child(7):last-child) .app-promo-banner__card:last-child{grid-column:span 2}}.home-hero-title__cursor{display:inline-block;margin-left:2px;animation:homeHeroBlink .8s step-end infinite}@keyframes homeHeroBlink{0%,to{opacity:1}50%{opacity:0}}@media (min-width: 992px){.app-category-page__resources{margin-top:0}.app-home-side-card{padding:10px 12px;gap:12px}.app-home-side-card__thumb{width:96px;height:54px}.app-home-side-card__title{font-size:var(--app-font-size-base)}.app-home-side-card__meta{font-size:var(--app-font-size-xs)}.app-home-side-section__title{font-size:var(--app-font-size-base)}}.ant-btn:active,.ant-btn:focus,.ant-btn:focus-visible,.ant-btn:hover:active,.ant-btn-primary:active,.ant-btn-primary:focus,.ant-btn-primary:focus-visible,.ant-btn-primary:hover:active,.ant-btn-default:active,.ant-btn-default:focus,.ant-btn-default:focus-visible,.ant-btn-default:hover:active,.ant-btn-text:active,.ant-btn-text:focus,.ant-btn-text:focus-visible,.ant-btn-text:hover:active,.ant-btn-link:active,.ant-btn-link:focus,.ant-btn-link:focus-visible,.ant-btn-link:hover:active{background:inherit!important;color:inherit!important;border-color:inherit!important;outline:none!important;box-shadow:none!important}.ant-btn:after,.ant-btn-primary:after,.ant-btn-default:after,.ant-btn-text:after,.ant-btn-link:after{display:none!important}.ant-wave{display:none!important}button,.ant-btn,a,[role=button]{-webkit-tap-highlight-color:transparent!important;-webkit-touch-callout:none!important;outline:none!important}.app-chat{width:100%;max-width:100%;min-width:0;height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--app-bg);overflow:hidden;font-size:var(--app-font-size-base)}.app-chat__body{display:flex;flex:1;min-height:0}.app-chat__sidebar{width:240px;min-width:240px;border-right:1px solid var(--app-border);background:var(--app-surface);display:flex;flex-direction:column;overflow:hidden}.app-chat__sidebar-header{padding:10px 14px;font-size:var(--app-font-size-base);font-weight:700;color:var(--app-text);border-bottom:1px solid var(--app-border);display:flex;align-items:center;gap:8px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-chat__sidebar-list{flex:1;overflow-y:auto;padding:6px 0}.app-chat__sidebar-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background .15s ease;text-decoration:none;color:var(--app-text)}.app-chat__sidebar-item:hover{background:#1677ff0a}.app-chat__sidebar-item.is-active{background:#1677ff12}.app-chat__sidebar-avatar{width:34px;height:34px;border-radius:8px;-o-object-fit:cover;object-fit:cover;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:17px;overflow:hidden}.app-chat__sidebar-avatar--placeholder{background:linear-gradient(135deg,#e8edf3,#f4f6f9)}.app-chat__sidebar-name{font-size:var(--app-font-size-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-chat__sidebar-item.is-active .app-chat__sidebar-name{color:var(--app-primary);font-weight:600}.app-chat__main{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--app-bg)}.app-chat__header{padding:10px 16px;background:var(--app-surface);border-bottom:1px solid var(--app-border);display:flex;align-items:center;gap:8px;flex-shrink:0}.app-chat__header-title{font-size:var(--app-font-size-base);font-weight:700;color:var(--app-text)}.app-chat__header-back{display:none;font-size:var(--app-font-size-lg);cursor:pointer;color:var(--app-text-secondary);transition:color .15s ease;background:none;border:none;padding:2px 4px;border-radius:4px;line-height:1}.app-chat__header-back:hover{color:var(--app-primary);background:#1677ff0f}.app-chat__messages{width:100%;max-width:100%;min-width:0;flex:1;overflow-x:hidden;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin;overscroll-behavior-x:none}.app-chat__messages-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--app-muted);font-size:var(--app-font-size-base);gap:8px}.app-chat__messages-empty-icon{font-size:28px;opacity:.5}.app-chat-msg{display:flex;flex-direction:row;gap:8px;margin-bottom:12px;max-width:100%}.app-chat-msg--mine,.app-chat-msg--other{align-self:flex-start}.app-chat-msg__avatar-link{flex-shrink:0;display:block;width:36px;height:36px;position:relative;text-decoration:none;transition:opacity .15s}.app-chat-msg__avatar-link:hover{opacity:.8}.app-chat-msg__avatar-placeholder{position:absolute;inset:0;border-radius:50%;background:#f0f2f5;display:flex;align-items:center;justify-content:center;font-size:var(--app-font-size-md);color:var(--app-muted)}.app-chat-msg__avatar{position:absolute;inset:0;width:36px;height:36px;border-radius:50%;-o-object-fit:cover;object-fit:cover;display:block}.app-chat-msg__body{display:flex;flex-direction:column;min-width:0}.app-chat-msg__meta{display:flex;align-items:center;margin-bottom:2px;font-size:11px;color:var(--app-muted);min-width:0}.app-chat-msg__sender{color:var(--app-primary);font-weight:500;text-decoration:none;transition:opacity .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.app-chat-msg__sender:hover{opacity:.75}.app-chat-msg__bubble{max-width:100%;padding:12px 16px;border-radius:10px;font-size:var(--app-font-size-base);line-height:1.6;overflow-wrap:anywhere;word-break:break-word;position:relative}.app-chat-msg--other .app-chat-msg__bubble{background:var(--app-surface);color:var(--app-text);border:1px solid var(--app-border);box-shadow:var(--app-shadow-sm)}.app-chat-msg--mine .app-chat-msg__bubble{background:var(--app-primary);color:#fff;box-shadow:0 1px 4px #1677ff40}.app-chat-msg__time{display:block;text-align:right;margin-top:4px;font-size:11px;line-height:1;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-chat-msg--other .app-chat-msg__time{color:var(--app-muted)}.app-chat-msg--mine .app-chat-msg__time{color:#ffffffa6}.app-chat-msg__status{display:block;text-align:right;margin-top:2px;font-size:11px;line-height:1;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:#fff9;font-style:italic}.app-chat-msg__status--failed{color:#ff4d4f;font-style:normal;cursor:pointer}.app-chat__input-bar{width:100%;max-width:100%;min-width:0;display:flex;align-items:center;padding:10px 16px;flex-shrink:0;overflow:hidden}.app-chat__input-wrapper{position:relative;display:flex;width:100%;max-width:100%;min-width:0;align-items:center}.app-chat__input-bar .ant-input{border-radius:10px!important;padding:10px 56px 10px 16px!important;font-size:var(--app-font-size-base);background:var(--app-bg);border:1px solid var(--app-border);transition:all .2s ease;resize:none}.app-chat__input-bar .ant-input:focus,.app-chat__input-bar .ant-input:hover{border-color:var(--app-primary);box-shadow:0 0 0 2px #1677ff14}.app-chat__input-bar .ant-input::-moz-placeholder{color:var(--app-muted)}.app-chat__input-bar .ant-input::placeholder{color:var(--app-muted)}.app-chat__send-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:none;border-radius:50%;background:var(--app-primary);color:#fff;font-size:var(--app-font-size-base);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s ease;padding:0;line-height:1;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;outline:none}.app-chat__send-btn:focus-visible{outline:none;box-shadow:none}.app-chat__send-btn:hover:not(:disabled){background:var(--app-primary-hover);transform:translateY(-50%) scale(1.08);box-shadow:0 2px 8px #1677ff4d}.app-chat__send-btn:active:not(:disabled){transform:translateY(-50%) scale(.95)}.app-chat__send-btn:disabled{background:#b3c9e8;color:#fff;cursor:not-allowed;transform:translateY(-50%)}@media (max-width: 991px){.app-chat__sidebar{display:none}.app-chat{position:fixed;inset:0;width:100%;max-width:100%;height:100vh;height:100dvh;display:flex;flex-direction:column;z-index:1000;overflow:hidden;overscroll-behavior:none}.app-chat__header-back{display:inline-flex;align-items:center;justify-content:center;width:28px;height:24px;padding:0}.app-chat__header-back svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.app-chat__header{position:relative;justify-content:center;padding:calc(10px + env(safe-area-inset-top,0px)) 12px 10px;background:var(--app-bg);border-bottom:none}.app-chat__header-title{line-height:24px}.app-chat__header-back{position:absolute;left:12px;top:calc(10px + env(safe-area-inset-top,0px))}.app-chat__messages{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:14px 12px}.app-chat-msg__body{max-width:80%}.app-chat__input-bar{padding:10px 12px}.app-chat__input-bar .ant-input{width:100%;max-width:100%;min-width:0;padding:10px 50px 10px 14px!important;font-size:16px}.app-chat__send-btn{width:28px;height:28px;font-size:var(--app-font-size-sm)}}@media (max-width: 767px){.app-chat{bottom:0}body.app-pwa-standalone .app-chat{top:var(--app-pwa-top-compensation)}body.app-pwa-standalone .app-chat__input-bar{padding:10px 12px max(12px,env(safe-area-inset-bottom,0px))}body.app-pwa-standalone .app-chat__input-bar .ant-input{min-height:44px;border-radius:999px!important;padding-top:10px!important;padding-bottom:10px!important}}.app-comment-reply-link:hover{color:var(--app-primary)!important}@media (max-width: 767px){::-webkit-scrollbar{display:none;width:0;height:0}html::-webkit-scrollbar,body::-webkit-scrollbar,#root::-webkit-scrollbar{display:none;width:0;height:0}*,html,body,#root{scrollbar-width:none;-ms-overflow-style:none}}body.app-pwa-standalone ::-webkit-scrollbar,body.app-pwa-standalone html::-webkit-scrollbar,body.app-pwa-standalone body::-webkit-scrollbar,body.app-pwa-standalone #root::-webkit-scrollbar{display:none;width:0;height:0}body.app-pwa-standalone *,body.app-pwa-standalone html,body.app-pwa-standalone body,body.app-pwa-standalone #root{scrollbar-width:none;-ms-overflow-style:none}.app-mobile-directory{height:100%;display:flex;flex-direction:column;background:var(--app-bg);overflow:hidden}@media (min-width: 992px){.home-hero-banner{min-height:clamp(380px,24vw,420px)}.home-carousel-hero,.home-carousel-hero--empty{height:clamp(380px,24vw,420px)}.home-category-carousel-wrapper{margin-top:-48px;padding-bottom:12px}.home-category-carousel-wrapper .home-category-carousel__viewport{padding:10px 14px;border-radius:14px}.home-category-carousel{margin-bottom:0}.home-carousel-hero__dots-overlay,.home-carousel-hero__nav{bottom:64px}.home-carousel-hero__list{margin-top:calc(var(--app-header-h) + 24px);max-height:calc(100% - var(--app-header-h) - 44px);padding:12px 16px}.app-home-section{padding-top:36px;padding-bottom:40px}.app-home-main .app-home-section:not(.app-home-section--alt){padding-bottom:24px}.app-home-main .app-home-section:not(.app-home-section--alt)+.app-home-section--alt{padding-top:20px}.app-home-main .app-home-section:not(.app-home-section--alt)+.app-home-section--alt .app-promo-banner{margin-top:12px}.app-home-category-preview__tabs{margin-bottom:14px}.app-home-category-preview__tab-list{gap:4px}.app-home-category-preview__tab{padding:6px 12px}.app-home-category-preview__tab.is-active{box-shadow:0 2px 8px #0071e31f}.app-home-category-preview .app-resource-grid--desktop{gap:14px}.app-home-three-col{gap:16px}}@media (min-width: 992px) and (max-width: 1499px){.home-hero-banner__metrics{display:none}}.app-mobile-directory__scroller{flex:1;overflow:hidden auto;padding:12px;padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.app-mobile-directory__list{display:flex;flex-direction:column;gap:8px}.app-mobile-directory__item{display:flex;align-items:center;gap:12px;min-height:58px;padding:9px 12px;border:none;border-radius:14px;background:#f6f8fb;color:var(--app-text);cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background .16s ease,transform .16s ease}.app-mobile-directory__item:hover{background:#f1f5fb;color:var(--app-text)}.app-mobile-directory__item:active{background:#eaf2ff;transform:scale(.985)}.app-mobile-directory__icon{width:40px;height:40px;border-radius:10px;-o-object-fit:cover;object-fit:cover;flex-shrink:0}.app-mobile-directory__icon--placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8edf3,#f4f6f9);color:var(--app-primary);font-size:18px}.app-mobile-directory__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.app-chat__input-bar{padding-bottom:max(10px,env(safe-area-inset-bottom,0px))}@media (display-mode: standalone){.app-chat__input-bar{padding-bottom:max(12px,env(safe-area-inset-bottom))!important}}@media (max-width: 767px){.home-category-carousel{margin-bottom:0!important}.home-category-carousel-wrapper{padding-bottom:0!important}.app-home-carousel-row{margin-top:0!important}.home-carousel{margin-top:0!important;margin-bottom:10px!important}.home-carousel__bar{top:14px;bottom:auto}.app-home-section,.app-home-section--alt{padding:0!important;margin:0!important}.app-home-section+.app-home-section{margin-top:20px!important}.app-home-section__inner{padding:0!important}.app-home-category-preview{gap:8px}.app-home-section .app-home-side-section,.app-home-side-section{margin-top:24px!important}.app-home-section .app-home-side-section:first-child{margin-top:0!important}.app-home-side-section__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:0 2px}.app-home-side-section__title{display:inline-flex;align-items:center;gap:6px;margin:0!important;padding:0!important;border:none!important;font-size:var(--app-font-size-base);font-weight:700;color:var(--app-text);line-height:1.3}.app-home-side-section__list{gap:0!important}.app-home-side-card{padding:12px 0;border-bottom:1px solid var(--app-border);border-radius:0;background:transparent;align-items:flex-start}.app-home-side-card:last-child{border-bottom:none}.app-home-side-card:active{background:var(--app-surface-soft)}.app-home-side-card__thumb{width:96px;height:64px;border-radius:8px;background:var(--app-surface-soft)}.app-home-side-card__thumb--empty{background:var(--app-surface-soft)}.app-home-side-card__title{font-size:var(--app-font-size-base);font-weight:600;line-height:1.45;-webkit-line-clamp:2}.app-home-side-card__meta{font-size:var(--app-font-size-xs);color:var(--app-text-secondary);margin-top:6px}.app-home-category-preview__tabs{margin-top:6px;padding:6px;border-bottom:none;background:#f5f5f7;border-radius:12px}.app-home-category-preview__tab{padding:6px 12px;font-weight:500;border-radius:10px}.app-home-category-preview__tab.is-active{background:#fff;color:var(--app-text);box-shadow:0 1px 3px #00000014}.app-home-category-preview__tab.is-active:after{display:none}.app-home-category-preview__more{padding:6px 10px}.app-home-category-preview .app-resource-grid--desktop{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none}.app-home-category-preview .app-resource-grid--desktop::-webkit-scrollbar{display:none}.app-home-category-preview .app-resource-grid--desktop>.app-ripro-card{flex:0 0 46%;min-width:0;scroll-snap-align:start}.app-promo-banner__grid{padding:0;gap:8px}.app-promo-banner__card{border-radius:0;box-shadow:none;overflow:hidden;height:auto;min-height:0}.app-promo-banner__card--skeleton{height:64px}.app-promo-banner__image{width:100%;height:auto;-o-object-fit:contain;object-fit:contain}.app-home .ant-layout-content{padding-bottom:var(--app-bottom-inset)!important}.app-promo-banner{margin-top:24px!important;margin-bottom:12px!important}}.app-bottom-nav{display:none}@media (max-width: 767px){:root{--app-bottom-nav-h: 50px}.app-bottom-nav{position:fixed!important;bottom:0;left:0;right:0;z-index:1000;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;justify-items:stretch;height:50px;padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:content-box;background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border-top:none;box-shadow:none}.app-bottom-nav:before{display:none}.app-bottom-nav__tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;width:100%;min-width:0;height:50px;padding:0;border:none;background:transparent;cursor:pointer;color:#71809d;transition:color var(--app-transition-fast);-webkit-tap-highlight-color:transparent;outline:none;font-family:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.app-bottom-nav__tab:hover,.app-bottom-nav__tab:focus,.app-bottom-nav__tab:focus-visible,.app-bottom-nav__tab:active,.app-bottom-nav__tab.is-active{background:transparent!important}.app-bottom-nav__tab.is-active{color:#1268ee!important}.app-bottom-nav__tab:active,.app-bottom-nav__tab:focus,.app-bottom-nav__tab:focus-visible{color:#1268ee!important}.app-bottom-nav__icon{display:none}.app-bottom-nav__label{font-size:16px;line-height:1.5;font-weight:500}.app-bottom-nav__tab.is-active .app-bottom-nav__label{font-weight:700}.app-bottom-nav__publish{display:flex;align-items:center;justify-content:center;justify-self:center;align-self:center;width:52px;height:36px;min-width:52px;min-height:36px;border:none;border-radius:0;background:transparent;color:#fff;cursor:pointer;flex-shrink:0;margin:0;padding:0;box-sizing:border-box;box-shadow:none;transition:transform var(--app-transition-fast);-webkit-tap-highlight-color:transparent;outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.app-bottom-nav__publish svg{display:block;width:52px;height:36px;overflow:hidden}.app-bottom-nav__publish:focus,.app-bottom-nav__publish:focus-visible{outline:none!important;box-shadow:none!important}.app-bottom-nav__publish:active{transform:scale(.92)}.app-bottom-nav-spacer{height:var(--app-bottom-inset)}}@media (max-width: 767px){.app-page-content,.app-home .ant-layout-content{padding-bottom:var(--app-bottom-inset)!important}}.mobile-login-page{display:flex;flex-direction:column;align-items:center;justify-content:space-between;width:100%;min-height:calc(100svh - env(safe-area-inset-top,0px));min-height:calc(100dvh - env(safe-area-inset-top,0px));padding:48px 24px var(--app-bottom-inset);background:linear-gradient(180deg,#f8f9fb,#fff);text-align:center;position:relative;overflow:hidden}.mobile-login-page__bg{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}.mobile-login-page__orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.45}.mobile-login-page__orb--1{width:240px;height:240px;top:-60px;right:-80px;background:#0071e338}.mobile-login-page__orb--2{width:180px;height:180px;top:35%;left:-50px;background:#7850f024}.mobile-login-page__orb--3{width:260px;height:260px;bottom:15%;right:-100px;background:#00b4dc1f}.mobile-login-page__hero{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;z-index:1;margin-top:14vh}.mobile-login-page__title{margin:0;font-size:28px;font-weight:700;color:var(--app-text);line-height:var(--app-line-height-tight);letter-spacing:-.02em}.mobile-login-page__actions{width:100%;max-width:360px;z-index:1}.mobile-login-page__btn{height:50px;border-radius:14px!important;font-size:16px;font-weight:600;box-shadow:0 6px 20px #0071e347}@media (max-width: 767px){.ant-message{top:calc(8px + env(safe-area-inset-top,0px))!important}.app-header,.app-header--hero-scrolled,.app-search-page__bar,.app-category-page__sticky-head{border-bottom:none!important}}@media (max-width: 991px){.app-home-shell{padding-top:0!important}}@media (max-width: 767px){.app-bottom-nav,.app-header-mobile-menu-button,.home-carousel__control,.app-category-page__view-toggle,.app-chat__send-btn{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (hover: none) and (pointer: coarse){a:hover,button:hover,.ant-btn:hover,.ant-btn-text:hover,.app-nav-link:hover,.app-top-nav-item:hover,.app-category-page__tab:hover,.app-category-page__sub-tab:hover,.app-chat__sidebar-item:hover,.app-home-side-card:hover,.app-resource-card:hover,.app-resource-list__item:hover,.app-ripro-card:hover,.app-chat-msg__avatar-link:hover,.app-comment-reply-link:hover,.ant-menu-item:hover,.ant-table-row:hover,[class*=__thumb]:hover,[class*=__control]:hover{background:inherit!important;color:inherit!important;opacity:inherit!important;transform:none!important;box-shadow:none!important;border-color:inherit!important}.content-render .app-download-card__copy:hover,.content-render .app-download-card__copy:focus,.content-render .app-download-card__copy:active{background:#0071e31a!important;color:var(--app-primary)!important}.app-chat__send-btn,.app-chat__send-btn:hover,.app-chat__send-btn:active,.app-chat__send-btn:focus,.app-chat__send-btn:focus-visible{background:var(--app-primary)!important;color:#fff!important;border-color:transparent!important;transform:translateY(-50%)!important}.app-chat__send-btn:disabled,.app-chat__send-btn:disabled:hover,.app-chat__send-btn:disabled:active,.app-chat__send-btn:disabled:focus{background:#b3c9e8!important;color:#fff!important;transform:translateY(-50%)!important}.app-mobile-directory__item,.app-mobile-directory__item:hover,.app-mobile-directory__item:focus,.app-mobile-directory__item:focus-visible{background:#f6f8fb!important;color:var(--app-text)!important;border-color:transparent!important;box-shadow:none!important}.app-mobile-directory__item:active{background:#eaf2ff!important;color:var(--app-text)!important;transform:scale(.985)!important}}.app-page-shell{width:min(100%,var(--app-max-width));margin:0 auto;padding:24px}.app-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.app-page-header__copy{min-width:0}.app-page-title{margin:0;color:var(--app-text);font-size:var(--app-font-size-2xl);font-weight:var(--app-font-weight-semibold);line-height:var(--app-line-height-tight);letter-spacing:-.025em}.app-page-description{margin:7px 0 0;color:var(--app-text-secondary);font-size:var(--app-font-size-sm);line-height:var(--app-line-height-normal)}.app-surface-card{border:1px solid var(--app-border);border-radius:var(--app-radius);color:var(--app-text);background:var(--app-surface);box-shadow:var(--app-shadow-sm)}.app-async-state{display:flex;min-height:260px;padding:36px 20px;align-items:center;justify-content:center;text-align:center}.app-search-page__empty{min-height:calc(100svh - var(--app-header-h) - 48px);padding:0 20px}.app-async-state__content{display:flex;max-width:420px;flex-direction:column;align-items:center;gap:12px}.app-async-state__title{color:var(--app-text);font-size:var(--app-font-size-md);font-weight:var(--app-font-weight-semibold)}.app-async-state__description{color:var(--app-text-secondary);font-size:var(--app-font-size-sm);line-height:var(--app-line-height-normal)}.app-category-directory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.app-category-directory-card{display:flex;min-height:78px;padding:14px;align-items:center;gap:13px;border:1px solid var(--app-border);border-radius:var(--app-radius);color:var(--app-text);background:var(--app-surface);box-shadow:var(--app-shadow-sm);text-decoration:none;transition:border-color var(--app-transition-normal),box-shadow var(--app-transition-normal),transform var(--app-transition-normal)}.app-category-directory-card:hover{border-color:#0071e33d;box-shadow:var(--app-shadow-md);transform:translateY(-2px)}.app-category-directory-card__cover{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;overflow:hidden;border-radius:var(--app-radius);color:var(--app-primary);background:linear-gradient(145deg,var(--app-primary-soft),var(--app-bg));font-size:22px}.app-category-directory-card__cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.app-category-directory-card__body{min-width:0}.app-category-directory-card__title{overflow:hidden;color:var(--app-text);font-size:var(--app-font-size-base);font-weight:var(--app-font-weight-semibold);line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.app-category-directory-card__description{display:-webkit-box;overflow:hidden;margin-top:4px;color:var(--app-text-secondary);font-size:var(--app-font-size-xs);line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.app-search-page__bar{position:sticky;top:var(--app-header-h);z-index:80;border-bottom:1px solid var(--app-border);background:#ffffffe6;backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%)}.app-search-page__bar-inner{display:flex;width:min(100%,var(--app-max-width));margin:0 auto;padding:10px 24px;align-items:center;gap:10px}.app-search-page__summary{display:flex;flex-wrap:wrap;min-height:34px;margin-bottom:14px;align-items:center;justify-content:space-between;gap:8px 12px}.app-search-page__count{flex:1 1 auto;min-width:0;color:var(--app-text-secondary);font-size:var(--app-font-size-base)}.app-search-page__summary .ant-radio-group{margin-left:auto}.app-detail-card__title{overflow-wrap:anywhere;white-space:normal!important}.app-detail-meta-action{display:inline-flex;min-height:28px;padding:3px 8px;align-items:center;gap:4px;border:none;border-radius:var(--app-radius-sm);color:var(--app-text-secondary);background:transparent;font:inherit;font-size:var(--app-font-size-xs);cursor:pointer;transition:background .15s ease,color .15s ease}.app-detail-meta-action:hover{color:var(--app-primary);background:var(--app-primary-soft)}.app-detail-meta-action--push{margin-left:auto}.app-icon-action{display:inline-flex;min-width:44px;min-height:44px;padding:8px;align-items:center;justify-content:center;border:0;border-radius:var(--app-radius);color:var(--app-text-secondary);background:transparent;cursor:pointer}.app-icon-action:hover{color:var(--app-primary);background:var(--app-primary-soft)}.app-chat__new-message{position:sticky;z-index:8;bottom:12px;display:block;width:-moz-max-content;width:max-content;margin:0 auto 10px;padding:7px 12px;border:1px solid rgba(0,113,227,.22);border-radius:999px;color:var(--app-primary);background:#fffffff0;box-shadow:var(--app-shadow-md);cursor:pointer}@media (max-width: 767px){.app-page-shell{padding:12px 12px calc(12px + var(--app-bottom-inset))}.app-page-header{margin-bottom:14px}.app-category-directory-page__header{display:none}.app-category-directory-page{padding-top:0;background:none}.app-category-directory-page .app-surface-card.app-async-state{border:none;border-radius:0;box-shadow:none;background:transparent;padding:40px 0}.app-page-title{font-size:var(--app-font-size-xl)}.app-category-directory-grid{grid-template-columns:1fr;gap:0}.app-category-directory-card{min-height:auto;padding:12px;border:none;border-radius:0;box-shadow:none;background:var(--app-surface);gap:12px}.app-category-directory-card:hover{background:#f2f2f7;transform:none;box-shadow:none}.app-category-directory-card__cover{width:40px;height:40px;flex-basis:40px;border-radius:8px;font-size:18px;background:none}.app-category-directory-card__cover:not(:has(img)){background:linear-gradient(135deg,#e8edf3,#f4f6f9)}.app-category-directory-card__title{font-size:inherit;font-weight:500}.app-category-directory-card__description{display:none}body.app-pwa-standalone.app-route-search #root{padding-top:0!important}.app-search-page__bar{top:0}.app-search-page__bar-inner{padding:calc(8px + env(safe-area-inset-top,0px) + var(--app-pwa-top-compensation)) 12px 8px}body.app-pwa-standalone.app-route-search .app-search-page__bar-inner{padding-top:calc(8px + env(safe-area-inset-top,0px) + var(--app-pwa-top-compensation) + 11px)!important}.app-search-page .app-page-shell{padding-top:4px}.app-search-page__summary{min-height:0;margin-bottom:8px}.app-search-page__empty{min-height:calc(100svh - var(--app-header-h) - var(--app-bottom-inset) - 16px);padding:0}.app-detail-meta-action{min-width:44px;min-height:32px}}.app-discover-page{min-height:100vh;background:var(--app-bg)}.app-discover-page__shell{padding-top:calc(var(--app-header-h) + 16px);padding-bottom:48px}.app-discover-masonry{-moz-column-count:5;column-count:5;-moz-column-gap:16px;column-gap:16px}.app-discover-card{-moz-column-break-inside:avoid;break-inside:avoid;display:inline-block;width:100%;margin:0 0 16px;overflow:hidden;border:none;border-radius:12px;background:transparent;box-shadow:0 1px 2px #12213906;transition:transform .2s ease,box-shadow .2s ease}.app-discover-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #2440691f}.app-discover-card__link{display:block;color:inherit;text-decoration:none}.app-discover-card__media{position:relative;overflow:hidden;background:var(--app-surface-soft)}.app-discover-card__media>img{display:block;width:100%;height:100%}.app-discover-card__media>.app-cover-placeholder{width:100%;height:100%}.app-discover-card__body{padding:11px 12px 12px;background:var(--app-resource-card-bg)}.app-discover-card__body h2{display:-webkit-box;overflow:hidden;margin:0 0 5px;color:var(--app-text);font-size:14px;font-weight:650;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.app-discover-card__body p{display:-webkit-box;overflow:hidden;margin:0;color:var(--app-text-secondary);font-size:12px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.app-discover-card__actions{display:flex;justify-content:flex-end;align-items:center;gap:4px;padding:0 10px 8px;background:var(--app-resource-card-bg)}.app-discover-card__action{min-height:28px;padding:2px 7px;border-radius:6px;color:var(--app-primary);font-size:12px;line-height:24px;text-decoration:none}.app-discover-card__action:hover{background:var(--app-primary-soft);color:var(--app-primary-hover)}.app-profile-resource-masonry{display:flex;align-items:flex-start;gap:16px;margin-top:4px}.app-profile-resource-masonry__column{display:flex;flex:1 1 0;flex-direction:column;gap:16px;min-width:0}.app-profile-resource-masonry .app-discover-card{display:block;width:100%;margin:0}.app-discover-card--skeleton{min-height:210px;border:0}.app-discover-card--skeleton:nth-child(2n){min-height:276px}.app-discover-card--skeleton:nth-child(3n){min-height:170px}.app-discover-card--skeleton .app-skeleton-shimmer{display:block;width:100%;height:100%}.app-discover-page__sentinel{display:flex;justify-content:center;min-height:40px;padding:10px 0 4px;color:var(--app-muted);font-size:12px}.app-discover-page__sentinel .ant-spin{color:var(--app-muted)}.app-discover-page__sentinel button,.app-discover-page__retry{border:0;border-radius:8px;background:#eaf4ff;color:var(--app-primary);cursor:pointer;font:inherit;padding:7px 12px}@media (max-width: 1399px){.app-discover-masonry{-moz-column-count:4;column-count:4}}@media (max-width: 991px){.app-discover-masonry{-moz-column-count:3;column-count:3}}@media (max-width: 767px){.app-discover-page__shell{padding:var(--app-header-h) 12px var(--app-bottom-inset)}.app-discover-masonry{-moz-column-count:2;column-count:2;-moz-column-gap:10px;column-gap:10px}.app-profile-resource-masonry,.app-profile-resource-masonry__column{gap:10px}.app-discover-card{margin-bottom:10px;border-radius:10px}.app-discover-card:hover{transform:none;box-shadow:0 1px 2px #12213906}.app-discover-card__body{padding:9px 10px 10px}.app-discover-card__body h2{font-size:13px}.app-discover-card__body p{font-size:11px;-webkit-line-clamp:2}.app-discover-card__actions{padding:0 8px 7px}.app-discover-card__action{min-height:26px;padding:1px 6px;font-size:11px;line-height:23px}}@media (max-width: 374px){.app-discover-card__body h2{font-size:12px}}body :is(a,button,input,textarea,select,[role=button],[tabindex]):focus,body :is(a,button,input,textarea,select,[role=button],[tabindex]):focus-visible{outline:none!important;box-shadow:none!important}body :is(button,[role=button],.ant-radio-button-wrapper,.ant-segmented-item,.ant-switch):focus,body :is(button,[role=button],.ant-radio-button-wrapper,.ant-segmented-item,.ant-switch):focus-visible,body :is(.ant-radio-button-wrapper,.ant-segmented-item,.ant-switch):focus-within{outline:none!important;box-shadow:none!important;border-color:inherit!important}body :is(input,textarea,select,.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-select-selector,.ant-picker,.ant-input-search,.ant-input-group,.ant-input-group-wrapper):focus,body :is(input,textarea,select,.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-select-selector,.ant-picker,.ant-input-search,.ant-input-group,.ant-input-group-wrapper):focus-visible,body :is(input,textarea,select,.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-select-selector,.ant-picker,.ant-input-search,.ant-input-group,.ant-input-group-wrapper):focus-within{outline:none!important;box-shadow:none!important}body :is(input.ant-input,textarea.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-select-selector,.ant-picker,.ant-input-group,.ant-input-group-wrapper):focus,body :is(input.ant-input,textarea.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-select-selector,.ant-picker,.ant-input-group,.ant-input-group-wrapper):focus-within{border-color:var(--app-border)!important}body :is(.ant-input-focused,.ant-input-affix-wrapper-focused,.ant-input-number-focused,.ant-select-focused .ant-select-selector,.ant-picker-focused){outline:none!important;border-color:var(--app-border)!important;box-shadow:none!important}body .app-header-inline-search.ant-input-search .ant-input-group,body .app-header-inline-search.ant-input-search:focus-within .ant-input-group,body .app-header-inline-search .ant-input-group:focus-within{border-color:var(--app-border)!important;box-shadow:none!important;transition:none!important}body :is(.app-header-search-mobile .ant-input-affix-wrapper,.home-hero-search):focus,body :is(.app-header-search-mobile .ant-input-affix-wrapper,.home-hero-search):focus-within{border-color:transparent!important;box-shadow:none!important}body :is(input,textarea,select,[contenteditable=true]){caret-color:var(--app-primary)!important}body :is(input,textarea,select,.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-select-selector,.ant-picker,.ant-input-search,.ant-input-group,.ant-input-group-wrapper):hover{border-color:var(--app-border)!important;box-shadow:none!important}@media (max-width: 767px){body :is(input,textarea,select,.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-select-selector,.ant-picker,.ant-input-search,.ant-input-group,.ant-input-group-wrapper){-webkit-tap-highlight-color:transparent;transition:none!important}body .app-header-search-mobile .ant-input-affix-wrapper,body .app-header-search-mobile .ant-input-affix-wrapper:hover,body .app-header-search-mobile .ant-input-affix-wrapper:active,body .app-header-search-mobile .ant-input-affix-wrapper:focus-within{background:#0000000a!important;border-color:transparent!important;box-shadow:none!important}body .app-header--hero .app-header-search-mobile .ant-input-affix-wrapper,body .app-header--hero .app-header-search-mobile .ant-input-affix-wrapper:hover,body .app-header--hero .app-header-search-mobile .ant-input-affix-wrapper:active,body .app-header--hero .app-header-search-mobile .ant-input-affix-wrapper:focus-within{background:#fff3!important;border-color:#ffffff4d!important}body :is(.app-search-page .ant-input-affix-wrapper,.app-search-page .ant-input-group,.app-detail-page .ant-input-search .ant-input-affix-wrapper,.app-detail-page .ant-input-search .ant-input-group),body :is(.app-search-page .ant-input-affix-wrapper:hover,.app-search-page .ant-input-affix-wrapper:active,.app-search-page .ant-input-affix-wrapper:focus-within,.app-search-page .ant-input-group:hover,.app-search-page .ant-input-group:active,.app-search-page .ant-input-group:focus-within,.app-detail-page .ant-input-search .ant-input-affix-wrapper:hover,.app-detail-page .ant-input-search .ant-input-affix-wrapper:active,.app-detail-page .ant-input-search .ant-input-affix-wrapper:focus-within,.app-detail-page .ant-input-search .ant-input-group:hover,.app-detail-page .ant-input-search .ant-input-group:active,.app-detail-page .ant-input-search .ant-input-group:focus-within){background:var(--app-surface)!important;border-color:var(--app-border)!important;box-shadow:none!important}body :is(.app-search-page .ant-input,.app-detail-page .ant-input-search .ant-input),body :is(.app-search-page .ant-input:hover,.app-search-page .ant-input:active,.app-search-page .ant-input:focus,.app-detail-page .ant-input-search .ant-input:hover,.app-detail-page .ant-input-search .ant-input:active,.app-detail-page .ant-input-search .ant-input:focus){background:transparent!important;box-shadow:none!important}}.app-profile-page{background:var(--app-bg)!important}.app-profile-shell{max-width:var(--app-max-width)}.app-profile-page .app-profile-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:112px;margin:0 0 14px!important;overflow:hidden;border:1px solid rgba(28,43,61,.06)!important;border-radius:16px!important;background:radial-gradient(circle at 92% -20%,rgba(0,113,227,.12),transparent 36%),linear-gradient(120deg,#fff,#f8fbff)!important;box-shadow:0 4px 18px #1c2b3d0f!important}.app-profile-hero .ant-card-body{display:flex;align-items:center;justify-content:space-between;gap:28px;width:100%;padding:20px 24px!important}.app-profile-hero__main{display:flex;align-items:center;gap:16px;min-width:0;flex:1 1 auto}.app-profile-avatar{position:relative;display:block;flex:0 0 auto;width:72px;height:72px}.app-profile-avatar__frame,.app-profile-avatar__fallback,.app-profile-avatar__image{width:100%;height:100%;border-radius:50%}.app-profile-avatar__frame{position:relative;overflow:hidden;border:3px solid rgba(255,255,255,.95);background:linear-gradient(135deg,#eaf3fc,#f5f7fa);box-shadow:0 3px 12px #234b781f}.app-profile-avatar__fallback{display:flex;align-items:center;justify-content:center;color:#99a4b3;font-size:28px}.app-profile-avatar__image{position:absolute;inset:0;display:block;-o-object-fit:cover;object-fit:cover}.app-profile-avatar--editable{cursor:pointer}.app-profile-avatar__add{position:absolute;right:-2px;bottom:-1px;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:2px solid #fff;border-radius:50%;background:var(--app-primary);color:#fff;font-size:12px}.app-profile-identity{min-width:0;flex:1 1 auto}.app-profile-name-row{display:flex;align-items:center;gap:8px;max-width:min(620px,100%);min-height:26px;margin-bottom:3px}.app-profile-name{overflow:hidden;color:var(--app-text);font-size:18px;font-weight:700;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.app-profile-name.is-placeholder{color:var(--app-muted)}.app-profile-principal{display:flex;align-items:center;gap:4px;min-height:24px}.app-profile-principal__text{display:block;overflow:hidden;max-width:360px;font-size:12px!important;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.app-profile-copy{width:24px;height:24px;padding:0!important;color:var(--app-muted)!important}.app-profile-bio{display:block;max-width:720px;margin-top:7px;overflow:hidden;color:var(--app-text-secondary);font-size:13px;line-height:1.5;white-space:pre-wrap;text-overflow:ellipsis}.app-profile-hero__stats{display:flex;align-items:stretch;flex:0 0 auto;gap:30px;padding-left:30px;border-left:1px solid rgba(28,43,61,.09)}.app-profile-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:54px;gap:1px}.app-profile-stat strong{color:var(--app-text);font-size:20px;font-weight:700;line-height:1.2}.app-profile-stat span{color:var(--app-text-secondary);font-size:12px;line-height:1.4}.app-profile-content-card{margin:0!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.app-profile-content-card .ant-card-body{padding:0!important}.app-profile-tabs-swipe{width:100%;overflow:visible}.app-profile-content-card .app-profile-tabs-bar{min-height:48px;margin:0 0 16px;padding:0 4px;border-bottom:1px solid rgba(28,43,61,.09);background:#fcfcfce6}.app-profile-content-card .app-profile-tab{height:48px;font-size:15px;font-weight:600}.app-profile-content-card .app-profile-tabs-list{gap:28px}.app-profile-content-card .app-profile-search{flex-basis:260px;width:260px}.app-profile-content-card .app-profile-search .app-unified-search{width:260px}.app-profile-content-card .app-profile-resource-masonry{gap:18px;margin-top:0;padding:0 4px 24px}.app-profile-content-card .app-profile-resource-masonry__column{gap:18px}.app-profile-content-card .app-discover-card{overflow:hidden;border-radius:14px;box-shadow:0 2px 9px #1c2b3d0f}.app-profile-content-card .app-discover-card:hover{box-shadow:0 12px 26px #1c2b3d1f}.app-profile-content-card .app-discover-card__body{padding:12px 13px}.app-profile-content-card .app-discover-card__body h2{font-size:14px;line-height:1.42}.app-profile-content-card .app-discover-card__body p{font-size:12px;line-height:1.55}.app-profile-content-card .app-discover-card__actions{padding:0 11px 10px}@media (min-width: 768px){.app-profile-page .app-page-content{padding-top:18px}.app-profile-page--other .app-profile-hero{min-height:104px}}@media (max-width: 767px){.app-profile-page{background:transparent!important}.app-profile-page .app-page-content{padding-top:0;padding-right:10px;padding-left:10px}.app-profile-page .app-profile-hero{display:block;min-height:0;margin:0 -10px 12px!important;border:0!important;border-radius:0!important;background:radial-gradient(circle at 100% 0%,rgba(0,113,227,.11),transparent 42%),linear-gradient(145deg,#fff,#f6faff)!important;box-shadow:none!important}.app-profile-hero .ant-card-body{display:block;padding:15px 20px 12px!important}.app-profile-hero__main{gap:12px}.app-profile-avatar{width:62px;height:62px}.app-profile-avatar__frame{border-width:2px}.app-profile-avatar__fallback{font-size:24px}.app-profile-avatar__add{width:20px;height:20px;font-size:11px}.app-profile-name{font-size:16px}.app-profile-principal__text{max-width:210px}.app-profile-bio{max-height:42px;margin-top:5px;font-size:12px;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical}.app-profile-hero__stats{display:none}.app-profile-content-card .app-profile-tabs-bar{position:sticky;top:0;z-index:30;min-height:44px;margin:0 -10px 10px;padding:0 10px;border-bottom-color:#1c2b3d14;background:#fcfcfcf0;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px)}.app-profile-content-card .app-profile-tabs-list{gap:20px}.app-profile-content-card .app-profile-tab{height:44px;font-size:14px}.app-profile-content-card .app-profile-search{flex-basis:32px;width:32px}.app-profile-content-card .app-profile-search .app-unified-search{width:100%}.app-profile-content-card .app-profile-resource-masonry{gap:10px;padding:0 0 16px}.app-profile-content-card .app-profile-resource-masonry__column{gap:10px}.app-profile-content-card .app-discover-card{border-radius:11px;box-shadow:0 1px 5px #1c2b3d12}.app-profile-content-card .app-discover-card:hover{box-shadow:0 1px 5px #1c2b3d12}.app-profile-content-card .app-discover-card__body{padding:9px 10px 10px}.app-profile-content-card .app-discover-card__body h2{margin-bottom:4px;font-size:13px;line-height:1.42}.app-profile-content-card .app-discover-card__body p{font-size:11px;line-height:1.5}.app-profile-content-card .app-discover-card__actions{padding:0 8px 7px}.app-profile-content-card .app-profile-empty{min-height:260px}}.app-mobile-post-view{display:none}@media (max-width: 767px){.app-post-detail-page{background:#fff!important}.app-post-detail-page .app-page-content{padding:0 0 12px!important;background:#fff}.app-post-detail-page .app-shell{width:100%!important;max-width:none}.app-post-detail-page .resource-detail-layout{display:block;width:100%;overflow:visible}.app-post-detail-page .resource-detail-main{width:100%;min-width:0}.app-desktop-post-content{display:none!important}.app-mobile-post-view{display:block;min-height:calc(100dvh - env(safe-area-inset-top,0px));padding-top:calc(56px + env(safe-area-inset-top,0px));padding-bottom:calc(70px + env(safe-area-inset-bottom,0px));color:var(--app-text);background:#fff}body.app-pwa-standalone .app-mobile-post-view{padding-top:56px}.app-mobile-post-header{position:fixed;top:0;right:0;left:0;z-index:100;display:flex;align-items:center;gap:8px;height:calc(56px + env(safe-area-inset-top,0px) + var(--app-pwa-top-compensation));padding:calc(env(safe-area-inset-top,0px) + var(--app-pwa-top-compensation)) 12px 0;border-bottom:0;background:#fff}.app-mobile-post-header__back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:36px;padding:0;border:0;background:transparent;color:var(--app-text);-webkit-tap-highlight-color:transparent}.app-mobile-post-header__back svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.app-mobile-post-author{display:inline-flex;align-items:center;min-width:0;gap:8px;color:var(--app-text);text-decoration:none}.app-mobile-post-author__avatar{position:relative;display:inline-block;width:32px;height:32px;flex:0 0 auto;overflow:hidden;border-radius:50%;background:#f0f2f5}.app-mobile-post-author__avatar>img,.app-mobile-post-author__fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%}.app-mobile-post-author__avatar>img{-o-object-fit:cover;object-fit:cover}.app-mobile-post-author__fallback{color:#98a1ae;font-size:15px}.app-mobile-post-author__name{overflow:hidden;max-width:210px;font-size:14px;font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.app-mobile-post-gallery{position:relative;width:100%;overflow:hidden;background:#fff;overflow-anchor:none}.app-mobile-post-gallery__preload{position:absolute;top:0;left:-1px;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.app-mobile-post-gallery__preload>img{display:block;width:1px;height:1px}.app-mobile-post-view{overflow-anchor:none}.app-mobile-post-gallery__viewport{width:100%;overflow:hidden;overscroll-behavior-x:none;touch-action:pan-y;scrollbar-width:none;line-height:0;transition:height .28s cubic-bezier(.22,.61,.36,1);will-change:height;overflow-anchor:none}.app-mobile-post-gallery__viewport::-webkit-scrollbar{display:none;width:0;height:0}.app-mobile-post-gallery__track{display:flex;align-items:flex-start;width:100%;will-change:transform;transition:transform .26s cubic-bezier(.22,.61,.36,1)}.app-mobile-post-gallery__item{display:block;width:100%;flex:0 0 100%;min-height:0;overflow:hidden;padding:0;border:0;background:#f5f6f8;cursor:zoom-in;line-height:0;-webkit-tap-highlight-color:transparent}.app-mobile-post-gallery__item>img{display:block;width:100%;height:auto;max-height:560px;-o-object-fit:contain;object-fit:contain}.app-mobile-post-gallery__dots{position:absolute;bottom:10px;left:50%;display:flex;align-items:center;gap:5px;min-height:14px;padding:3px 7px;border-radius:999px;background:#00000047;transform:translate(-50%)}.app-mobile-post-gallery__dot{width:5px;height:5px;padding:0;border:0;border-radius:50%;background:#ffffff8f;-webkit-tap-highlight-color:transparent}.app-mobile-post-gallery__dot.is-active{width:6px;height:6px;background:#fff}.app-mobile-post-article{padding:16px 14px 0}.app-mobile-post-article h1{margin:0 0 10px;color:var(--app-text);font-size:17px;font-weight:700;line-height:1.45}.app-mobile-post-body{color:var(--app-text);overflow-wrap:anywhere}.app-mobile-post-body .content-render{color:var(--app-text);font-family:var(--app-font-family)!important;font-size:16px!important;line-height:1.75!important;letter-spacing:0!important;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}.app-mobile-post-body .content-render :where([style*=font-family],[face]){font-family:var(--app-font-family)!important}.app-mobile-post-body .content-render :where([style*=font-size],[size]){font-size:inherit!important}.app-mobile-post-body .content-render :where([style*=line-height]){line-height:inherit!important}.app-mobile-post-body .content-render h1,.app-mobile-post-body .content-render h2,.app-mobile-post-body .content-render h3,.app-mobile-post-body .content-render h4,.app-mobile-post-body .content-render h5,.app-mobile-post-body .content-render h6{font-family:var(--app-font-family)!important;line-height:1.4!important}.app-mobile-post-body .content-render h1{font-size:20px!important}.app-mobile-post-body .content-render h2{font-size:18px!important}.app-mobile-post-body .content-render h3{font-size:17px!important}.app-mobile-post-body .content-render h4,.app-mobile-post-body .content-render h5,.app-mobile-post-body .content-render h6{font-size:16px!important}.app-mobile-post-body .content-render p{margin-bottom:9px}.app-mobile-post-body .content-render img,.app-mobile-post-body .content-render video{max-width:100%;border-radius:8px}.app-mobile-post-body .app-video-list,.app-mobile-post-body .app-video-player-list{margin-top:12px}.app-mobile-post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;margin-top:18px;padding:12px 0 16px;border-top:1px solid rgba(28,43,61,.07);color:var(--app-muted);font-size:12px;line-height:1.5}.app-mobile-post-meta__categories{display:inline-flex;flex-wrap:wrap;gap:6px}.app-mobile-post-meta__categories a,.app-mobile-post-meta__categories span{color:var(--app-text-secondary);text-decoration:none}.app-mobile-post-meta__categories a:before,.app-mobile-post-meta__categories span:before{content:"#";color:var(--app-primary)}.app-mobile-post-comments{padding:16px 14px 0;border-top:8px solid #f7f8fa}.app-comment-list--mobile .app-comment-list__heading{margin-bottom:3px!important}.app-comment-list--mobile .app-comment-list__title{color:var(--app-text);font-size:16px!important;font-weight:700}.app-comment-list--mobile .app-comment-node--root{padding:14px 0 13px!important;border:0!important;border-bottom:1px solid rgba(28,43,61,.07)!important;border-radius:0!important;background:transparent!important}.app-comment-list--mobile .app-comment-node--child{margin-top:10px!important;padding:9px 0 0 30px!important;border:0!important;border-radius:0!important;background:transparent!important}.app-comment-list--mobile .app-comment-node__head{gap:7px!important;min-width:0;flex-wrap:nowrap!important}.app-comment-list--mobile .app-comment-node__head>a{color:var(--app-text)!important;font-size:13px!important;font-weight:600!important}.app-comment-list--mobile .app-comment-node__author,.app-comment-list--mobile .app-comment-node__reply-context,.app-comment-list--mobile .app-comment-node__reply-target{display:inline-flex!important;align-items:center;min-width:0;white-space:nowrap}.app-comment-list--mobile .app-comment-node__author{flex:0 1 auto}.app-comment-list--mobile .app-comment-node__reply-context{flex:1 1 auto;gap:4px!important}.app-comment-list--mobile .app-comment-node__author-name{overflow:hidden;min-width:0;text-overflow:ellipsis}.app-comment-list--mobile .app-comment-node__content{padding-left:31px!important;color:var(--app-text)!important;font-size:14px!important;line-height:1.55!important}.app-comment-list--mobile .app-comment-node__meta{gap:9px!important;margin-top:5px!important;margin-bottom:0!important;padding-left:31px!important}.app-comment-list--mobile .app-comment-node__meta .ant-typography{color:var(--app-muted)!important;font-size:11px!important}.app-comment-list--mobile .app-comment-node__meta .ant-btn{color:var(--app-text-secondary)!important;font-size:11px!important}.app-mobile-post-toolbar{position:fixed;right:0;top:calc(var(--app-visual-bottom, 100vh) - 58px - var(--app-mobile-toolbar-bottom-inset, env(safe-area-inset-bottom, 0px)));left:0;z-index:1100;display:flex;align-items:center;gap:8px;min-height:58px;height:calc(58px + var(--app-mobile-toolbar-bottom-inset, env(safe-area-inset-bottom, 0px)));box-sizing:border-box;padding:8px 12px calc(8px + var(--app-mobile-toolbar-bottom-inset, env(safe-area-inset-bottom, 0px)));border-top:0;background:#fff;box-shadow:none;transition:none}.app-mobile-post-toolbar__input-wrap{min-width:0;flex:1 1 auto}.app-mobile-post-toolbar__input.ant-input{width:100%;height:38px;padding:0 14px;border:0!important;border-radius:20px;background:#f1f2f4!important;box-shadow:none!important;color:var(--app-text);font-size:14px}.app-mobile-post-toolbar__input.ant-input:focus,.app-mobile-post-toolbar__input.ant-input:focus-visible{border:0!important;background:#f1f2f4!important;box-shadow:none!important;outline:none!important}.app-mobile-post-toolbar__action{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 38px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--app-text);font-size:15px;font-weight:600;-webkit-tap-highlight-color:transparent}.app-mobile-post-toolbar__action.is-active{color:var(--app-primary)}.app-post-detail-page .resource-detail-mobile-ads{display:none!important;margin:0!important;padding:14px;border-top:8px solid #f7f8fa}.app-image-viewer{width:100vw;padding:0!important;border-radius:0!important}.app-image-viewer__stage{width:100vw;border-radius:0!important;overflow:hidden}.app-image-viewer__shell,.app-image-viewer__image{width:100vw!important;max-width:100vw!important;height:auto!important;max-height:none!important;border-radius:0!important}}body .app-unified-search.ant-input-affix-wrapper{display:inline-flex;align-items:center;width:100%;height:32px;padding:0 12px;border:1px solid transparent!important;border-radius:20px!important;background:#0000000a!important;box-shadow:none!important;transition:background var(--app-transition-fast)}body .app-unified-search.ant-input-affix-wrapper:hover,body .app-unified-search.ant-input-affix-wrapper:active,body .app-unified-search.ant-input-affix-wrapper:focus,body .app-unified-search.ant-input-affix-wrapper:focus-within{border-color:transparent!important;box-shadow:none!important}body .app-unified-search.ant-input-affix-wrapper:hover{background:#0000000f!important}body .app-unified-search.ant-input-affix-wrapper:focus-within,body .app-unified-search.ant-input-affix-wrapper:active{background:#0000000a!important}body .app-unified-search .ant-input{min-width:0;height:100%;padding:0!important;border:none!important;background:transparent!important;color:var(--app-text)!important;box-shadow:none!important;font-size:var(--app-font-size-sm)!important;line-height:30px!important}body .app-unified-search .ant-input::-moz-placeholder{color:var(--app-muted)!important}body .app-unified-search .ant-input::placeholder{color:var(--app-muted)!important}body .app-unified-search .ant-input-suffix{display:inline-flex;align-items:center;color:var(--app-muted)!important;font-size:14px}body .app-header-search-mobile .app-unified-search{width:100%}body .app-search-page__bar-inner .app-unified-search{flex:1 1 auto;min-width:0}body .app-header-inline-search.app-unified-search{width:clamp(198px,16vw,228px)}.app-profile-tabs-swipe{width:100%}.app-profile-tabs-bar{display:flex;align-items:center;gap:12px;width:100%;min-height:40px;margin-bottom:12px;border-bottom:1px solid var(--app-border)}.app-profile-tabs-list{display:flex;align-items:stretch;gap:24px;min-width:0}.app-profile-tab{position:relative;display:inline-flex;align-items:center;height:40px;padding:0;border:none;background:transparent;color:var(--app-text);font:inherit;font-size:var(--app-font-size-base);font-weight:500;line-height:1.4;white-space:nowrap;cursor:pointer}.app-profile-tab.is-active{color:var(--app-primary);font-weight:600}.app-profile-tab.is-active:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px;background:var(--app-primary);content:""}.app-profile-search{flex:0 0 280px;width:280px;height:32px;margin-left:0;overflow:hidden;transition:width var(--app-transition-fast),flex-basis var(--app-transition-fast)}.app-profile-search .app-unified-search{width:280px}.app-profile-search__toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--app-text-secondary);font-size:16px;cursor:pointer;-webkit-tap-highlight-color:transparent}.app-profile-search__toggle:hover,.app-profile-search__toggle:active,.app-profile-search__toggle:focus,.app-profile-search__toggle:focus-visible{background:#0000000a;color:var(--app-text)}.app-profile-empty{display:flex;align-items:center;justify-content:center;min-height:300px;width:100%}@media (max-width: 767px){.app-profile-tabs-bar{gap:6px;min-height:36px;margin-bottom:10px}.app-profile-tabs-list{gap:20px;flex:0 0 auto}.app-profile-tab{height:36px;font-size:14px}.app-profile-search{flex:0 0 32px;width:32px;height:32px}.app-profile-search.is-open{flex:0 1 clamp(128px,calc(100vw - 190px),220px);width:clamp(128px,calc(100vw - 190px),220px);min-width:0}.app-profile-search.is-open .app-unified-search{width:100%}.app-profile-empty{min-height:240px}}@media (min-width: 768px){body .app-unified-search.ant-input-affix-wrapper,body .app-unified-search.ant-input-affix-wrapper:hover,body .app-unified-search.ant-input-affix-wrapper:active,body .app-unified-search.ant-input-affix-wrapper:focus,body .app-unified-search.ant-input-affix-wrapper:focus-within{border-color:var(--app-border)!important}}@media (max-width: 767px){body.app-pwa-standalone .app-header:not(.app-header--hero),body.app-pwa-standalone .app-header:not(.app-header--hero):hover{background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body.app-pwa-standalone .app-search-page__bar{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}body .app-search-page .app-unified-search.ant-input-affix-wrapper,body .app-search-page .app-unified-search.ant-input-affix-wrapper:hover,body .app-search-page .app-unified-search.ant-input-affix-wrapper:active,body .app-search-page .app-unified-search.ant-input-affix-wrapper:focus,body .app-search-page .app-unified-search.ant-input-affix-wrapper:focus-within{height:32px;border-color:transparent!important;border-radius:20px!important;background:#0000000a!important;box-shadow:none!important}body :is(button,.ant-btn,[role=button]):focus,body :is(button,.ant-btn,[role=button]):focus-visible,body :is(button,.ant-btn,[role=button]):active{outline:none!important;border-color:transparent!important;box-shadow:none!important}body .app-search-page__bar .ant-btn,body .app-search-page__bar .ant-btn:hover,body .app-search-page__bar .ant-btn:active,body .app-search-page__bar .ant-btn:focus,body .app-search-page__bar .ant-btn:focus-visible{border:none!important;background:transparent!important;box-shadow:none!important}}
