/* Extra styles - scrollbar, transitions, admin bar fix */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-thumb { background: #c1c1c1; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #a8a8a8; }
::-webkit-scrollbar-track { background: transparent; }

/* WordPress admin bar offset - only when bar is visible */
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }
.admin-bar .site-wrapper { padding-top: calc(56px + 32px + 20px); }
@media (max-width: 782px) { .admin-bar .site-wrapper { padding-top: calc(56px + 46px + 20px); } }

/* Search input animation */
.search-form input[type="text"]::placeholder { color: #bbb; transition: opacity .3s; }
.search-form input[type="text"]:focus::placeholder { opacity: .5; }

/* Link card ripple */
.link-card:active, .link-card-lg:active, .mini-link:active { transform: scale(.97); }

/* Mobile nav animation */
.main-nav { transition: all .3s ease; }

/* =============================================================
   导航菜单 - 右侧菜单 & 公告按钮 & 宽度切换
   ============================================================= */
.nav-right-menu{display:flex;align-items:center;gap:2px}
.nav-right-menu>a{font-size:12px;font-weight:500;padding:4px 10px;border-radius:var(--radius-sm,4px);transition:all .2s;white-space:nowrap;color:var(--text)}
.nav-right-menu>a:hover{background:var(--primary-light,#e6f7ef)}

.nav-width-toggle{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 12px;border-radius:20px;
  font-size:13px;font-weight:600;color:#fff;
  cursor:pointer;transition:all .2s;position:relative;
  text-decoration:none;margin-right:6px;
  background:rgba(255,255,255,.13);
}
.nav-width-toggle:hover{background:rgba(255,255,255,.25);color:#fff}
.nav-width-icon{font-size:14px}
.nav-width-label{font-size:13px;color:#fff !important}

.nav-announcement-btn{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 12px;border-radius:20px;
  font-size:13px;font-weight:600;color:#fff;
  cursor:pointer;
  transition:all .2s;
  position:relative;
  background:rgba(255,255,255,.13);
}
.nav-announcement-btn:hover{background:rgba(255,255,255,.25)}
.nav-ann-label{color:#fff !important;font-size:13px}
.nav-announcement-btn .nav-ann-icon{
  font-size:14px;
  animation:ann-bell-shake 3s ease-in-out infinite;
  transform-origin:top center;
}
@keyframes ann-bell-shake{
  0%,90%,100%{transform:rotate(0)}
  92%{transform:rotate(12deg)}
  94%{transform:rotate(-12deg)}
  96%{transform:rotate(8deg)}
  98%{transform:rotate(-8deg)}
}

.nav-links li a.nav-link-item{display:block;padding:0 16px;line-height:var(--nav-height,44px);font-size:14px;color:var(--text);white-space:nowrap;transition:color .2s,background .2s}
.nav-links li a.nav-link-item:hover,
.nav-links li a.nav-link-item.active{color:var(--primary,#0ea95e);background:var(--primary-light,#e6f7ef)}
.nav-links li .nav-announcement-btn{margin:0 6px}

/* =============================================================
   公告模态框
   ============================================================= */
.ann-modal-mask{
  position:fixed;inset:0;
  background:rgba(0,0,0,.45);
  display:none;
  align-items:flex-start;
  justify-content:center;
  z-index:9999;
  padding:8vh 16px 16px;
  overflow-y:auto;
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
.ann-modal-mask.is-open{display:flex;animation:ann-fade-in .2s ease}
@keyframes ann-fade-in{from{opacity:0}to{opacity:1}}

.ann-modal{
  background:#fff;
  width:100%;
  max-width:560px;
  border-radius:12px;
  box-shadow:0 20px 60px rgba(0,0,0,.25);
  overflow:hidden;
  animation:ann-slide-down .25s ease;
}
@keyframes ann-slide-down{from{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}

.ann-modal-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 20px;
  background:linear-gradient(135deg,#0ea95e,#0a8a4f);
  color:#fff;
}
.ann-modal-head h3{
  margin:0;font-size:16px;font-weight:600;
  display:flex;align-items:center;gap:8px;
}
.ann-modal-icon{font-size:18px}
.ann-modal-close{
  background:none;border:none;color:#fff;
  font-size:26px;line-height:1;
  width:28px;height:28px;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;border-radius:50%;
  transition:background .2s;
}
.ann-modal-close:hover{background:rgba(255,255,255,.2)}

.ann-modal-body{
  padding:18px 22px 24px;
  max-height:60vh;
  overflow-y:auto;
}
.ann-empty-tip{color:#999;text-align:center;padding:30px 0}

.ann-item{
  padding:14px 0;
  border-bottom:1px dashed #eee;
}
.ann-item:last-child{border-bottom:none}
.ann-item-head{
  display:flex;align-items:center;gap:8px;
  margin-bottom:6px;
  flex-wrap:wrap;
}
.ann-item-title{
  margin:0;font-size:15px;font-weight:600;color:#222;
  flex:1;min-width:0;
}
.ann-item-date{font-size:12px;color:#999}
.ann-pin-tag{
  background:#ffeded;color:#e6711e;
  font-size:11px;font-weight:600;
  padding:2px 6px;border-radius:3px;
}
.ann-item.is-pinned .ann-item-title{color:#e6711e}
.ann-item-content{
  font-size:13px;color:#555;line-height:1.7;
  margin-top:4px;
}
.ann-item-content p{margin:6px 0}
.ann-item-content a{color:var(--primary,#0ea95e);text-decoration:underline}


/* 公告按钮数字徽章 */
.nav-announcement-btn{position:relative}
.nav-ann-badge{
  display:inline-flex;
  align-items:center;justify-content:center;
  min-width:16px;height:16px;
  padding:0 4px;margin-left:2px;
  background:#e6711e;color:#fff;
  font-size:10px;font-weight:700;
  border-radius:8px;
  line-height:1;
}

/* 搜索引擎切换栏 - 关闭半透明背景 */
.banner-engines.no-bg{
  background:transparent !important;
  padding:0 !important;
}
.banner-engines.no-bg .engine-tab:not(.active){
  background:rgba(255,255,255,.08);
}
.banner-engines.no-bg .engine-tab:not(.active):hover{
  background:rgba(255,255,255,.18);
}

/* 引擎图片图标 */
.engine-favicon.has-img{
  background:transparent;
  padding:0;
  overflow:hidden;
}
.engine-favicon.has-img img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
.engine-tab.active .engine-favicon.has-img{
  background:#fff;
}

/* =============================================================
   链接卡片 — 访问量 & meta 行
   ============================================================= */
.lc-card-meta {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  overflow: hidden;
}
.lc-card-meta .lc-card-desc {
  flex: 1;
  min-width: 0;
}
.lc-card-visits {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 11px;
  color: #aaa;
  white-space: nowrap;
  flex-shrink: 0;
  line-height: 1;
}
.lc-card-visits svg {
  flex-shrink: 0;
  opacity: .7;
}
.lc-link-card:hover .lc-card-visits {
  color: var(--primary, #0ea95e);
}
.lc-link-card:hover .lc-card-visits svg {
  opacity: 1;
}
body.dark-mode .lc-card-visits { color: #666; }
body.dark-mode .lc-link-card:hover .lc-card-visits { color: var(--primary); }

/* 后台访问量列宽度 */
.column-link_visits { width: 80px; text-align: center; }
.manage-column.column-link_visits { text-align: center; }
