/* ===== 阿城哥拍卖 · 主站视觉体系（白 + 藏蓝 + 金） ===== */
:root{
  --navy:#15243b;
  --navy-2:#1e3354;
  --gold:#b98a2f;
  --gold-light:#d8b05e;
  --bg:#faf9f6;
  --card:#ffffff;
  --text:#2b2f36;
  --muted:#6b7280;
  --line:#e6e2d8;
  --red:#a52a2a;
  --max:1180px;
  --radius:10px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--text);background:var(--bg);line-height:1.7}
h1,h2,h3,.serif{font-family:"Noto Serif SC","Songti SC","SimSun",Georgia,serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer}
.container{max-width:var(--max);margin:0 auto;padding:0 20px}

/* ===== 顶部公告 ===== */
.notice{background:var(--navy);color:#e8e2d2;font-size:13.5px}
.notice .container{display:flex;align-items:center;gap:10px;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}
.notice .dot{width:8px;height:8px;border-radius:50%;background:var(--gold-light);animation:pulse 1.6s infinite;flex:none}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.notice b{color:var(--gold-light)}
.notice .right{margin-left:auto;display:flex;gap:18px}
.notice .right a{color:var(--gold-light)}
.notice .right a:hover{text-decoration:underline}

/* ===== 导航 ===== */
header.site{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;max-width:var(--max);margin:0 auto;gap:14px;flex-wrap:wrap;min-width:0}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.brand .mark{width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e9c87c,var(--gold) 60%,#8a6516);display:flex;align-items:center;justify-content:center;color:#fff;font-family:Georgia,serif;font-weight:700;font-size:19px;box-shadow:inset 0 0 0 3px rgba(255,255,255,.35),0 2px 6px rgba(0,0,0,.2)}
.brand .name{font-size:18px;font-weight:700;color:var(--navy);letter-spacing:1px}
.brand .sub{font-size:10.5px;color:var(--muted);letter-spacing:2px;text-transform:uppercase}
nav.menu{display:flex;gap:18px;font-size:14.5px;min-width:0;flex-wrap:wrap;justify-content:center}
nav.menu a{color:#3c4350;padding:6px 2px;border-bottom:2px solid transparent;transition:.2s;white-space:nowrap}
nav.menu a:hover,nav.menu a.on{color:var(--gold);border-bottom-color:var(--gold)}
.nav-user{display:flex;align-items:center;gap:8px;font-size:13.5px;flex:none}
.nav-user .hi{color:#3c4350}
.nav-cta{background:var(--navy);color:#fff;padding:8px 16px;border-radius:6px;font-size:13.5px;transition:.2s;white-space:nowrap}
.nav-cta:hover{background:var(--gold)}
.nav-ghost{border:1px solid #c9cdd6;color:#3c4350;padding:7px 13px;border-radius:6px;background:none;font-size:13.5px;white-space:nowrap}
.nav-ghost:hover{border-color:var(--gold);color:var(--gold)}
/* 中等宽度：压缩导航密度，避免溢出 */
@media(max-width:1280px){
  .nav{padding:10px 16px;gap:10px}
  nav.menu{gap:13px;font-size:13.5px}
  .brand .sub{display:none}
  .brand .name{font-size:16.5px}
  .brand .mark{width:38px;height:38px;font-size:17px}
}
@media(max-width:1120px){
  .nav-user .nav-ghost{display:none}
}
@media(max-width:1020px){nav.menu{display:none}}

/* ===== Hero ===== */
.hero{background:linear-gradient(rgba(21,36,59,.88),rgba(21,36,59,.94)),repeating-conic-gradient(from 0deg at 80% 20%,#22385c 0deg 12deg,#1a2c49 12deg 24deg);color:#f3efe4;text-align:center;padding:60px 20px 56px}
.hero .eyebrow{color:var(--gold-light);letter-spacing:4px;font-size:12.5px;text-transform:uppercase;margin-bottom:12px}
.hero h1{font-size:clamp(26px,3.6vw,40px);line-height:1.3;margin-bottom:14px}
.hero p{max-width:600px;margin:0 auto 24px;color:#c9cdd6;font-size:15px}
.hero .btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:11px 26px;border-radius:6px;font-size:14.5px;transition:.2s;border:1px solid transparent}
.btn-gold{background:var(--gold);color:#fff}
.btn-gold:hover{background:var(--gold-light)}
.btn-ghost{border-color:#5a6b88;color:#e8e2d2}
.btn-ghost:hover{border-color:var(--gold-light);color:var(--gold-light)}

/* ===== 下一场拍卖 ===== */
.next-auction{max-width:860px;margin:-38px auto 0;position:relative;z-index:5;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 14px 34px rgba(21,36,59,.14);padding:20px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.next-auction .tag{background:#f6efdd;color:#8a6516;border:1px solid #e5d5ab;font-size:12px;padding:3px 12px;border-radius:20px;letter-spacing:1px}
.next-auction h3{font-size:18px;color:var(--navy);margin:6px 0 4px}
.next-auction .when{font-size:14px;color:var(--muted)}
.next-auction .cd{font-family:Georgia,serif;color:var(--red);font-weight:700}

/* ===== Section ===== */
section{padding:52px 0}
.sec-head{text-align:center;margin-bottom:32px}
.sec-head .kicker{color:var(--gold);letter-spacing:3px;font-size:12.5px;text-transform:uppercase}
.sec-head h2{font-size:27px;color:var(--navy);margin-top:8px}
.sec-head p{color:var(--muted);max-width:620px;margin:8px auto 0;font-size:14.5px}

/* ===== 三大业务 ===== */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:860px){.pillars{grid-template-columns:1fr}}
.pillar{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:34px 28px;text-align:center;transition:.25s}
.pillar:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(21,36,59,.1)}
.pillar .icon{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:linear-gradient(145deg,#f6efdd,#efe2c2);display:flex;align-items:center;justify-content:center;font-size:28px}
.pillar h3{color:var(--navy);font-size:20px;margin-bottom:10px}
.pillar p{color:var(--muted);font-size:14.5px;margin-bottom:16px}
.pillar a{color:var(--gold);font-size:14px;font-weight:600}
.pillar a:hover{text-decoration:underline}

/* ===== 拍卖场次 ===== */
.auctions{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.session-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:980px){.session-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.session-grid{grid-template-columns:1fr}}
.session{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--bg);display:flex;flex-direction:column;transition:.25s}
.session:hover{box-shadow:0 10px 24px rgba(21,36,59,.12);transform:translateY(-3px)}
.session .cover{position:relative;height:158px;background:var(--navy-2);overflow:hidden}
.session .cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.session:hover .cover img{transform:scale(1.05)}
.session .cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(21,36,59,0) 40%,rgba(21,36,59,.82))}
.session .cover .label{position:absolute;left:14px;bottom:10px;z-index:2;color:#fff;font-family:Georgia,serif;font-size:14px;letter-spacing:2px;text-shadow:0 1px 4px rgba(0,0,0,.4)}
.session .cover .badge{position:absolute;right:12px;top:12px;z-index:2;background:rgba(185,138,47,.94);color:#fff;font-size:12px;padding:3px 10px;border-radius:20px;letter-spacing:1px}
.session .cover .badge.closed{background:rgba(90,100,115,.9)}
.session .body{padding:18px 20px 20px;flex:1;display:flex;flex-direction:column}
.session .sess{font-size:12px;color:var(--muted);letter-spacing:1px}
.session h3{font-size:17px;color:var(--navy);margin:6px 0 8px;line-height:1.45}
.session .meta{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:6px;margin-bottom:4px}
.session .meta b{color:#3c4350;font-weight:600}
.session .cd-line{font-size:13px;color:var(--muted);margin-top:4px}
.session .cd-line .v{font-family:Georgia,serif;color:var(--red);font-weight:700;letter-spacing:.5px}
.session .foot{margin-top:auto;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.session .foot a{font-size:14px;color:var(--gold);font-weight:600}
.session .foot a:hover{text-decoration:underline}
.session .foot .bidlink{background:var(--navy);color:#fff;padding:7px 16px;border-radius:6px;font-size:13.5px}
.session .foot .bidlink:hover{background:var(--gold);text-decoration:none}

/* ===== 场次卡片 · 统一横向风格（封面原生 120×160，清晰不虚） ===== */
#session-grid,#ended-grid{grid-template-columns:repeat(2,1fr)}
@media(max-width:980px){#session-grid,#ended-grid{grid-template-columns:1fr}}
.session.cardrow{flex-direction:row;align-items:center;gap:20px;padding:20px}
.session.cardrow:hover{transform:translateY(-3px)}
.session.cardrow .cover-mini{position:relative;flex:none}
.session.cardrow .cover-mini .frame{
  display:flex;align-items:center;justify-content:center;
  width:120px;height:160px;overflow:hidden;
  background:#fff;padding:5px;border:1px solid #e3dcc9;border-radius:4px;
  box-shadow:0 6px 16px rgba(21,36,59,.14),0 1px 3px rgba(21,36,59,.1);
}
.session.cardrow .cover-mini .frame img{display:block;width:120px;height:160px;object-fit:cover;border-radius:2px}
.session.cardrow .cover-mini .frame.noimg{
  background:linear-gradient(150deg,var(--navy) 0%,#1d3050 100%);
  color:var(--gold-light);font-family:Georgia,serif;font-size:15px;
  letter-spacing:3px;text-align:center;line-height:1.7;
}
.session.cardrow .cover-mini .badge{
  position:absolute;left:50%;bottom:-11px;transform:translateX(-50%);
  background:rgba(90,100,115,.94);color:#fff;font-size:11px;letter-spacing:2px;
  padding:2px 12px;border-radius:20px;white-space:nowrap;
  box-shadow:0 2px 6px rgba(21,36,59,.25);
}
.session.cardrow .cover-mini .badge:not(.closed){background:rgba(185,138,47,.95)}
.session.cardrow .body{padding:0;min-width:0}
.session.cardrow h3{font-size:17.5px}
.session.cardrow .cd-line{margin-bottom:2px}

/* ===== 新闻 ===== */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:860px){.news-grid{grid-template-columns:1fr}}
.news{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;transition:.25s}
.news:hover{box-shadow:0 10px 24px rgba(21,36,59,.08)}
.news .date{font-size:12.5px;color:var(--gold);letter-spacing:1px}
.news h3{font-size:17px;color:var(--navy);margin:8px 0}
.news p{font-size:14px;color:var(--muted)}
.news a{display:inline-block;margin-top:12px;color:var(--gold);font-size:13.5px;font-weight:600}

/* ===== 日程 ===== */
.events li{list-style:none;display:flex;gap:20px;align-items:flex-start;padding:20px 4px;border-bottom:1px solid var(--line)}
.events .cal{min-width:84px;text-align:center;background:var(--navy);color:#fff;border-radius:8px;padding:10px 6px}
.events .cal .d{font-size:22px;font-family:Georgia,serif;font-weight:700;color:var(--gold-light)}
.events .cal .m{font-size:11.5px;letter-spacing:1px}
.events h3{font-size:17px;color:var(--navy)}
.events .loc{font-size:13.5px;color:var(--muted);margin-top:4px}
.events .loc a{color:var(--gold);font-weight:600}

/* ===== 数据 ===== */
.stats{background:var(--navy);color:#f3efe4}
.stats .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
@media(max-width:860px){.stats .grid{grid-template-columns:repeat(2,1fr)}}
.stats .num{font-size:clamp(30px,4vw,44px);font-family:Georgia,serif;color:var(--gold-light);font-weight:700}
.stats .num small{font-size:.45em;margin-left:2px}
.stats .lab{font-size:14px;color:#c9cdd6;margin-top:6px}

/* ===== 联系 ===== */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
@media(max-width:860px){.contact{grid-template-columns:1fr}}
.contact h2{color:var(--navy);font-size:26px;margin-bottom:14px}
.contact p{color:var(--muted);margin-bottom:10px}
.info-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px}
.info-card .row{display:flex;gap:12px;margin-bottom:14px;font-size:15px}
.info-card .row .ic{color:var(--gold)}
form .field{margin-bottom:14px}
form label{display:block;font-size:13.5px;color:#3c4350;margin-bottom:6px}
form input,form textarea,form select{width:100%;padding:11px 12px;border:1px solid #d8d3c6;border-radius:6px;font-size:14px;font-family:inherit;background:#fff}
form input:focus,form textarea:focus{outline:2px solid var(--gold-light);border-color:var(--gold)}

/* ===== 页脚 ===== */
footer.site{background:#0f1a2b;color:#8f9aad;padding:44px 0 24px;font-size:13.5px}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}
@media(max-width:860px){footer .cols{grid-template-columns:1fr 1fr}}
footer h4{color:#e8e2d2;font-size:15px;margin-bottom:12px}
footer a:hover{color:var(--gold-light)}
footer .bottom{border-top:1px solid #24334c;margin-top:32px;padding-top:18px;text-align:center;color:#6d7b93}

.more-link{text-align:center;margin-top:34px}
.more-link a{color:var(--navy);font-weight:600;font-size:15px;border-bottom:2px solid var(--gold);padding-bottom:2px}

/* ===== 竞价规则 ===== */
.rules{background:#fff;border-top:1px solid var(--line)}
.rules .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 40px}
@media(max-width:760px){.rules .grid{grid-template-columns:1fr}}
.rules .item{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.rules .n{width:30px;height:30px;flex:none;border-radius:50%;background:#f6efdd;color:#8a6516;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}
.rules h3{font-size:16px;color:var(--navy);margin-bottom:2px}
.rules p{font-size:14px;color:var(--muted)}

/* 空态 / 骨架 */
.skeleton{color:var(--muted);text-align:center;padding:30px;grid-column:1/-1}

/* ===== 新闻动态（后台维护） ===== */
.news .pin{display:inline-block;background:#f6efdd;color:#8a6516;border:1px solid #e5d5ab;font-size:11px;padding:0 7px;border-radius:20px;letter-spacing:.5px}
.news .news-cover{margin:10px 0 12px;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#f4f2ec}
.news .news-cover img{width:100%;height:150px;object-fit:cover}
.news[data-news]{cursor:pointer}
.news[data-news]:hover h3{color:var(--gold)}

/* ===== 活动日程 ===== */
.events .ev-tag{display:inline-block;font-size:11.5px;font-weight:400;letter-spacing:0;padding:1px 8px;border-radius:20px;background:#fdf1e2;color:#a8621b;margin-left:8px;vertical-align:middle}
.events .ev-tag.live{background:#e8f5ee;color:#1c6b48}
.events .ev-tag.off{background:#eef1f6;color:#67748a}
.events-empty .cal{opacity:.55}
.events-empty .loc{max-width:640px}

/* ===== 新闻详情弹层 ===== */
.nmodal-mask{position:fixed;inset:0;background:rgba(14,22,36,.55);backdrop-filter:blur(3px);z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:48px 18px;overflow:auto}
.nmodal{position:relative;width:100%;max-width:720px;background:#fff;border-radius:12px;padding:30px 32px 34px;box-shadow:0 30px 80px rgba(0,0,0,.35);animation:nmIn .18s ease;max-height:none}
@keyframes nmIn{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
.nmodal .date{font-size:12.5px;color:var(--gold);letter-spacing:1px}
.nmodal h3{font-size:23px;color:var(--navy);margin:8px 0 14px;line-height:1.45}
.nmodal .news-cover em{font-style:normal}
.nmodal .news-cover img{height:230px}
.nmodal-body p{font-size:15px;color:#3c4350;margin-bottom:12px;line-height:1.95}
.nmodal-body p:last-child{margin-bottom:0}
.nmodal-x{position:absolute;right:12px;top:10px;background:none;border:none;font-size:26px;line-height:1;color:#98a1b0}
.nmodal-x:hover{color:var(--red)}
.nmodal-link{display:inline-block;margin-top:14px;color:var(--gold);font-weight:600}

/* ===== 新闻列表页 ===== */
.news-row{display:flex;gap:22px;padding:22px 4px;border-bottom:1px solid var(--line);cursor:pointer;transition:.2s}
.news-row:hover{background:#fff}
.news-row:hover h3{color:var(--gold)}
.news-row .when{flex:none;width:74px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 4px;align-self:flex-start}
.news-row .when .d{font-family:Georgia,serif;font-size:24px;font-weight:700;color:var(--navy);line-height:1.2}
.news-row .when .m{font-size:11px;color:var(--muted);letter-spacing:.5px}
.news-row .meta{font-size:12.5px;color:var(--gold);letter-spacing:1px}
.news-row h3{font-size:18px;color:var(--navy);margin:4px 0 6px;transition:.2s}
.news-row p{font-size:14px;color:var(--muted)}
.news-row a{display:inline-block;margin-top:8px;color:var(--gold);font-size:13.5px;font-weight:600}
@media(max-width:640px){.news-row{gap:14px}.news-row .when{width:60px}}
