/* =========================================================
   dbsports V3.0 · base.css — 变量/重置/排版/栅格/按钮/表单
   设计基准：搜狐新闻版式 · 配色：本站橙色系
   ========================================================= */
:root{
	--v3-primary:#F97316;      /* 主橙 */
	--v3-primary-bg:#fff7ed;   /* 主橙浅底（激活项/悬停） */
	--v3-primary-dark:#EA580C; /* 深橙 */
	--v3-amber:#FBBF24;        /* 琥珀（渐变） */
	--v3-ink:#1a1a1a;          /* 主文字 */
	--v3-ink2:#4b5563;         /* 次文字 */
	--v3-ink3:#9ca3af;         /* 辅助文字 */
	--v3-line:#eeeeee;         /* 边框 */
	--v3-line2:#f5f6f8;        /* 浅底 */
	--v3-bg:#f7f8fa;           /* 页面背景 */
	--v3-card:#ffffff;         /* 卡片底 */
	--v3-shadow:0 2px 10px rgba(17,24,39,.06);
	--v3-shadow-hover:0 6px 18px rgba(17,24,39,.10);
	--v3-radius:8px;
	--v3-font:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font:14px/1.6 var(--v3-font);color:var(--v3-ink);background:var(--v3-bg)}
img{border:0;max-width:100%;vertical-align:middle}
a{color:var(--v3-ink);text-decoration:none;transition:color .15s}
a:hover{color:var(--v3-primary)}
ul,ol{list-style:none}
button,input,select,textarea{font-family:inherit;font-size:inherit}
em,i{font-style:normal}

/* ---------- 排版层级（方案第四节） ---------- */
.v3-h1{font-size:24px;line-height:1.4;font-weight:700}
.v3-h2{font-size:20px;line-height:1.4;font-weight:700}
.v3-h3{font-size:17px;line-height:1.5;font-weight:600}
.v3-title{font-size:16px;line-height:1.5;font-weight:600}
.v3-body{font-size:17px;line-height:1.9}
.v3-meta{font-size:13px;line-height:1.6;color:var(--v3-ink3)}

/* ---------- 栅格：全宽流式（站主 11-01 17:0x：取消 1200 上限与响应式收窄，内容随窗口铺满） ---------- */
/* 版心窄距（站主 11-01 17:34：参照搜狐，内容区定宽容器居中，不随窗口无限拉宽） */
.v3-wrap{width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box;padding-left:20px;padding-right:20px}
.v3-cols{display:flex;gap:20px;align-items:flex-start}
.v3-main{flex:1;width:auto;min-width:0}
.v3-side{width:320px;flex-shrink:0;min-width:0}
.v3-article-col{flex:1;width:auto;min-width:0}
/* 页面包再嵌套 v3-wrap 时（viewthread 等双层 v3-page），内层不再重复加左右余量，保持 20px 对称 */
#wp.v3-page .v3-wrap{padding-left:0;padding-right:0}

