/* XBLUEMAN 2.0 / 小蓝人 - blue-white card portal theme for Discuz! X5 */
:root{--xb-blue:#1d5bff;--xb-blue-d:#1446cc;--xb-sky:#eaf1ff;--xb-sky2:#d6e3ff;--xb-bg:#f4f7fc;--xb-card:#fffffe;--xb-ink:#14244a;--xb-mid:#56627e;--xb-mute:#8592ad;--xb-line:#e2e9f6;--xb-coral:#ff6b4a;--xb-sun:#ffb84a;--xb-r:18px;--xb-r-s:12px;--xb-sh:0 1px 2px rgba(20,36,74,.05),0 8px 24px -12px rgba(29,91,255,.18);--xb-sh-h:0 2px 4px rgba(20,36,74,.06),0 18px 40px -16px rgba(29,91,255,.32);--xb-font:"PingFang SC","HarmonyOS Sans SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif}
body.xb{margin:0;min-width:0!important;width:100%;background:var(--xb-bg);color:var(--xb-ink);font:15px/1.65 var(--xb-font);-webkit-font-smoothing:antialiased;min-height:100dvh;overflow-wrap:anywhere}
body.xb a{color:inherit;text-decoration:none}
body.xb a:hover{color:var(--xb-blue)}
body.xb :focus-visible{outline:3px solid var(--xb-blue);outline-offset:2px;border-radius:8px}
.xb img{max-width:100%}
.xb-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.xb-skip{position:absolute;left:12px;top:-60px;z-index:999;background:var(--xb-blue);color:#fffffe!important;padding:8px 14px;border-radius:10px}
.xb-skip:focus{top:12px}
.xb-wrap{width:min(1200px,100% - 32px);margin-inline:auto}
.xb-main{padding-bottom:48px;outline:none}
/* header */
.xb-top{position:sticky;top:0;z-index:300;background:rgba(255,255,254,.86);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s}
.xb-top.xb-scrolled{border-color:var(--xb-line)}
.xb-top-in{display:flex;align-items:center;gap:20px;height:66px}
.xb-brand{display:flex;align-items:center;gap:10px;flex:none}
.xb-brand span{display:flex;flex-direction:column;line-height:1.1}
.xb-brand b{font-size:18px;letter-spacing:.04em}
.xb-brand i{font-style:normal;font-size:10px;letter-spacing:.24em;color:var(--xb-blue);font-weight:700}
.xb-nav{flex:1;min-width:0}
.xb-nav ul{display:flex;gap:4px;margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}
.xb-nav li a{display:block;padding:8px 14px;border-radius:999px;color:var(--xb-mid);white-space:nowrap;font-weight:500}
.xb-nav li a:hover{background:var(--xb-sky);color:var(--xb-blue)}
.xb-nav li.a a{background:var(--xb-blue);color:#fffffe}
.xb-nav li a span{display:none}
.xb-search{display:flex;align-items:center;background:var(--xb-sky);border-radius:999px;padding:0 4px 0 14px;flex:0 1 230px;border:1.5px solid transparent;transition:border-color .2s}
.xb-search:focus-within{border-color:var(--xb-blue);background:#fffffe}
.xb-search input{border:0;background:none;outline:0;height:38px;width:100%;font:inherit;font-size:14px;color:var(--xb-ink)}
.xb-search button{border:0;background:none;color:var(--xb-blue);width:34px;height:34px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.xb-user{display:flex;align-items:center;gap:8px;flex:none}
.xb-avatar img,.xb-mini-av img,.xb-av img{border-radius:50%;display:block;object-fit:cover}
.xb-avatar img{width:34px;height:34px}
.xb-uname{font-weight:600;max-width:8em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xb-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--xb-coral);margin-left:4px;vertical-align:top}
.xb-btn,.xb-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 16px;border-radius:999px;font-weight:600;font-size:14px;transition:transform .15s,background .15s,box-shadow .15s;white-space:nowrap;border:0;cursor:pointer}
body.xb .xb-btn{background:var(--xb-blue);color:#fffffe;box-shadow:0 6px 16px -6px rgba(29,91,255,.6)}
body.xb .xb-btn:hover{background:var(--xb-blue-d);color:#fffffe;transform:translateY(-1px)}
body.xb .xb-ghost{background:var(--xb-sky);color:var(--xb-blue)}
body.xb .xb-ghost:hover{background:var(--xb-sky2)}
.xb-btn-l{height:46px;padding:0 24px;font-size:15px}
.xb-menu{display:none;width:42px;height:42px;border:0;border-radius:12px;background:var(--xb-sky);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.xb-menu span:not(.xb-sr){width:18px;height:2px;background:var(--xb-blue);border-radius:2px}
/* hero */
.xb-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center;padding:48px 0 24px}
.xb-kicker{margin:0 0 10px;font-size:12px;letter-spacing:.2em;color:var(--xb-blue);font-weight:700}
.xb-hero h1{font-size:clamp(32px,5vw,56px);line-height:1.12;margin:0 0 16px;letter-spacing:-.01em}
.xb-hero h1 span{color:var(--xb-blue);background:linear-gradient(transparent 62%,#ffe2a8 62%,#ffe2a8 90%,transparent 90%)}
.xb-lede{color:var(--xb-mid);font-size:17px;max-width:30em;margin:0 0 24px}
.xb-hero-act{display:flex;gap:10px;flex-wrap:wrap}
.xb-hero-art img{width:100%;max-width:460px;display:block;margin-left:auto;animation:xbFloat 7s ease-in-out infinite}
@keyframes xbFloat{50%{transform:translateY(-8px)}}
/* sections */
.xb-sec{margin-top:36px}
.xb-sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 14px}
.xb-sec-h h2{margin:0;font-size:22px;position:relative;padding-left:14px}
.xb-sec-h h2:before{content:"";position:absolute;left:0;top:.3em;bottom:.3em;width:5px;border-radius:4px;background:var(--xb-blue)}
.xb-sec-h > a{color:var(--xb-blue);font-weight:600;font-size:14px}
.xb-muted{color:var(--xb-mute);font-size:13px}
.xb-tag{display:inline-block;font-style:normal;font-size:12px;font-weight:600;padding:2px 10px;border-radius:999px;background:var(--xb-sky);color:var(--xb-blue);vertical-align:middle}
.xb-tag-w{background:#ffeee9;color:#c6432a}
.xb-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;color:var(--xb-mute);font-size:13px}
.xb-meta a:hover{color:var(--xb-blue)}
/* news */
.xb-news{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;align-items:start}
.xb-headlines:empty{display:none}
.xb-lead{display:block;background:var(--xb-card);border-radius:var(--xb-r);overflow:hidden;box-shadow:var(--xb-sh);transition:box-shadow .2s,transform .2s}
a.xb-lead:hover{box-shadow:var(--xb-sh-h);transform:translateY(-2px)}
.xb-lead img,.xb-lead .xb-ph{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.xb-lead-t{padding:18px 22px 22px}
.xb-lead-t h3{font-size:22px;line-height:1.35;margin:10px 0 8px}
.xb-lead-t p{color:var(--xb-mid);margin:0 0 10px}
.xb-lead-t span{color:var(--xb-mute);font-size:13px}
.xb-headlines{list-style:none;margin:0;padding:6px;background:var(--xb-card);border-radius:var(--xb-r);box-shadow:var(--xb-sh);counter-reset:h}
.xb-headlines li{counter-increment:h}
.xb-headlines a,.xb-hl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;padding:14px 14px 14px 46px;border-radius:var(--xb-r-s);position:relative}
.xb-headlines a:before,.xb-hl:before{content:counter(h,decimal-leading-zero);position:absolute;left:14px;top:14px;font-weight:800;color:var(--xb-sky2);font-size:18px}
.xb-headlines li:nth-child(-n+3) a:before{color:var(--xb-blue)}
.xb-headlines a:hover{background:var(--xb-bg)}
.xb-headlines b{grid-column:1/-1;font-weight:600;line-height:1.45}
.xb-headlines em{justify-self:start}
.xb-headlines span{color:var(--xb-mute);font-size:12px;align-self:center}
.xb-ph{background:radial-gradient(circle at 30% 30%,#cfe0ff,transparent 60%),linear-gradient(135deg,#e6efff,#f7faff);min-height:120px}
.xb-ph-t{aspect-ratio:3/4}
/* masonry cards */
.xb-masonry{columns:4 240px;column-gap:16px}
.xb-card{display:block;break-inside:avoid;margin:0 0 16px;background:var(--xb-card);border-radius:var(--xb-r);overflow:hidden;box-shadow:var(--xb-sh);transition:box-shadow .2s,transform .2s}
.xb-card:hover{box-shadow:var(--xb-sh-h);transform:translateY(-3px)}
.xb-card-link{display:block}
.xb-card-img{display:block;width:100%;max-height:420px;object-fit:cover;background:var(--xb-sky)}
.xb-card-b{padding:12px 14px}
.xb-card-foot{padding-top:0}
.xb-card h3{font-size:15px;line-height:1.5;margin:0;font-weight:600;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.xb-card-m{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:13px;color:var(--xb-mid)}
.xb-mini-av{flex:none}
.xb-mini-av img{width:22px;height:22px}
.xb-au{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.xb-num{margin-left:auto;color:var(--xb-mute);white-space:nowrap}
.xb-card-f{display:flex;justify-content:space-between;gap:8px;margin:8px 0 0;font-size:12px;color:var(--xb-mute)}
.xb-card-f a{color:var(--xb-blue)}
.xb-is-demo{opacity:.82}
.xb-demo-band{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 16px;margin:0 0 14px;border-radius:var(--xb-r-s);background:#fff7e8;border:1px dashed #f3c46e;color:#7a5413;font-size:14px}
.xb-demo-band strong{background:#ffb84a;color:#3d2a05;padding:1px 10px;border-radius:999px;font-size:12px}
.xb-demo-band a{color:var(--xb-blue);font-weight:600;margin-left:auto}
/* crumbs + layout */
.xb-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:18px 0 4px;font-size:13px;color:var(--xb-mute)}
.xb-crumb i{font-style:normal;color:var(--xb-sky2)}
.xb-crumb em{display:none}
.xb-crumb a{color:var(--xb-mid)}
.xb-cols{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;margin-top:14px;align-items:start}
.xb-col-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:84px}
.xb-panel{background:var(--xb-card);border-radius:var(--xb-r);padding:18px;box-shadow:var(--xb-sh);display:flex;flex-direction:column;gap:12px}
.xb-panel h3{margin:0;font-size:15px}
.xb-panel p{margin:0;color:var(--xb-mid);font-size:14px}
.xb-panel-blue{background:linear-gradient(160deg,#e3ecff,#f5f8ff);box-shadow:none;border:1px solid var(--xb-sky2)}
.xb-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.xb-panel .xb-chips{margin:0}
.xb-chips a{padding:6px 14px;border-radius:999px;background:var(--xb-card);border:1px solid var(--xb-line);font-size:13px;color:var(--xb-mid)}
.xb-chips a:hover{border-color:var(--xb-blue);color:var(--xb-blue)}
.xb-page-h{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}
.xb-page-h h1{margin:0;font-size:30px}
.xb-page-act{display:flex;gap:8px}
/* article list */
.xb-alist{display:flex;flex-direction:column;gap:14px}
.xb-arow{display:flex;gap:18px;background:var(--xb-card);border-radius:var(--xb-r);padding:16px;box-shadow:var(--xb-sh);transition:box-shadow .2s}
.xb-arow:hover{box-shadow:var(--xb-sh-h)}
.xb-arow-img{flex:none;width:220px;border-radius:var(--xb-r-s);overflow:hidden;aspect-ratio:4/3;background:var(--xb-sky)}
.xb-arow-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.xb-arow:hover .xb-arow-img img{transform:scale(1.04)}
.xb-arow-b{min-width:0;display:flex;flex-direction:column;gap:8px}
.xb-arow h2{margin:0;font-size:19px;line-height:1.4}
.xb-arow p{margin:0;color:var(--xb-mid);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.xb-arow .xb-meta{margin-top:auto}
.xb-empty{text-align:center;padding:56px 20px;background:var(--xb-card);border-radius:var(--xb-r);box-shadow:var(--xb-sh)}
.xb-empty h2{margin:14px 0 6px;font-size:20px}
.xb-empty p{margin:0;color:var(--xb-mid)}
/* reading */
.xb-read{background:var(--xb-card);border-radius:var(--xb-r);padding:clamp(20px,4vw,44px);box-shadow:var(--xb-sh)}
.xb-read-h h1{font-size:clamp(24px,3.4vw,34px);line-height:1.3;margin:12px 0 14px}
.xb-sum{margin:20px 0 0;padding:14px 18px;border-radius:var(--xb-r-s);background:var(--xb-sky);color:#2b3f72;border-left:4px solid var(--xb-blue)}
.xb-prose{font-size:17px;line-height:1.9;margin-top:22px;word-wrap:break-word;overflow-wrap:anywhere}
.xb-prose img{height:auto;border-radius:12px}
.xb-prose a{color:var(--xb-blue);text-decoration:underline;text-underline-offset:3px}
.xb-prose table{max-width:100%;display:block;overflow-x:auto}
.xb-prose blockquote,.xb-prose .quote{margin:14px 0;padding:10px 16px;border-radius:12px;background:var(--xb-bg);border-left:3px solid var(--xb-sky2);color:var(--xb-mid)}
.xb-prose pre,.xb-prose .blockcode{overflow-x:auto;background:#f0f4fb;border-radius:12px;padding:12px;font-size:14px}
.xb-read .xb-chips{margin-top:20px}
.xb-actions{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0;padding-top:18px;border-top:1px solid var(--xb-line)}
.xb-prenext{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.xb-prenext a{padding:14px;border-radius:var(--xb-r-s);background:var(--xb-bg);font-weight:500}
.xb-prenext small{display:block;color:var(--xb-mute);font-size:12px}
.xb-next{text-align:right;grid-column:2}
.xb-rel,.xb-toc{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}
.xb-read > .xb-panel{box-shadow:none;background:var(--xb-bg);margin-top:20px}
.xb-comments{margin-top:28px}
/* forum index */
.xb-stats{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;padding:16px 20px;background:var(--xb-card);border-radius:var(--xb-r);box-shadow:var(--xb-sh)}
.xb-stats > div{display:flex;flex-direction:column;padding-right:22px}
.xb-stats b{font-size:24px;color:var(--xb-blue);line-height:1.1;font-variant-numeric:tabular-nums}
.xb-stats span{font-size:12px;color:var(--xb-mute)}
.xb-stats .xb-stats-act{flex-direction:row;gap:8px;margin-left:auto;padding:0}
.xb-notice{display:flex;gap:12px;align-items:flex-start;margin-top:12px;padding:12px 16px;border-radius:var(--xb-r-s);background:var(--xb-sky);font-size:14px}
.xb-notice strong{color:var(--xb-blue);flex:none}
.xb-notice ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px 16px}
.xb-notice li em{display:none}
.xb-forums{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.xb-forum{display:flex;gap:14px;align-items:flex-start;padding:16px;background:var(--xb-card);border-radius:var(--xb-r);box-shadow:var(--xb-sh);transition:box-shadow .2s,transform .2s}
.xb-forum:hover{box-shadow:var(--xb-sh-h);transform:translateY(-2px)}
.xb-forum-ic{flex:none;width:48px;height:48px;border-radius:14px;background:var(--xb-sky);color:var(--xb-blue);display:grid;place-items:center;font-weight:800;overflow:hidden}
.xb-forum-ic img{width:100%;height:100%;object-fit:cover}
.xb-forum:nth-child(3n+2) .xb-forum-ic{background:#e6f6ff;color:#0a7cc4}
.xb-forum:nth-child(3n) .xb-forum-ic{background:#fff1e6;color:#c4620a}
.xb-forum-b{display:flex;flex-direction:column;gap:4px;min-width:0}
.xb-forum-b b{font-size:16px}
.xb-forum-b small{color:var(--xb-mid);font-size:13px}
.xb-today{font-style:normal;font-size:12px;color:var(--xb-coral);font-weight:700}
.xb-forum-s{box-shadow:none;padding:0}
.xb-online{margin-top:28px;color:var(--xb-mute);font-size:13px;text-align:center}
/* guide */
.xb-guide-h{padding:32px 0 18px}
.xb-guide-h h1{margin:0 0 16px;font-size:clamp(28px,4vw,40px)}
.xb-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.xb-tabs a{flex:none;padding:8px 18px;border-radius:999px;background:var(--xb-card);border:1px solid var(--xb-line);font-weight:600;color:var(--xb-mid)}
.xb-tabs a[aria-current]{background:var(--xb-blue);color:#fffffe;border-color:var(--xb-blue)}
/* thread */
.xb-thread-h{background:var(--xb-card);border-radius:var(--xb-r);padding:22px 24px;box-shadow:var(--xb-sh)}
.xb-thread-h h1{margin:8px 0 10px;font-size:clamp(22px,3vw,30px);line-height:1.35}
.xb-modbar{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.xb-modbar a{padding:4px 12px;border-radius:999px;background:#fff1ec;color:#b63e26;font-size:13px}
.xb-posts{display:flex;flex-direction:column;gap:14px;margin-top:14px}
.xb-post{background:var(--xb-card);border-radius:var(--xb-r);padding:20px 24px;box-shadow:var(--xb-sh)}
.xb-post-first{border-top:4px solid var(--xb-blue)}
.xb-post-h{display:flex;align-items:center;gap:12px}
.xb-post-h > div{display:flex;flex-direction:column;min-width:0}
.xb-av img,.xb-av-anon{width:42px;height:42px;border-radius:50%}
.xb-av-anon{display:block;background:var(--xb-sky)}
.xb-floor{margin-left:auto;font-size:12px;font-weight:700;color:var(--xb-blue);background:var(--xb-sky);padding:3px 10px;border-radius:999px}
.xb-post .xb-prose{font-size:16px;margin-top:14px}
.xb-post:not(.xb-post-first) .xb-prose{font-size:15px}
.xb-post-f{display:flex;gap:16px;justify-content:flex-end;margin-top:12px;font-size:13px;color:var(--xb-mute)}
.xb-attnote{margin:10px 0 0}
.xb-replybar{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.xb-pg{margin-top:18px}
.xb .pgs .pg a,.xb .pgs .pg strong,.xb .pg a,.xb .pg strong{border-radius:10px}
.xb .pg strong{background:var(--xb-blue);color:#fffffe;border-color:var(--xb-blue)}
/* footer */
.xb-foot{background:#e9f0fc;border-top:1px solid var(--xb-line);margin-top:24px}
.xb-foot-in{display:flex;flex-direction:column;gap:14px;padding:32px 0 28px;font-size:13px;color:var(--xb-mid)}
.xb-foot-brand{display:flex;gap:12px;align-items:center}
.xb-foot-brand p{margin:2px 0 0}
.xb-foot-nav{display:flex;flex-wrap:wrap;gap:6px 18px}
.xb-foot-nav a:hover{color:var(--xb-blue)}
.xb-copy{margin:0;color:var(--xb-mute)}
.xb-copy em{font-style:normal}
.xb-tab{display:none}
/* motion */
.xb-rise{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.xb-rise.xb-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.xb-rise{opacity:1;transform:none}}
/* responsive */
@media (max-width:1024px){.xb-cols{grid-template-columns:1fr}.xb-col-side{position:static}.xb-search{flex-basis:160px}}
@media (max-width:860px){
 .xb-menu{display:flex}
 .xb-nav{position:absolute;left:0;right:0;top:66px;background:var(--xb-card);border-bottom:1px solid var(--xb-line);box-shadow:0 18px 30px -20px rgba(20,36,74,.3);padding:10px 16px 16px;display:none}
 .xb-nav.xb-open{display:block}
 .xb-nav ul{flex-direction:column}
 .xb-nav li a{padding:12px 14px;border-radius:12px}
 .xb-hero{grid-template-columns:1fr;padding-top:28px}
 .xb-hero-art{display:none}
 .xb-news{grid-template-columns:1fr}
 .xb-search{display:none}
}
@media (max-width:767px){
 body.xb{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
 .xb-wrap{width:calc(100% - 24px)}
 .xb-top-in{height:58px;gap:10px}
 .xb-nav{top:58px}
 .xb-brand i,.xb-uname,.xb-hide-s{display:none}
 .xb-user{margin-left:auto}
 .xb-masonry{columns:2;column-gap:10px}
 .xb-card{margin-bottom:10px;border-radius:14px}
 .xb-card h3{font-size:14px}
 .xb-arow{flex-direction:column;padding:12px}
 .xb-arow-img{width:100%;aspect-ratio:16/9}
 .xb-stats > div{padding-right:12px}
 .xb-stats .xb-stats-act{width:100%;margin:6px 0 0}
 .xb-post{padding:16px}
 .xb-prose{font-size:16px}
 .xb-prenext{grid-template-columns:1fr}.xb-next{grid-column:auto;text-align:left}
 .xb-tab{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:310;background:rgba(255,255,254,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--xb-line);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
 .xb-tab a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--xb-mute);padding:4px 0;border-radius:10px}
 .xb-tab svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
 .xb-tab a[aria-current]{color:var(--xb-blue)}
 .xb-tab a[aria-current] svg{fill:var(--xb-sky)}
 #scrolltop,.dz_rnav{display:none!important}
}

.xb-attach{margin-top:16px;padding:14px;border-radius:14px;background:var(--xb-bg);border:1px solid var(--xb-line);font-size:14px;overflow-x:auto}
.xb-attach img{height:auto;border-radius:10px}
.xb-attach-deny{display:flex;gap:10px;align-items:center;color:var(--xb-mid)}
.xb-attach-deny strong,.xb-attach-deny a{color:var(--xb-blue);font-weight:600}

/* v2.1 readability + native comment form */
.xb-arow h2 a:hover{color:var(--xb-blue)}
.xb-arow p:empty{display:none}
.xb-read{max-width:100%}
.xb-prose{max-width:42em;color:#1d2b4f;letter-spacing:.01em}
.xb-prose p{margin:0 0 1.1em}
.xb-prose h2,.xb-prose h3{line-height:1.4;margin:1.6em 0 .6em}
.xb-prose img{display:block;margin:1em auto}
.xb-prose ul,.xb-prose ol{padding-left:1.4em}
.xb-sum{font-size:15px;line-height:1.75}
.xb-comments h2,.xb-comments h3,.xb-comments .bm_h{font-size:18px;margin:0 0 12px;background:none;border:0;padding:0}
.xb-comments .bm,.xb-comments .bm_c{border:0;background:none;padding:0}
.xb-comments dl,.xb-comments .ptm{padding:14px 0;border-bottom:1px solid var(--xb-line);margin:0}
.xb-comments textarea,.xb-comments input[type=text],.xb-comments .pt{width:100%;box-sizing:border-box;border:1.5px solid var(--xb-line);border-radius:var(--xb-r-s);background:var(--xb-bg);padding:12px 14px;font:inherit;font-size:15px;color:var(--xb-ink);min-height:44px}
.xb-comments textarea{min-height:120px;resize:vertical}
.xb-comments textarea:focus,.xb-comments input[type=text]:focus{outline:0;border-color:var(--xb-blue);background:var(--xb-card)}
.xb-comments form{margin-top:16px;padding:16px;border-radius:var(--xb-r);background:var(--xb-sky);display:flex;flex-direction:column;gap:10px}
.xb-comments button,.xb-comments .pn{align-self:flex-start;height:40px;padding:0 22px;border:0;border-radius:999px;background:var(--xb-blue);color:#fffffe;font:inherit;font-weight:600;cursor:pointer}
.xb-comments button:hover,.xb-comments .pn:hover{background:var(--xb-blue-d)}
.xb-comments .pn em,.xb-comments .pn strong{color:#fffffe;font-style:normal}
.xb-guide-empty{text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.xb-guide-empty .xb-chips{margin:4px 0 0}
@media (max-width:767px){.xb-masonry{columns:1}.xb-page-h h1{font-size:24px}.xb-arow h2{font-size:17px}.xb-prose{line-height:1.85}.xb-comments form{padding:12px}.xb-page-act{flex-wrap:wrap}}
@media (min-width:480px) and (max-width:767px){.xb-masonry{columns:2}}

/* v2.2 compact home + forumdisplay */
.xb-hero-c{padding:28px 0 8px}
.xb-hero-c h1{font-size:clamp(28px,4vw,44px)}
.xb-hero-c .xb-hero-art img{max-width:340px}
.xb-lead-np .xb-lead-t{padding-top:22px;border-top:4px solid var(--xb-blue)}
.xb-lead-np .xb-lead-t h3{font-size:26px}
.xb-news-single{grid-template-columns:minmax(0,1fr)}
.xb-t-b h3{word-break:normal;overflow-wrap:anywhere}
.xb-fd-h{display:flex;align-items:center;gap:16px;margin-top:10px;padding:20px 22px;background:var(--xb-card);border-radius:var(--xb-r);box-shadow:var(--xb-sh)}
.xb-fd-h .xb-forum-ic{width:56px;height:56px;font-size:18px}
.xb-fd-t{flex:1;min-width:0}
.xb-fd-t h1{margin:0;font-size:24px;line-height:1.3}
.xb-fd-t p{margin:4px 0 6px;color:var(--xb-mid);font-size:14px}
.xb-fd-t .xb-meta b{color:var(--xb-ink)}
.xb-fd-tabs{margin-bottom:12px}
.xb-tlist{list-style:none;margin:0;padding:6px;background:var(--xb-card);border-radius:var(--xb-r);box-shadow:var(--xb-sh)}
.xb-tlist li{display:flex;gap:14px;align-items:center;padding:14px;border-radius:var(--xb-r-s)}
.xb-tlist li+li{border-top:1px solid var(--xb-line)}
.xb-tlist li:hover{background:var(--xb-bg)}
.xb-tlist .xb-av{flex:none}
.xb-tlist .xb-av img,.xb-tlist .xb-av-anon{width:38px;height:38px}
.xb-t-b{flex:1;min-width:0}
.xb-t-b h3{margin:0 0 4px;font-size:16px;font-weight:600;line-height:1.5}
.xb-t-b h3 .xb-muted{margin-left:6px;font-weight:400}
.xb-t-b h3 a:hover{color:var(--xb-blue)}
.xb-t-pg{font-size:12px;font-weight:400;margin-left:6px}
.xb-t-pg a{color:var(--xb-mute);margin-right:4px}
.xb-t-top{background:#f6f9ff}
.xb-t-n{flex:none;display:flex;flex-direction:column;align-items:center;min-width:64px;line-height:1.2}
.xb-t-n b{font-size:18px;color:var(--xb-blue);font-variant-numeric:tabular-nums}
.xb-t-n span,.xb-t-n small{font-size:12px;color:var(--xb-mute)}
@media (max-width:767px){.xb-fd-h{flex-wrap:wrap;padding:16px}.xb-fd-h .xb-page-act{width:100%}.xb-tlist li{padding:12px 8px;gap:10px}.xb-tlist .xb-av{display:none}.xb-t-n{min-width:44px}.xb-t-n small{display:none}}

/* v3 editorial portal front */
.xb-lang select{height:34px;border:1.5px solid var(--xb-line);border-radius:999px;background:var(--xb-card);color:var(--xb-mid);font:inherit;font-size:13px;padding:0 10px}
.xb-trans{color:var(--xb-blue)!important;font-weight:600;border:1px solid var(--xb-sky2);border-radius:999px;padding:1px 10px}
.xb-strip{background:var(--xb-card);border-bottom:1px solid var(--xb-line)}
.xb-strip-in{display:flex;align-items:center;gap:16px;height:44px;font-size:14px}
.xb-strip time{flex:none;color:var(--xb-coral);font-weight:700;font-variant-numeric:tabular-nums}
.xb-strip nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.xb-strip nav a{flex:none;padding:4px 12px;border-radius:8px;color:var(--xb-ink);font-weight:500}
.xb-strip nav a:hover{background:var(--xb-sky)}
.xb-strip-city{color:#0a7cc4!important}
.xb-front{display:grid;grid-template-columns:260px minmax(0,1fr) 290px;gap:22px;margin-top:20px;align-items:start}
.xb-rail-h{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--xb-ink);margin:0 0 10px;padding-bottom:6px}
.xb-rail-h h2{margin:0;font-size:18px}
.xb-rail-h a{font-size:13px;color:var(--xb-blue)}
.xb-timeline,.xb-hotlist,.xb-catbox ul{list-style:none;margin:0;padding:0}
.xb-timeline li+li,.xb-hotlist li+li,.xb-catbox li+li{border-top:1px solid var(--xb-line)}
.xb-timeline a,.xb-hotlist a{display:flex;flex-direction:column;gap:2px;padding:9px 0}
.xb-timeline b,.xb-hotlist b{font-weight:500;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.xb-timeline span,.xb-hotlist span{font-size:12px;color:var(--xb-mute)}
.xb-hotlist{counter-reset:h}
.xb-hotlist a{padding-left:30px;position:relative}
.xb-hotlist li{counter-increment:h}
.xb-hotlist a:before{content:counter(h);position:absolute;left:0;top:9px;width:20px;height:20px;border-radius:6px;background:var(--xb-sky);color:var(--xb-blue);font-size:12px;font-weight:800;display:grid;place-items:center}
.xb-hotlist li:nth-child(-n+3) a:before{background:var(--xb-coral);color:#fffffe}
.xb-lead2{display:block;position:relative;border-radius:var(--xb-r-s);overflow:hidden;background:var(--xb-card);box-shadow:var(--xb-sh)}
.xb-lead2 img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.xb-lead2 div{padding:14px 18px 16px}
.xb-lead2 h3{margin:8px 0 6px;font-size:24px;line-height:1.35}
.xb-lead2 p{margin:0 0 6px;color:var(--xb-mid)}
.xb-lead2 span{font-size:12px;color:var(--xb-mute)}
.xb-lead2-np div{border-top:4px solid var(--xb-blue)}
.xb-picks{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.xb-picks a{display:grid;grid-template-columns:96px 1fr;gap:10px;align-items:start}
.xb-picks img,.xb-pick-mark{width:96px;height:64px;border-radius:8px;object-fit:cover}
.xb-pick-mark{display:grid;place-items:center;background:var(--xb-sky);color:var(--xb-blue);font-style:normal;font-size:12px;font-weight:700;text-align:center;padding:4px;box-sizing:border-box}
.xb-picks b{font-weight:500;font-size:14px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.xb-mini-empty{margin:0;padding:12px 14px;border-radius:var(--xb-r-s);background:var(--xb-sky);color:var(--xb-mid);font-size:14px}
.xb-mini-empty-b{display:flex;flex-direction:column;gap:4px;align-items:flex-start;border-left:4px solid var(--xb-blue)}
.xb-mini-empty-b p{margin:0}
.xb-mini-empty-b a{color:var(--xb-blue);font-weight:600}
.xb-svc{margin-top:16px;padding:14px;border-radius:var(--xb-r-s);background:#e6f6ff}
.xb-svc h3{margin:0 0 8px;font-size:15px;color:#0a5f96}
.xb-svc p{margin:0;font-size:13px;color:var(--xb-mid)}
.xb-svc nav{display:flex;flex-wrap:wrap;gap:6px}
.xb-svc nav a{padding:4px 12px;border-radius:999px;background:var(--xb-card);font-size:13px}
.xb-catgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:22px}
.xb-catbox-lead{display:block;margin-bottom:6px}
.xb-catbox-lead img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px;display:block;margin-bottom:6px}
.xb-catbox-lead b{font-size:16px;line-height:1.45}
.xb-catbox li a{display:block;padding:7px 0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xb-tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.xb-tcard{display:flex;flex-direction:column;gap:6px;padding:14px;background:var(--xb-card);border-radius:var(--xb-r-s);box-shadow:var(--xb-sh)}
.xb-tcard em{font-style:normal;font-size:12px;color:var(--xb-blue);font-weight:600}
.xb-tcard h3{margin:0;font-size:15px;line-height:1.5;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.xb-tcard .xb-card-m{margin-top:auto}
.xb-boards{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.xb-boards a{display:flex;flex-direction:column;padding:12px 14px;border-radius:var(--xb-r-s);background:var(--xb-card);border:1px solid var(--xb-line)}
.xb-boards a:hover{border-color:var(--xb-blue)}
.xb-boards span{font-size:12px;color:var(--xb-mute)}
@media (max-width:1100px){.xb-front{grid-template-columns:minmax(0,1fr) 280px}.xb-front>.xb-rail:first-child{grid-column:1/-1;order:3}}
.xb-lang-m{display:none}
.xb-front.xb-no-news{grid-template-columns:1fr;gap:20px}
.xb-no-news>.xb-rail:first-child{display:none}
.xb-no-news>.xb-center{grid-column:1/-1}
.xb-no-news>.xb-rail:last-child{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:28px;align-items:start}
.xb-no-news>.xb-rail:last-child>.xb-rail-h{grid-column:1;grid-row:1}
.xb-no-news>.xb-rail:last-child>ol{grid-column:1;grid-row:2}
.xb-no-news>.xb-rail:last-child>.xb-svc{grid-column:2;grid-row:1/3;margin-top:0}
@media(max-width:767px){.xb-no-news>.xb-rail:last-child{display:block}.xb-no-news>.xb-rail:last-child>.xb-svc{margin-top:20px}}
.xb-nav a>[data-xb-i18n]{display:inline!important;font-size:14px!important;color:inherit;line-height:inherit}
html{box-sizing:border-box;width:100%;overflow-x:clip}*,*:before,*:after{box-sizing:inherit}
body{min-width:0;max-width:100%;overflow-x:clip}
.xb-wrap,.xb-front,.xb-center,.xb-rail,.xb-top-in{min-width:0;max-width:100%}
@media (max-width:860px){.xb-lang-d{display:none}.xb-nav.xb-open .xb-lang-m{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 14px;border-top:1px solid var(--xb-line);font-size:14px;color:var(--xb-mid)}}
@media (max-width:767px){.xb-front{grid-template-columns:1fr}.xb-front>.xb-rail:first-child{order:0;grid-column:auto}.xb-center{order:-1}.xb-picks{grid-template-columns:1fr}.xb-lead2 h3{font-size:20px}}
