.b2-rank,.b2-ranklinks{--rank-accent:var(--b2color,#315c8c);--rank-radius:var(--b2radius,12px);color:#27323e}
.b2-rank [hidden],.b2-ranklinks [hidden]{display:none!important}
.b2-rank-controls{padding:24px 26px 16px;margin-bottom:18px;border:1px solid #edf0f3}
.b2-rank-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.b2-rank .b2-rank-title-group h2,.b2-ranklinks h2{font-size:21px;font-weight:650;line-height:1.4;margin:0}
.b2-rank-desc{margin:7px 0 0;font-size:13px;line-height:1.6;color:#78818b}
.b2-rank-periods{display:flex;flex-wrap:wrap;gap:4px;background:#f4f6f8;border-radius:9px;padding:4px;flex-shrink:0}
.b2-rank button{font:inherit;cursor:pointer;box-shadow:none;min-width:0;height:auto;line-height:1.4}
.b2-rank .b2-rank-option{padding:7px 12px;background:transparent;color:#65717e;border:1px solid transparent;border-radius:7px;font-size:13px;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}
.b2-rank .b2-rank-option:hover{background:#f0f3f6;color:var(--rank-accent)}
.b2-rank .b2-rank-option.is-active{background:var(--rank-accent);color:#fff;border-color:var(--rank-accent)}
.b2-rank-periods .b2-rank-option{padding:7px 17px;font-weight:600}
.b2-rank-periods .b2-rank-option.is-active{background:#fff;color:var(--rank-accent);border-color:#e5e9ee;box-shadow:0 1px 3px #2032490b}
.b2-rank-filter-row{display:flex;align-items:flex-start;gap:15px;margin-top:12px}
.b2-rank-filter-label{color:#929aa3;font-size:12px;line-height:33px;flex:0 0 36px;white-space:nowrap}
.b2-rank-options{display:flex;flex-wrap:wrap;gap:7px;min-width:0}
.b2-rank-parents .b2-rank-option{font-size:14px;padding:9px 15px;font-weight:600;background:#f5f7f9;border-color:#eff2f5}
.b2-rank-parents .b2-rank-option.is-active{background:var(--rank-accent);border-color:var(--rank-accent)}
.b2-rank-child-row{margin:10px 0 4px}
.b2-rank-child-row .b2-rank-options{padding-left:11px;border-left:2px solid #e8edf2}
.b2-rank-child-row .b2-rank-option.is-active{background:#edf3f8;color:var(--rank-accent);border-color:#d9e4ee}
.b2-rank-tags-wrap{min-width:0;flex:1}
.b2-rank-tags{position:relative;overflow:visible}
.b2-rank-tags .b2-rank-option{background:#fafbfc;border-color:#edf0f3;font-size:12px;padding:6px 11px}
.b2-rank-tags .b2-rank-option.is-active{color:var(--rank-accent);border-color:var(--rank-accent);background:#fff}
.b2-rank.has-folded-tags:not(.tags-expanded) .b2-rank-tags{overflow:hidden}
.b2-rank .b2-rank-expand{display:block;padding:8px 0 0;background:transparent;border:0;color:#798694;font-size:12px}
.b2-rank .b2-rank-expand:hover{color:var(--rank-accent)}
.b2-rank-summary{border-top:1px solid #eef1f4;margin-top:20px;padding-top:13px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px;color:#7b8590;line-height:1.6}
.b2-rank-summary [data-rank-selection]{color:#536272;font-weight:500}
.b2-rank .b2-rank-list{display:grid;grid-template-columns:repeat(var(--rank-columns,4),minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:0}
.b2-rank .b2-rank-card{list-style:none;min-width:0;width:auto;padding:0;margin:0;float:none}
.b2-rank .b2-rank-card .item-in{height:100%;overflow:hidden;border:1px solid #edf0f3;transition:box-shadow .18s,transform .18s}
.b2-rank .b2-rank-card:hover .item-in{box-shadow:0 6px 22px #23395410;transform:translateY(-2px)}
.b2-rank .post-module-thumb{position:relative;height:auto;aspect-ratio:4/3;padding:0!important;overflow:hidden;background:#f0f3f6}
.b2-rank .thumb-link{display:block;width:100%;height:100%;position:absolute;inset:0}
.b2-rank .post-thumb{display:block;width:100%;height:100%;object-fit:cover}
.b2-rank-placeholder{height:100%;display:flex;align-items:center;justify-content:center;color:#a8b3be;font-size:14px;background:linear-gradient(135deg,#f0f3f6,#e5ebf1)}
.b2-rank-badge{position:absolute;top:10px;left:10px;height:27px;min-width:27px;padding:0 7px;display:flex;align-items:center;justify-content:center;border-radius:7px;background:#1e2e3edb;color:#fff;font-size:13px;font-weight:750;line-height:1;box-shadow:0 2px 5px #1423331a;pointer-events:none}
.b2-rank-badge--1{background:#b88a32}.b2-rank-badge--2{background:#7e909f}.b2-rank-badge--3{background:#a2795b}
.b2-rank .post-info{padding:13px 14px 12px}
.b2-rank .post-info h3{font-size:14px;font-weight:500;line-height:1.65;margin:0 0 12px;min-height:3.3em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.b2-rank .post-info h3 a{color:inherit;text-decoration:none;word-break:break-word}
.b2-rank .post-info h3 a:hover{color:var(--rank-accent)}
.b2-rank .post-list-meta-box{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:0;min-height:19px}
.b2-rank .post-list-cat{min-width:0;margin:0;padding:0;overflow:hidden;font-size:11px;line-height:1.5}
.b2-rank .post-list-cat-item{padding:0;background:transparent!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;color:#728297;font-size:11px}
.b2-rank-view{display:flex;align-items:center;gap:4px;color:#98a1ab;font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums}
.b2-rank-view svg{flex-shrink:0}
.b2-rank-results{transition:opacity .15s;min-height:100px}.b2-rank.is-loading .b2-rank-results{opacity:.55}
.b2-rank-empty{padding:42px 20px;text-align:center;border:1px dashed #dce3ea;color:#82909e}
.b2-rank-empty-icon{display:inline-flex;font-size:27px;color:#adbac7;margin-bottom:7px}
.b2-rank-empty p{margin:0;color:#596979;font-size:14px}
.b2-rank-footer{margin-top:22px;display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}
.b2-rank .b2-rank-more{padding:10px 26px;color:var(--rank-accent);background:#fff;border:1px solid #dce4ec;border-radius:8px;font-size:13px}
.b2-rank .b2-rank-more:hover{border-color:var(--rank-accent);background:#f8fafc}
.b2-rank .b2-rank-more:disabled,.b2-rank .b2-rank-retry:disabled{opacity:.55;cursor:wait}
.b2-rank-all{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#647588;padding:9px 0;text-decoration:none}.b2-rank-all:hover{color:var(--rank-accent)}
.b2-rank-status{margin:10px 0 0;min-height:18px;text-align:center;font-size:12px;line-height:1.6;color:#8d98a4}
.b2-rank .b2-rank-retry{display:block;padding:6px 12px;margin:7px auto 0;border:1px solid #dae2eb;border-radius:6px;background:#fff;color:var(--rank-accent);font-size:12px}
.b2-rank-notice{padding:20px;font-size:13px}
.b2-rank button:focus-visible,.b2-rank a:focus-visible,.b2-ranklinks a:focus-visible{outline:2px solid var(--rank-accent);outline-offset:3px}
.b2-ranklinks h2{margin-bottom:14px;font-size:18px}
.b2-ranklinks ul{display:grid;grid-template-columns:repeat(var(--ranklink-columns,4),minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.b2-ranklinks li{margin:0;padding:0;list-style:none;min-width:0}
.b2-ranklink{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:93px;padding:20px 22px;border:1px solid #e7ecf1;text-decoration:none;overflow:hidden;color:#334a61;transition:transform .15s,border-color .15s}
.b2-ranklink:hover{transform:translateY(-2px);border-color:#bacbdb;color:var(--rank-accent)}
.b2-ranklinks li:nth-child(4n+1) .b2-ranklink{background:linear-gradient(120deg,#f4f8fc,#fff)}
.b2-ranklinks li:nth-child(4n+2) .b2-ranklink{background:linear-gradient(120deg,#f5f8f5,#fff)}
.b2-ranklinks li:nth-child(4n+3) .b2-ranklink{background:linear-gradient(120deg,#fbf8f1,#fff)}
.b2-ranklinks li:nth-child(4n) .b2-ranklink{background:linear-gradient(120deg,#f7f5fa,#fff)}
.b2-ranklink-title{font-size:16px;font-weight:650;line-height:1.5;position:relative;z-index:1;min-width:0}
.b2-ranklink-arrow{font-size:24px;line-height:1;color:#8b9daf;position:relative;z-index:1;flex-shrink:0}
.b2-ranklink--image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.b2-ranklink--image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#122b48c7,#122b482a)}
.b2-ranklink--image .b2-ranklink-title,.b2-ranklink--image .b2-ranklink-arrow{color:#fff}
.b2-rank-whole-archive{padding-top:28px;padding-bottom:40px;--rank-accent:var(--b2color,#315c8c)}
.b2-rank-whole-archive>header{margin-bottom:18px}.b2-rank-whole-archive>header h1{margin:0;font-size:24px;line-height:1.5;font-weight:650;color:#334353}
.b2-rank-archive-controls{--rank-accent:var(--b2color,#315c8c);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 20px;margin:18px auto;background:#fff;border:1px solid #e9eef3;border-radius:var(--b2radius,12px);box-sizing:border-box}
.b2-rank-whole-archive .b2-rank-archive-controls{max-width:none;width:100%;margin:0 0 18px}
.b2-rank-archive-controls nav{display:flex;gap:6px;flex-wrap:wrap}.b2-rank-archive-controls p{margin:0;font-size:12px;line-height:1.7;color:#8d98a4}
.b2-rank-period-link{display:inline-block;border:1px solid transparent;padding:7px 13px;border-radius:7px;font-size:13px;color:#6c7987;text-decoration:none;line-height:1.5}.b2-rank-period-link:hover{background:#f1f5f8;color:var(--rank-accent)}.b2-rank-period-link.is-current{background:var(--rank-accent);color:#fff}
.b2-rank-archive-search{display:flex;align-items:flex-end;gap:10px;margin:0 0 22px}.b2-rank-archive-search label{display:flex;align-items:center;gap:12px;flex:1;max-width:490px;font-size:13px;color:#768392;white-space:nowrap}.b2-rank-archive-search input[type=search]{width:100%;min-width:0;padding:9px 12px;border:1px solid #dce4ec;border-radius:7px;background:#fff;color:#354657;font-size:13px;line-height:1.5;box-sizing:border-box}.b2-rank-archive-search input[type=search]:focus{border-color:var(--rank-accent);outline:1px solid var(--rank-accent);outline-offset:1px}.b2-rank-archive-search button{height:auto;padding:9px 20px;border:1px solid var(--rank-accent);border-radius:7px;color:#fff;background:var(--rank-accent);font-size:13px;line-height:1.5;cursor:pointer}
.b2-rank-archive-pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin:28px 0 0}.b2-rank-archive-pagination .page-numbers{padding:8px 12px;min-width:36px;box-sizing:border-box;border:1px solid #e2e8ee;border-radius:7px;background:#fff;color:#69798a;text-decoration:none;text-align:center;font-size:13px;line-height:1.5}.b2-rank-archive-pagination .current{background:var(--rank-accent);color:#fff;border-color:var(--rank-accent)}.b2-rank-archive-pagination a:hover{border-color:var(--rank-accent);color:var(--rank-accent)}.b2-rank-archive-pagination .dots{background:transparent;border-color:transparent;padding:8px 3px;min-width:0}
.b2-rank-whole-archive>.b2-rank-empty{padding:40px 20px;text-align:center;border:1px dashed #dce3ea;border-radius:var(--b2radius,12px);color:#8593a1;font-size:13px;line-height:1.8}
@media(max-width:768px){.b2-rank-whole-archive{padding-top:20px;padding-bottom:28px}.b2-rank-whole-archive>header h1{font-size:20px}.b2-rank-archive-controls{padding:12px 14px;gap:8px}.b2-rank-archive-controls p{font-size:11px}.b2-rank-period-link{font-size:12px;padding:6px 11px}.b2-rank-archive-search{gap:8px;margin-bottom:17px}.b2-rank-archive-search label{gap:7px;font-size:11px}.b2-rank-archive-search button{padding:9px 15px}.b2-rank-archive-pagination{gap:6px;margin-top:22px}.b2-rank-archive-pagination .page-numbers{font-size:12px;padding:7px 10px;min-width:32px}}
@media(max-width:1100px) and (min-width:769px){.b2-rank .b2-rank-list{grid-template-columns:repeat(var(--rank-columns,4),minmax(0,1fr));gap:14px}.b2-rank-controls{padding:22px}.b2-rank-heading{flex-wrap:wrap}.b2-rank-periods{margin-left:auto}.b2-ranklink{padding:17px;min-height:84px}.b2-ranklink-title{font-size:14px}}
@media(max-width:768px){.b2-rank-controls{padding:18px 15px 13px;margin-bottom:14px}.b2-rank-heading{display:block;margin-bottom:17px}.b2-rank .b2-rank-title-group h2{font-size:18px}.b2-rank-desc{font-size:12px}.b2-rank-periods{margin-top:15px;display:grid;grid-template-columns:repeat(var(--rank-period-count,4),minmax(0,1fr));width:100%;box-sizing:border-box}.b2-rank-periods .b2-rank-option{padding:8px 4px;text-align:center}.b2-rank-filter-row{gap:8px;margin-top:11px}.b2-rank-filter-label{flex-basis:28px;font-size:11px;line-height:32px}.b2-rank-options{gap:6px}.b2-rank-parents .b2-rank-option{font-size:12px;padding:8px 10px}.b2-rank-child-row .b2-rank-options{padding-left:7px}.b2-rank .b2-rank-option{font-size:12px;padding:6px 9px}.b2-rank-tags .b2-rank-option{font-size:11px;padding:6px 8px}.b2-rank-summary{margin-top:16px;padding-top:11px;font-size:11px}.b2-rank .b2-rank-list{grid-template-columns:repeat(var(--rank-mobile-columns,2),minmax(0,1fr));gap:11px}.b2-rank .post-info{padding:10px}.b2-rank .post-info h3{font-size:12px;margin-bottom:9px}.b2-rank .post-list-meta-box{gap:5px;flex-wrap:wrap}.b2-rank .post-list-cat-item,.b2-rank-view{font-size:10px}.b2-rank-badge{height:23px;min-width:23px;padding:0 5px;left:8px;top:8px;font-size:11px;border-radius:6px}.b2-rank-footer{margin-top:17px;gap:13px}.b2-rank .b2-rank-more{padding:9px 18px;font-size:12px}.b2-rank-all{font-size:12px}.b2-rank-empty{padding:32px 15px}.b2-ranklinks ul{grid-template-columns:repeat(var(--ranklink-mobile-columns,2),minmax(0,1fr));gap:10px}.b2-ranklink{padding:15px;min-height:77px;gap:10px}.b2-ranklink-title{font-size:13px}.b2-ranklink-arrow{font-size:19px}}
@media(prefers-reduced-motion:reduce){.b2-rank *,.b2-ranklinks *{transition:none!important}.b2-rank .b2-rank-card:hover .item-in,.b2-ranklink:hover{transform:none}}