/* ---------- 按钮：三档纪律（36/30/44） ---------- */
.pn{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 20px;border:0;border-radius:8px;font-size:14px;cursor:pointer;background:#eceff3;color:var(--v3-ink2);text-decoration:none;box-sizing:border-box}
.pn:hover{background:#e2e6ec;color:var(--v3-ink)}
.pn.ys-btn-sm{height:30px;padding:0 14px;font-size:13px;border-radius:6px}
.pn.ys-btn-lg{height:44px;padding:0 28px;font-size:15px}
.pn strong{display:inline;padding:0;font:inherit;font-weight:inherit;line-height:1}
.pnc,.pn.pnc{background:linear-gradient(120deg,var(--v3-amber),var(--v3-primary));color:#fff;font-weight:600}
.pnc:hover,.pn.pnc:hover{background:linear-gradient(120deg,var(--v3-primary),var(--v3-primary-dark));color:#fff}
.pnc strong,.pn.pnc strong{color:#fff;font-weight:600}

/* ---------- 表单 ---------- */
.px,.pt,.ps{border:1px solid var(--v3-line);border-radius:6px;padding:0 12px;font-size:14px;background:#fff;color:var(--v3-ink);height:42px}
.px:focus,.pt:focus,.ps:focus{outline:none;border-color:var(--v3-primary);box-shadow:0 0 0 3px rgba(249,115,22,.12)}
textarea.pt{height:auto;padding:10px 12px;width:100%}

/* ---------- 工具类 ---------- */
.v3-clearfix::after{content:"";display:block;clear:both}
.v3-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v3-clamp2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.v3-clamp3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}

/* ===== 页面主体左右余量：已由 .v3-wrap 全局 20px 承担（站主 11-01：取消响应式收窄） ===== */

/* ===== 覆盖默认 common.css 的 body{min-width:1200px}（窄窗口横向滚动根因） ===== */
body{min-width:0}

/* ===== 顶部 scbar 搜索条内部子元素仍是左浮动，高度塌陷后浮动侵入下方 #ct，
   导致 .mn(overflow:hidden 形成 BFC) 收缩避让、整表单右偏（portalcp 等短头页面必现） ===== */
#ct.wp{clear:both}

/* ===== 面包屑条被默认样式拉成 1200px 造成横向溢出（发帖页等） ===== */
#pt.bm.cl{width:auto;max-width:100%}

/* ===== 日期时间弹窗 V3 化（站主 11-01：calendar.js 弹窗默认零样式） ===== */
#calendar{position:absolute;z-index:100000;background:#fff;border:1px solid var(--v3-line);border-radius:10px;box-shadow:0 8px 28px rgba(17,24,39,.16);padding:10px;font-size:13px;color:var(--v3-ink)}
#calendar>div{width:260px}
#calendar table{width:100%;border-collapse:collapse;text-align:center}
#calendar td{padding:2px}
#calendar #calendar_week td{padding:4px;font-weight:600}
#calendar #calendar_week a{color:var(--v3-ink);text-decoration:none}
#calendar #calendar_week td:first-child a,#calendar #calendar_week td:last-child a{color:var(--v3-primary);font-size:15px}
#calendar #calendar_header td{padding:7px 0;color:var(--v3-ink3);font-weight:600;border-top:1px solid var(--v3-line);border-bottom:1px solid var(--v3-line)}
#calendar td[id^="d"]{height:32px;cursor:pointer;border-radius:6px;font-size:13px}
#calendar td[id^="d"]:hover{background:var(--v3-primary);color:#fff}
#calendar .calendar_today{color:var(--v3-primary);font-weight:700}
#calendar #hourminute td{padding-top:10px;border-top:1px solid var(--v3-line)}
#calendar #hourminute .px{width:44px;height:32px;text-align:center;margin:0 4px;padding:0}
#calendar #hourminute select{height:32px;border:1px solid var(--v3-line);border-radius:6px;padding:0 6px;margin:0 4px}
#calendar #hourminute .pn{height:32px;padding:0 16px;margin-left:8px}
#calendar #calendar_year,#calendar #calendar_month{position:absolute;background:#fff;border:1px solid var(--v3-line);border-radius:10px;box-shadow:0 8px 28px rgba(17,24,39,.16);padding:10px;max-height:230px;overflow-y:auto}
#calendar #calendar_year a,#calendar #calendar_month a{display:inline-block;padding:3px 8px;color:var(--v3-ink);text-decoration:none;border-radius:4px;font-size:13px}
#calendar #calendar_year a:hover,#calendar #calendar_month a:hover{background:var(--v3-primary);color:#fff}

/* ===== system dialog (fwin) v3 unify ===== */
.fwin{max-width:92vw;border-collapse:separate}
.fwin .t_l,.fwin .t_r,.fwin .b_l,.fwin .b_r{display:none}
.fwin .t_c,.fwin .b_c{height:0!important;padding:0!important;background:none!important;font-size:0;line-height:0}
.fwin .m_l,.fwin .m_r{width:0!important;padding:0!important;background:none!important}
.fwin .m_c{background:#fff!important;border-radius:14px;box-shadow:0 16px 48px rgba(0,0,0,.22);padding:0 0 20px;overflow:hidden}
.fwin h3.flb{margin:0;padding:14px 18px 12px;font-size:16px;font-weight:700;color:#1A1A1A;border-bottom:1px solid #F3F3F3;background:#fff}
.fwin h3.flb em{float:right;font-style:normal;font-size:12px;font-weight:400}
.fwin h3.flb em a,.fwin h3.flb span a{color:#999;text-decoration:none;font-size:18px;line-height:1}
.fwin .c.altw{padding:20px 22px 4px;font-size:14px;color:#444;line-height:1.8}
.fwin .altw p{margin:0 0 6px}
.fwin .alert_right,.fwin .alert_error,.fwin .alert_info,.fwin .alert_warn{background-image:none!important}
.fwin .alert_right::before{content:"✔";display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#F97316;color:#fff;font-size:12px;margin-right:8px;vertical-align:-4px;font-weight:700}
.fwin .alert_error::before{content:"✖";display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#EF4444;color:#fff;font-size:11px;margin-right:8px;vertical-align:-4px;font-weight:700}
.fwin .altw label{font-size:14px}
.fwin .o.pns{padding:12px 22px 0!important;text-align:center;border-top:0;margin:0}
.fwin .o.pns button,.fwin .o.pns .pn{height:36px;padding:0 24px;border-radius:8px;border:1px solid #E3E3E3;background:#fff;color:#333;font-size:14px;cursor:pointer;margin:0 4px}
.fwin .o.pns .pn.pnc,.fwin .o.pns button.pnc{background:#F97316;border-color:#F97316;color:#fff;font-weight:600}
.fwin .rfm td,.fwin .rfm th{padding:6px 4px;font-size:14px}
.fwin .px,.fwin .ps{border:1px solid #E3E3E3;border-radius:8px;padding:8px 10px;font-size:14px}

.fwin .alert_info::before{content:"✔";display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#F97316;color:#fff;font-size:12px;margin-right:8px;vertical-align:-4px;font-weight:700}
.fwin .alert_info p{display:inline}

/* ===== 弹窗底部间距保底 ===== */
.fwin .m_c{padding-bottom:20px !important}
.fwin .o.pns{padding:14px 22px 6px !important}

/* ===== 弹窗标题栏：去 sticky 防错位，关闭键完整可见 ===== */
.fwin h3.flb{position:static !important;overflow:hidden}
.fwin h3.flb .flbc,.fwin h3.flb span a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:26px;padding:0 10px !important;border:1px solid #E3E3E3;border-radius:7px;background:#fff;color:#666;font-size:13px !important;line-height:26px !important}
.fwin h3.flb span{float:right;margin-right:2px}
.fwin h3.flb span a:hover{border-color:#F97316;color:#F97316;text-decoration:none}
