/* ===== MoldSo 全局样式（2026-08-29 从 layouts/app.blade.php 内联抽出，统一收全局）===== */
:root {
    --blue:#1a5cff;
    --dark:#12203a;
    --gray:#f4f6fa;
    --line:#e3e8f0;
    --red:#e23b3b;   /* MoldSo 的 So 品牌红 */
}
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:-apple-system,"Segoe UI","Microsoft YaHei",sans-serif; color:#223; background:#fff; line-height:1.6; }
a { color:var(--blue); text-decoration:none; }
a:hover { text-decoration:underline; }

/* ---------- 布局：头部 / 容器 / 页脚 ---------- */
.header { background:var(--dark); color:#fff; padding:14px 24px; display:flex; align-items:center; justify-content:space-between; }
.header .brand { font-size:20px; font-weight:700; color:#fff; }
.header .brand span { color:var(--red); }
.brand-red { color:var(--red); }
.header nav a { color:#cfe0ff; margin-left:18px; font-size:14px; }
.header nav a:hover { color:#fff; text-decoration:none; }

.container { max-width:1080px; margin:0 auto; padding:34px 20px 150px; }

.footer { background:var(--gray); border-top:1px solid var(--line); padding:20px; text-align:center; color:#667; font-size:13px; margin-top:40px; }

/* ---------- 通用组件 ---------- */
.btn { display:inline-block; background:var(--blue); color:#fff; border:none; padding:11px 26px; border-radius:6px; font-size:15px; cursor:pointer; }
.btn:hover { background:#0f4ef0; }
.card { background:#fff; border:1px solid var(--line); border-radius:8px; padding:18px; margin-bottom:14px; }
.badge { display:inline-block; background:var(--gray); border:1px solid var(--line); color:#445; font-size:12px; padding:2px 8px; border-radius:4px; margin-right:6px; }

/* ---------- 首页 Hero（搜索框 / 数据招牌） ---------- */
.hero { text-align:center; padding:50px 20px 30px; }
.hero h1 { font-size:34px; color:var(--dark); margin-bottom:10px; }
.hero h1 .red { color:var(--red); }
.hero p { color:#667; font-size:16px; margin-bottom:26px; }
.search-box { max-width:620px; margin:0 auto; display:flex; gap:10px; }
.search-box input { flex:1; padding:13px 18px; font-size:16px; border:2px solid var(--line); border-radius:8px; outline:none; }
.search-box input:focus { border-color:var(--blue); }
.hot-words { margin-top:16px; color:#667; font-size:14px; }
.hot-words a { margin:0 6px; }

/* ---------- 首页快捷导航（A方案最终：悬停下拉三栏，无死区，右/下对齐定位） ---------- */
.quicknav { max-width:900px; margin:34px auto 0; padding:0 10px; display:flex; justify-content:center; gap:16px; flex-wrap:wrap; }
.qn { position:relative; }
.qn-thead { display:inline-block; padding:8px 18px; font-size:14px; color:var(--dark); background:var(--gray); border:1px solid var(--line); border-radius:20px; cursor:pointer; user-select:none; position:relative; z-index:22; }
.qn-thead i { color:var(--blue); font-style:normal; font-size:12px; margin-left:2px; }
.qn:hover .qn-thead { background:var(--blue); color:#fff; border-color:var(--blue); }
.qn:hover .qn-thead i { color:#fff; }
.qn-panel { position:absolute; top:100%; left:0; transform:translateY(0); min-width:288px; max-height:430px; overflow:auto; background:#fff; border:1px solid var(--line); border-radius:10px; box-shadow:0 10px 28px rgba(0,0,0,.12); padding:14px 8px 10px; display:none; z-index:21; white-space:nowrap; }
/* 无死区桥：面板与标签无缝衔接（top:100% 无间隙），悬停到面板不丢 */
.qn-panel::before { content:""; position:absolute; top:-12px; left:0; right:0; height:12px; background:transparent; }
.qn:hover .qn-panel { display:block; }
/* 面板内首个链接顶到面板，桥接无缝 */
.qn-panel a { display:block; padding:7px 12px; border-radius:6px; color:#445; font-size:13.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.qn-panel a:hover { background:var(--gray); color:var(--blue); text-decoration:none; }
.qn-panel a.qn-all { border-top:1px solid var(--line); margin-top:6px; padding-top:9px; color:var(--blue); font-weight:600; }
.qn-regions { min-width:260px; }
.qn-regions .qn-wrap { display:flex; flex-wrap:wrap; max-width:260px; }
.qn-regions a { display:inline-block; margin:3px; padding:4px 10px; border:1px solid var(--line); border-radius:15px; font-size:13px; color:#445; background:var(--gray); }
.qn-regions a:hover { background:var(--blue); color:#fff; border-color:var(--blue); }
.qn-regions a.qn-all { display:block; }
@media(max-width:600px){
    .quicknav { padding:0 6px; gap:8px; margin-top:24px; }
    .qn { }
    .qn-panel { left:50%; transform:translateX(-50%); min-width:88vw; }
    .qn-regions { min-width:78vw; }
}


/* ---------- 页面区块样式（2026-08-29 从各 view 内嵌 style 统一收进全局）
   按新准则：blade 模板不内嵌 <style>，统一到此文件
   ========================================================= */

/* ---------- 通用页头 page-head（library/forum/exhibitors/search） ---------- */
.page-head { margin-bottom:20px; }
.page-head h1 { font-size:26px; color:var(--dark); margin-bottom:6px; }
.page-head p { color:#667; font-size:14px; }

/* ---------- 文库 library ---------- */
.lib-wrap { display:flex; gap:24px; }
.lib-side { width:200px; flex-shrink:0; }
.lib-side h3 { font-size:15px; color:var(--dark); margin-bottom:12px; }
.lib-side a { display:block; padding:8px 12px; border-radius:6px; color:#445; font-size:14px; margin-bottom:4px; }
.lib-side a:hover { background:var(--gray); text-decoration:none; }
.lib-side a.active { background:var(--blue); color:#fff; }
.lib-main { flex:1; }
.lib-item { display:flex; justify-content:space-between; align-items:center; }
.lib-item .t { font-size:16px; font-weight:600; color:var(--dark); }
.lib-item .meta { font-size:13px; color:#788; margin-top:4px; }
@media(max-width:720px){ .lib-wrap{flex-direction:column;} .lib-side{width:100%;} }

/* ---------- 文库详情 library_article ---------- */
.art-wrap { max-width:800px; margin:0 auto; }
.art-head { border-bottom:1px solid var(--line); padding-bottom:18px; margin-bottom:22px; }
.art-head h1 { font-size:26px; color:var(--dark); line-height:1.4; margin-bottom:10px; }
.art-head .meta { font-size:13px; color:#889; }
.art-head .meta a { color:var(--blue); }
.art-body { font-size:16px; color:#333; line-height:1.9; }
.art-body h2, .art-body h3 { margin:22px 0 10px; color:var(--dark); }
.art-body p { margin-bottom:14px; }
.art-body ul, .art-body ol { margin:0 0 14px 22px; }
.art-body li { margin-bottom:6px; }
.art-body img { max-width:100%; border-radius:6px; }
.art-nav { margin-top:30px; padding-top:16px; border-top:1px solid var(--line); }

/* ---------- 贴吧 forum ---------- */
.boards { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:22px; }
.board { background:var(--gray); border:1px solid var(--line); border-radius:8px; padding:10px 16px; }
.board .bn { font-weight:600; color:var(--dark); }
.board .bd { font-size:12px; color:#788; margin-top:2px; }
.topic-row { border-left:3px solid transparent; }
.topic-row.top { border-left-color:var(--red); }
.topic-row .tt { font-size:15px; font-weight:600; color:var(--dark); }
.topic-row .meta { font-size:12px; color:#889; margin-top:4px; }
.top-tag { color:var(--red); font-size:11px; margin-right:4px; }

/* ---------- 贴吧话题详情 forum_topic ---------- */
.topic-wrap { max-width:760px; margin:0 auto; }
.topic-head { border-bottom:1px solid var(--line); padding-bottom:16px; margin-bottom:20px; }
.topic-head h1 { font-size:24px; color:var(--dark); line-height:1.4; margin-bottom:8px; }
.topic-head .meta { font-size:13px; color:#889; }
.topic-body { background:#fff; border:1px solid var(--line); border-radius:8px; padding:22px; line-height:1.8; color:#333; }
.reply-box { margin-top:24px; }
.reply-box h3 { font-size:16px; color:var(--dark); margin-bottom:14px; }
.reply-item { background:var(--gray); border:1px solid var(--line); border-radius:8px; padding:14px 18px; margin-bottom:10px; }
.reply-item .ra { font-size:13px; color:var(--blue); font-weight:600; }
.reply-item .rc { font-size:14px; color:#445; margin-top:4px; line-height:1.7; }
.reply-form { background:#fff; border:1px solid var(--line); border-radius:8px; padding:18px; margin-top:10px; }
.reply-form h4 { font-size:15px; margin-bottom:12px; color:var(--dark); }
.reply-form input, .reply-form textarea { width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:6px; font-size:14px; margin-bottom:10px; outline:none; }
.reply-form input:focus, .reply-form textarea:focus { border-color:var(--blue); }

/* ---------- 贴吧发帖 forum_new ---------- */
.new-wrap { max-width:640px; margin:0 auto; }
.new-box { background:#fff; border:1px solid var(--line); border-radius:8px; padding:24px; }
.new-box h1 { font-size:22px; color:var(--dark); margin-bottom:6px; }
.new-box .sub { color:#667; font-size:14px; margin-bottom:20px; }
.form-group { margin-bottom:16px; }
.form-group label { display:block; font-size:14px; color:#445; margin-bottom:5px; font-weight:600; }
.form-group input, .form-group textarea, .form-group select { width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:6px; font-size:14px; outline:none; }
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { border-color:var(--blue); }
.hint { font-size:12px; color:#889; margin-top:4px; }

/* ---------- 展商列表 exhibitors ---------- */
.filters { margin-bottom:20px; }
.filters a { display:inline-block; margin:0 6px 8px 0; padding:6px 14px; border:1px solid var(--line); border-radius:20px; font-size:13px; color:#445; }
.filters a.active { background:var(--blue); color:#fff; border-color:var(--blue); }
.list-item { display:flex; align-items:center; justify-content:space-between; }
.list-item .name { font-size:16px; font-weight:600; color:var(--dark); }
.list-item .booth { color:var(--blue); font-weight:600; background:var(--gray); padding:3px 10px; border-radius:5px; }
.list-item .region { font-size:13px; color:#788; margin-top:3px; }
.pagination { display:flex; justify-content:center; gap:8px; margin-top:24px; }
.pagination a, .pagination span { padding:7px 14px; border:1px solid var(--line); border-radius:6px; color:#445; font-size:14px; }
.pagination .active { background:var(--blue); color:#fff; border-color:var(--blue); }
.claim-banner { background:#fff8f0; border:1px solid #ffe0b2; border-radius:8px; padding:12px 16px; margin-bottom:18px; font-size:14px; color:#7a4a00; display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; }
.claim-banner a { color:var(--blue); font-weight:600; white-space:nowrap; }

/* ---------- 展商详情 exhibitor ---------- */
.detail-head { border-bottom:1px solid var(--line); padding-bottom:18px; margin-bottom:20px; }
.detail-head h1 { font-size:24px; color:var(--dark); margin-bottom:6px; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.detail-head .zh { font-size:16px; color:#556; }
.info-table { width:100%; border-collapse:collapse; }
.info-table td { padding:12px 16px; border:1px solid var(--line); font-size:15px; }
.info-table td:first-child { width:140px; background:var(--gray); color:#556; font-weight:600; }
.back { margin-top:24px; }
.claim-cta { margin-top:22px; background:#fff8f0; border:1px solid #ffe0b2; border-radius:8px; padding:18px 20px; }
.claim-cta h3 { color:#7a4a00; font-size:17px; margin-bottom:6px; }
.claim-cta p { color:#8a6a3a; font-size:14px; margin-bottom:12px; }
.certified { display:inline-block; background:#1e7a3e; color:#fff; font-size:12px; padding:2px 10px; border-radius:12px; }
.contact-box { margin-top:22px; background:#e8f7ee; border:1px solid #b7e3c7; border-radius:8px; padding:18px 20px; }
.contact-box h3 { color:#1e7a3e; font-size:17px; margin-bottom:10px; }
.contact-box .row { font-size:14px; color:#335; margin-bottom:6px; }
.contact-box .lbl { display:inline-block; width:72px; color:#1e7a3e; font-weight:600; }

/* ---------- 认领申请 claim ---------- */
.claim-wrap { max-width:640px; margin:0 auto; }
.claim-box { background:#fff; border:1px solid var(--line); border-radius:8px; padding:24px; }
.claim-box h1 { font-size:22px; color:var(--dark); margin-bottom:6px; }
.claim-box .sub { color:#667; font-size:14px; margin-bottom:20px; }
.form-group label .req { color:var(--red); }
.form-group input.disabled { background:var(--gray); color:#556; }
.form-group .hint { font-size:12px; color:#889; margin-top:3px; }
.btn-block { width:100%; padding:12px; font-size:15px; }
.info-line { font-size:13px; color:#889; margin-top:14px; text-align:center; }

/* ---------- 后台认领管理 admin_claims ---------- */
.adm-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; flex-wrap:wrap; gap:10px; }
.adm-head h1 { font-size:22px; color:var(--dark); }
.tabs a { display:inline-block; padding:6px 14px; margin-right:6px; border:1px solid var(--line); border-radius:20px; font-size:13px; color:#445; }
.tabs a.active { background:var(--blue); color:#fff; border-color:var(--blue); }
.adm-table { width:100%; border-collapse:collapse; background:#fff; }
.adm-table th, .adm-table td { padding:10px 12px; border:1px solid var(--line); font-size:14px; text-align:left; vertical-align:top; }
.adm-table th { background:var(--gray); color:#556; font-weight:600; }
.status-tag { display:inline-block; padding:2px 10px; border-radius:12px; font-size:12px; }
.st-0 { background:#fff4e5; color:#b26a00; }
.st-1 { background:#e8f7ee; color:#1e7a3e; }
.st-2 { background:#fdecea; color:#c0392b; }
.mini-btn { display:inline-block; padding:4px 10px; border-radius:5px; font-size:12px; cursor:pointer; border:none; margin-right:4px; }
.mb-ok { background:#1e7a3e; color:#fff; }
.mb-no { background:#c0392b; color:#fff; }

/* ---------- 搜索 search ---------- */
.search-bar { display:flex; gap:10px; max-width:600px; margin-bottom:24px; }
.search-bar input { flex:1; padding:11px 16px; font-size:15px; border:2px solid var(--line); border-radius:6px; outline:none; }
.search-bar input:focus { border-color:var(--blue); }
.result-item { padding:14px 18px; margin-bottom:10px; }
.result-item .name { font-size:16px; font-weight:600; color:var(--blue); text-decoration:none; }
.result-item .name:hover { text-decoration:underline; }
.result-item .meta { font-size:13px; color:#788; margin-top:4px; }
.result-item .excerpt { font-size:14px; color:#556; margin-top:6px; line-height:1.6; }
.res-tag { display:inline-block; font-size:12px; padding:1px 8px; border-radius:10px; margin-right:8px; color:#fff; vertical-align:1px; }
.tag-exh { background:var(--red); }
.tag-doc { background:var(--blue); }
.tag-bbs { background:#0a8f5c; }
.sec-title { font-size:14px; font-weight:700; color:#667; margin:20px 0 10px; text-transform:uppercase; letter-spacing:.5px; }
.empty-guide { background:#f5f9ff; border:1px solid #d6e4ff; border-radius:8px; padding:20px; margin-top:16px; }
.empty-guide h4 { margin:0 0 10px; color:var(--blue); font-size:15px; }
.empty-guide a { color:var(--blue); text-decoration:none; }
.empty-guide a:hover { text-decoration:underline; }
