/* V10.52.0: merged site stylesheet (former style/editorial/portal/customer/home files, original order preserved). */
/* ===== style.css ===== */
:root{--pine:#173a35;--pine2:#23554e;--pine3:#0d302b;--gold:#d5a45e;--cream:#f8f7f3;--white:#fff;--ink:#1d2927;--muted:#62716c;--line:#dfe6df;--soft:#f1f5f0;--red:#a6372c;--shadow:0 16px 40px rgba(20,59,53,.07);--round:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans CJK SC","PingFang SC","Microsoft Yahei",sans-serif;color:var(--ink);font-size:15px;line-height:1.65}a{color:var(--pine2);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%}button,input,textarea,select{font:inherit}button{cursor:pointer}input,textarea,select{width:100%;border:1px solid #ccd8d1;border-radius:9px;padding:12px;background:#fff;color:var(--ink);min-height:44px;outline:none}input:focus,textarea:focus,select:focus{outline:2px solid #6d9b8c;outline-offset:1px}textarea{resize:vertical}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}.wrap{width:min(1280px,calc(100% - 36px));margin-inline:auto}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-main{display:flex;align-items:center;justify-content:space-between;gap:20px;height:82px}.brand{display:flex;align-items:center;gap:12px;color:var(--pine);font-size:23px;font-weight:850;letter-spacing:1px;white-space:nowrap}.brand small{display:block;font-size:9px;font-weight:750;letter-spacing:2px;color:#75847d;line-height:1.3}.header-actions{display:flex;align-items:center;gap:18px;font-weight:650;font-size:13px}.link-pill{padding:8px 17px;background:#ecf4ef;border-radius:22px}.city-picker{margin:0 auto 0 12px;max-width:240px}.city-picker select{border-color:transparent;background:#f5f7f4;padding:9px;min-height:38px;font-size:13px}.nav-line{border-top:1px solid #eff0ec}.nav-inner{display:flex;align-items:center;gap:30px;min-height:50px;font-size:14px;font-weight:660;white-space:nowrap;overflow-x:auto}.nav-inner a{color:#344c43}.nav-inner .nav-publish{background:var(--pine);color:white;border-radius:6px;padding:8px 16px}.main{min-height:70vh;padding:28px 0 78px}.flash:not(:empty){background:#eaf4e7;border:1px solid #bcd1b8;color:#224d34;border-radius:10px;padding:12px 18px;margin-bottom:18px}.eyebrow{color:var(--gold);font-size:11px;letter-spacing:2px;font-weight:750}.hero-side .feature-tag{display:inline-block;background:#e5d7ba;border-radius:20px;padding:4px 13px;font-size:12px;font-weight:700}.category-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:24px 0 38px}.category-strip a{display:flex;flex-direction:column;gap:3px;align-items:center;text-align:center;background:#fff;border:1px solid var(--line);padding:18px 6px 15px;border-radius:14px;transition:.2s}.category-strip a:hover{border-color:#94b7a4;box-shadow:var(--shadow);transform:translateY(-2px);text-decoration:none}.category-strip span{font-size:27px}.category-strip b{font-size:14px;color:#233f36}.category-strip small{font-size:11px;color:var(--muted)}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 274px;gap:26px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:17px}.section-title h2,.section-title h1{font-size:22px;margin:0;letter-spacing:-.4px}.section-title>a{font-size:13px;font-weight:650}.gap-top{margin-top:36px}.listing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.item-card{background:white;border:1px solid var(--line);border-radius:14px;padding:18px;min-height:162px;display:flex;flex-direction:column;gap:7px;transition:.2s;color:var(--ink)}.item-card:hover{text-decoration:none;border-color:#a4baa8;box-shadow:var(--shadow);transform:translateY(-1px)}.item-kind{font-size:11px;background:#e9f2eb;color:#2d6453;padding:2px 9px;border-radius:15px;align-self:start;font-weight:650}.item-card h3{margin:1px 0;font-size:16px;line-height:1.45;overflow-wrap:anywhere}.item-card p{font-size:13px;color:var(--muted);margin:0;flex:1}.item-meta{display:flex;gap:8px;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:10px;border-top:1px solid #edf0eb;padding-top:11px;flex-wrap:wrap}.item-meta b{color:#b06a2e;font-size:16px}.article-list{display:grid;gap:10px}.article-row{display:flex;gap:15px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px;color:var(--ink)}.article-row:hover{text-decoration:none;border-color:#acc3b3}.news-tag{background:#f2e5d4;color:#826031;border-radius:5px;padding:5px 10px;font-size:11px;white-space:nowrap}.article-row h3{font-size:16px;margin:0 0 6px;line-height:1.5}.article-row p{color:var(--muted);font-size:13px;margin:0 0 6px}.article-row small{color:#8b9892}.arrow{margin-left:auto;color:#b2bcb6}.side-box,.ad{border:1px solid var(--line);background:#fff;border-radius:15px;padding:21px;margin-bottom:17px}.ad{background:#f8f1e5}.ad small{display:block;color:#805b30}.ad strong{display:block;margin:8px 0}.ad p{font-size:13px}.ad a{font-size:13px}.btn{border:0;border-radius:10px;color:white;background:var(--pine);padding:12px 20px;font-weight:750;display:inline-block;text-align:center;min-height:44px}.btn:hover{background:var(--pine2);color:#fff;text-decoration:none}.btn.small{padding:7px 12px;min-height:36px;font-size:13px}.btn.block{display:block;width:100%}.button-outline{background:#fff;border:1px solid #a3b5a9;border-radius:9px;padding:8px 13px;min-height:38px;color:var(--pine);font-size:13px;font-weight:650}.button-outline:hover{background:#ecf3ee}.section-heading{margin:13px 0 22px}.section-heading h1{font-size:clamp(24px,4vw,32px);margin:0 0 5px}.section-heading p{margin:0}.muted{color:var(--muted);font-size:13px}.filters{display:grid;grid-template-columns:2fr 1.05fr 1.1fr auto;gap:9px;margin-bottom:20px}.filters button{min-width:100px;border:0;border-radius:9px;background:var(--pine);color:#fff;font-weight:700}.detail{background:#fff;border:1px solid var(--line);max-width:900px;margin:0 auto;padding:clamp(22px,5vw,50px);border-radius:17px}.detail h1{font-size:clamp(24px,3.5vw,36px);line-height:1.45;overflow-wrap:break-word}.breadcrumb{font-size:13px;color:#708479;margin-bottom:22px}.pill{display:inline-block;border-radius:16px;padding:3px 12px;background:#e1f0e4;font-size:12px;color:#285e41}.detail .meta,.meta{font-size:13px;color:#85918b}.detail-body{margin:28px 0;font-size:16px;line-height:2;overflow-wrap:anywhere;white-space:normal}.detail-photo{max-height:550px;border-radius:14px;object-fit:contain}.contact-box{background:#f1f5ef;border-radius:11px;padding:19px;line-height:2}.report-box{margin-top:35px;padding-top:14px;border-top:1px solid var(--line)}.report-box summary{color:var(--muted);font-size:13px;cursor:pointer}.report-box textarea{min-height:85px}.lead{font-size:18px;color:#58665e;border-left:4px solid var(--gold);padding-left:18px}.auth-card{max-width:440px;margin:38px auto;background:#fff;border:1px solid var(--line);border-radius:19px;padding:34px;box-shadow:var(--shadow)}.auth-card h1{font-size:25px;margin:10px 0 4px}.auth-card p{color:var(--muted)}.auth-card label,.form-panel label,.panel label,.installer label{display:block;font-size:13px;font-weight:680;color:#3b5148;margin:15px 0}.auth-card input,.form-panel input,.form-panel textarea,.form-panel select{margin-top:7px}.auth-card button{margin-top:14px}.switch-auth{text-align:center;font-size:13px}.form-panel,.panel{padding:24px;background:#fff;border:1px solid var(--line);border-radius:15px;margin-bottom:22px}.form-panel{max-width:850px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.conditional{padding:10px 16px;background:#f3f6f1;border-radius:12px;margin:16px 0}.conditional h3{font-size:15px;margin:7px 0}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.profile-grid select{margin:7px 0}.table-scroll{overflow:auto;background:white;border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #eef0eb;padding:12px 16px;font-size:13px}th{background:#eff4ef;color:#3b5746}.text-btn{border:0;background:none;color:var(--pine);font-weight:700}.reply{padding:18px 0;border-top:1px solid var(--line)}.reply small{display:block;color:var(--muted)}.reply p{font-size:14px}.chat-layout{display:grid;grid-template-columns:220px minmax(0,1fr);border:1px solid var(--line);background:#fff;border-radius:15px;overflow:hidden;min-height:430px}.chat-rooms{padding:20px;background:#eff4ef;display:flex;flex-direction:column;gap:6px}.chat-rooms a{padding:9px 11px;border-radius:7px;font-size:13px}.chat-rooms .current{background:var(--pine);color:#fff}.chat-main{padding:18px;display:flex;flex-direction:column;min-width:0}.chat-messages{overflow:auto;max-height:440px;flex:1;min-height:320px}.chat-message{padding:7px 10px;border-bottom:1px solid #f3f4f0}.chat-message b{font-size:13px;color:var(--pine)}.chat-message small{color:#8d9a90;font-size:11px}.chat-message p{margin:2px 0 5px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.chat-send{display:flex;gap:7px;border-top:1px solid var(--line);padding-top:14px}.chat-send button{border:0;background:var(--pine);color:#fff;border-radius:9px;padding:9px 21px}.admin-layout{display:grid;grid-template-columns:208px minmax(0,1fr);gap:22px}.admin-sidebar{background:var(--white);border:1px solid var(--line);padding:18px;border-radius:14px;align-self:start;display:flex;flex-direction:column;gap:4px;position:sticky;top:10px}.admin-sidebar h3{font-size:14px;margin:5px 9px 12px}.admin-sidebar a{font-size:13px;padding:8px 11px;border-radius:8px;color:#4b6558}.admin-sidebar a:hover,.admin-sidebar a.active{background:#eaf2e9;color:var(--pine);font-weight:750;text-decoration:none}.admin-content{min-width:0}.admin-record{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);background:#fff;padding:13px 18px;border-radius:10px;margin:8px 0}.admin-record>div:first-child{min-width:0;flex:1}.admin-record b,.admin-record strong{font-size:13px}.admin-record p{margin:2px 0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.admin-record form{display:flex;align-items:center;gap:6px}.admin-record select{font-size:12px;min-height:36px;padding:6px;width:auto;max-width:180px}.admin-record small{color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0 25px}.stat{background:white;border:1px solid var(--line);padding:24px;border-radius:13px}.stat strong{font-size:34px;color:var(--pine);display:block;line-height:1.4}.stat small{font-size:13px;color:var(--muted)}.notice{padding:17px 20px;background:#edf3eb;border-left:4px solid var(--pine2);border-radius:8px;margin-bottom:20px;font-size:14px}.notice.good{background:#e8f4e9}.notice.bad{background:#fff0e9;border-color:var(--red);color:var(--red)}.empty{background:#fff;border:1px dashed #b7c4b8;padding:35px;text-align:center;border-radius:12px;color:var(--muted)}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.check{padding:10px 13px;border-radius:7px;background:#f4f6f1;font-size:13px}.installer{max-width:950px;margin:20px auto}.installer h2{font-size:18px;margin:25px 0 13px}.installer label{display:block}.key{display:block;padding:16px;background:#e9eee6;font-size:18px;letter-spacing:2px;overflow-wrap:anywhere}.footer{background:#ecf0e9;border-top:1px solid var(--line);padding:36px 0 30px}.footer-grid{display:flex;justify-content:space-between;gap:20px}.footer strong{font-size:20px;color:var(--pine)}.footer p{font-size:12px;color:#708078}.footer-grid>div:last-child{display:flex;gap:16px;align-items:start;flex-wrap:wrap;font-size:12px}.mobile-nav{display:none}.sr{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}@media(max-width:980px){.content-layout{grid-template-columns:1fr 225px}.category-strip{grid-template-columns:repeat(3,1fr)}.nav-inner{gap:22px}.admin-layout{grid-template-columns:180px minmax(0,1fr)}.admin-record{align-items:flex-start;flex-direction:column}.admin-record form{width:100%;flex-wrap:wrap}.admin-record select{flex:1}}@media(max-width:700px){body{font-size:14px}.wrap{width:min(100% - 26px,1280px)}.header-main{height:68px;gap:8px}.brand{font-size:17px;gap:7px}.brand small{font-size:7px;letter-spacing:1px}.header-actions{gap:7px;font-size:12px}.header-actions .link-pill{padding:5px 8px}.city-picker{max-width:116px;margin-left:0}.city-picker select{font-size:11px}.nav-line{display:none}.main{padding:17px 0 96px}.category-strip{gap:8px;margin:15px 0 28px}.category-strip a{padding:13px 4px}.category-strip b{font-size:12px}.category-strip span{font-size:22px}.content-layout{display:block}.listing-grid{grid-template-columns:1fr}.section-title h2{font-size:18px}.side-box,.ad{margin-top:16px}.filters{grid-template-columns:1fr 1fr}.filters input{grid-column:1/-1}.filters button{min-height:44px}.auth-card{margin:12px auto;padding:23px}.form-grid,.profile-grid,.check-grid{grid-template-columns:1fr}.detail{padding:23px 18px}.chat-layout{display:block}.chat-rooms{flex-direction:row;overflow:auto;gap:8px;padding:12px}.chat-rooms h3{display:none}.chat-rooms a{white-space:nowrap}.chat-messages{max-height:390px}.admin-layout{display:block}.admin-sidebar{position:static;display:flex;overflow:auto;flex-direction:row;white-space:nowrap;padding:9px;margin-bottom:16px}.admin-sidebar h3{display:none}.admin-sidebar a{font-size:12px}.admin-record{padding:13px}.stat-grid{grid-template-columns:repeat(2,1fr)}.stat{padding:18px}.footer-grid{display:block}.footer-grid>div:last-child{margin-top:15px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-around;background:#fff;border-top:1px solid var(--line);padding:5px 5px max(7px,env(safe-area-inset-bottom));z-index:50}.mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:52px;min-width:54px;font-size:23px;color:#435b4b}.mobile-nav small{font-size:10px}.mobile-nav a.new{color:var(--pine);font-weight:900}.key{font-size:14px;letter-spacing:0}}

@media(max-width:480px){.header-main{height:auto;min-height:75px;flex-wrap:wrap;padding-block:8px;row-gap:4px}.brand{order:1}.header-actions{order:2;margin-left:auto}.city-picker{order:3;max-width:none;flex:1 0 100%;margin:0}.city-picker select{width:100%;max-height:36px}.site-header{position:relative}}

/* V1.1 usability and accessibility refinements */
:root{color-scheme:light;--focus-ring:#176e5a;}
:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;}
button,input,select,textarea{font:inherit;} button,a,select,input[type="checkbox"]{touch-action:manipulation;}
button:disabled{opacity:.55;cursor:not-allowed;}
.report-chat{background:transparent;color:#785b52;border:1px solid #c5beb5;border-radius:8px;padding:4px 10px;margin-left:auto;cursor:pointer;font-size:14px;min-height:32px;}
.chat-message{position:relative;}
.chat-message .report-chat{float:right;}
.admin-record form{display:inline-flex;gap:7px;align-items:center;flex-wrap:wrap;}
.admin-record .text-btn{white-space:nowrap;}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}}
@media (max-width:580px){.chat-main{min-width:0}.report-chat{min-height:40px}.admin-record{align-items:flex-start;flex-wrap:wrap}.admin-record form{flex-wrap:wrap}.detail-photo{max-width:100%;height:auto}}

.pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:22px 0 34px;flex-wrap:wrap}.pagination a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px}.filters label{font-size:12px;min-width:95px}.filters label input{max-width:130px}.filters input,.filters select,.filters button{min-height:44px}.site-header a,.nav-line a,.mobile-nav a{min-height:36px;display:inline-flex;align-items:center}.chat-message p{overflow-wrap:anywhere}

/* V1.2 content density, reading flow, accessibility */
.item-cover{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:11px;margin:0 0 12px;background:#e8ede7}.item-card{min-width:0;overflow:hidden;transition:box-shadow .18s ease,transform .18s ease}.item-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(21,55,45,.12)}.item-card h3{overflow-wrap:anywhere}.form-panel textarea{min-height:140px;resize:vertical}.detail-body{overflow-wrap:anywhere;line-height:1.86}.article-row h3{line-height:1.42}.nav-publish,.btn{font-weight:720}.form-panel :is(input,textarea,select):focus,.auth-card :is(input,textarea,select):focus{outline:2px solid #438a76;outline-offset:1px}.notice.bad{color:#7d291d}.site-header,.mobile-nav{backdrop-filter:blur(8px)}.admin-content .section-title h1{font-size:clamp(21px,2.8vw,30px)}.admin-sidebar a{min-height:42px}.admin-sidebar a:focus-visible{outline:3px solid #d5a45e}.item-meta{gap:8px;flex-wrap:wrap}@media(max-width:700px){.admin-sidebar a{min-height:46px}.item-cover{aspect-ratio:16/8}.filters{gap:8px}.item-card{padding:17px}}@media(hover:none){.item-card:hover{transform:none}}

/* v1.3: polished editorial rhythm, readable dense directory listings, accessible focus */
:root{color-scheme:light;--portal-accent:#b98741;--portal-evergreen:#173a35;--portal-paper:#faf9f6}
body{background:var(--portal-paper);text-rendering:optimizeLegibility}
.main{min-height:calc(100vh - 270px)}
.section-title{align-items:baseline;gap:14px}.section-title h2{letter-spacing:-.025em}
.item-card,.side-box,.panel,.detail,.auth-card{box-shadow:0 2px 12px rgba(19,49,41,.035)}
.item-card p,.article-row p{overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.article-row{min-width:0}.article-row>div{min-width:0}
input,textarea,select{font-size:16px;max-width:100%}
:is(a,button,input,textarea,select,summary):focus-visible{outline:3px solid #ae7c35!important;outline-offset:3px}
button,.btn,.nav-publish,.link-pill{cursor:pointer}
button:disabled{opacity:.55;cursor:not-allowed}
.honeypot{position:absolute!important;left:-9999px!important;pointer-events:none!important;opacity:0!important;height:1px!important;overflow:hidden!important}
@media(max-width:800px){.content-layout{min-width:0}.article-row h3{font-size:clamp(16px,3.8vw,20px)}.footer{padding-bottom:100px}}
@media(max-width:560px){.main{padding-inline:14px}.item-card{border-radius:14px}.item-card p{-webkit-line-clamp:2}.form-grid{grid-template-columns:1fr}.nav-inner{overflow-x:auto;scrollbar-width:none}.mobile-nav a{min-width:0}}

/* V1.4: clarity, touch targets, contrast and reduced clutter */
:root{--portal-evergreen:#173a35;--portal-paper:#f8f7f3;--portal-accent:#d5a45e}
body{font-feature-settings:"kern";line-height:1.6}
.main{min-width:0}.header-main,.content-layout,.admin-layout,.chat-layout{min-width:0}
.article-row,.item-card,.admin-record{overflow-wrap:anywhere}
.site-header{border-bottom:1px solid rgba(27,64,53,.12)}
.item-card{border:1px solid rgba(25,65,54,.10)}
.item-card:focus-visible,.article-row:focus-visible{outline:3px solid #8f5f24;outline-offset:4px}
.muted,.item-card p,.article-row p{color:#4f5c54}
.btn,.button-outline,button[type=submit]{min-height:44px}
input,textarea,select{accent-color:#195647;max-width:100%}
@media(max-width:900px){.content-layout>*{min-width:0}}
@media(max-width:600px){.wrap{max-width:100%;box-sizing:border-box}.category-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.category-strip a{min-width:0}.nav-inner{scrollbar-width:thin}.mobile-nav{background:#fffdf8;box-shadow:0 -3px 16px rgba(17,54,43,.05)}.mobile-nav a{min-height:56px}.detail,.panel{max-width:100%;overflow-wrap:anywhere}}

/* V1.5.0 readability and accessibility polish */
:root { color-scheme: light; }
button, select, input, textarea { font: inherit; }
:where(a, button, input, select, textarea, summary):focus-visible {outline: 3px solid #a66e22;outline-offset: 3px;}
:where(.btn,.button-outline,.nav-publish,.chat-send button) {min-height: 44px;}
.item-card, .article-row, .side-box, .admin-record {overflow-wrap: anywhere;}
.detail-body {white-space: normal; overflow-wrap: anywhere;} .chat-message p {white-space: pre-wrap; overflow-wrap: anywhere;}
.notice {overflow-wrap:anywhere;}
@media (prefers-reduced-motion: reduce) {*,*::before,*::after {scroll-behavior: auto !important;animation-duration:0.01ms !important;transition-duration:0.01ms !important;}}
@media (max-width:650px) { .form-grid>* , .filters>*, .chat-layout>* { min-width:0; } .admin-content { min-width:0;} .chat-send input {min-width:0;} }

/* V1.6.0: commercial portal UI consistency, form clarity, responsive admin and accessible contrast */
:root{--pine:#153c34;--pine2:#245449;--gold:#d3a15a;--cream:#faf9f6;--line:#dce5de;--muted:#52655d;--shadow:0 12px 34px rgba(17,51,40,.08)}
body{background:var(--cream)}
.site-header{position:relative;z-index:3;background:rgba(255,255,255,.98)}
.item-card,.article-row,.side-box{transition:border-color .16s ease,box-shadow .16s ease}
.item-card:hover,.article-row:hover{border-color:#8aafa0;box-shadow:var(--shadow)}
.filters label{display:grid;gap:3px;font-size:12px;font-weight:700;color:var(--pine);margin:0}
.filters select,.filters input{min-width:0}
.smtp-config{background:#f4f7f2;border:1px solid var(--line);border-radius:14px;padding:18px;margin:16px 0}
.smtp-config h3{margin:0 0 8px;color:var(--pine)}
.admin-record{min-width:0;overflow-wrap:anywhere}
.admin-content :is(input,select,textarea){max-width:100%}
@media(max-width:900px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-content{min-width:0}}
@media(max-width:600px){.filters{grid-template-columns:1fr}.brand{font-size:18px}.header-actions{gap:8px}.item-card{min-width:0}.smtp-config{padding:12px}}
@media(prefers-reduced-motion:reduce){.item-card,.article-row,.side-box{transition:none}}

/* V1.7.0 accessibility and small-screen density */
:root{color-scheme:light}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #96601b;outline-offset:3px}
:where(.chat-send,.admin-record,.form-grid,.item-card,.article-row){min-width:0}
:where(.detail,.panel,.item-card,.admin-record) :where(p,h1,h2,h3,small){overflow-wrap:anywhere}
.chat-message p{white-space:pre-wrap;overflow-wrap:anywhere}
.item-cover{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}
@media(max-width:700px){.wrap{width:min(100% - 24px,1280px)}.main{padding-top:18px}.form-panel,.panel,.detail{padding:18px}.admin-record{flex-wrap:wrap;gap:12px}.admin-record form{max-width:100%}.header-main{min-height:66px;height:auto;padding-block:10px}.city-picker{max-width:130px;margin-inline:0}.brand{white-space:normal}.section-title{align-items:flex-start}.section-title h2{font-size:20px}}
@media(max-width:420px){.header-main{gap:8px}.brand{font-size:16px;letter-spacing:0}.brand small{font-size:8px;letter-spacing:1px}.header-actions{font-size:12px}.form-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.report-dialog{width:min(450px,calc(100vw - 28px));max-height:min(90vh,740px);overflow:auto;border:1px solid var(--line);border-radius:17px;padding:26px;background:#fff;color:var(--ink);box-shadow:0 24px 65px rgba(0,0,0,.2)}
.report-dialog::backdrop{background:rgba(9,35,27,.55)}
.report-dialog h2{font-size:20px;margin:0 0 8px}
.report-dialog label{display:block;margin:18px 0 14px;font-weight:700}
.report-dialog textarea{display:block;margin-top:7px}
.report-dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}

@supports(padding-bottom:env(safe-area-inset-bottom)){.mobile-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))}}

/* V1.8.0: compact moderation and chat usability; no layout-breaking overrides */
.chat-messages{overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0}
.chat-message{border-bottom:1px solid rgba(21,60,52,.09);padding-block:10px}
.chat-message:last-child{border-bottom:0}
.chat-send{gap:10px;align-items:center}.chat-send input{min-width:0}
.admin-record,.form-panel,.filters,.chat-main{overflow-wrap:anywhere}
.notice.good{border-color:#93b8a2;background:#eef6ef;color:#174c38}
.notice.bad{border-color:#d8aa9e;background:#fff1ec;color:#862e24}
@media(max-width:700px){.chat-messages{max-height:min(62vh,600px)}.chat-send{flex-wrap:wrap}.chat-send input{flex:1 1 180px}.chat-send button{min-height:44px}.admin-content .stat-grid{gap:10px}.admin-content .stat{min-width:0}}

/* v2.0 release: searchable back office and accessible mobile account management */
.member-filters{display:grid;grid-template-columns:minmax(180px,2fr) minmax(110px,1fr) minmax(110px,1fr) auto auto;gap:12px;align-items:end;padding:18px;margin:10px 0 22px;background:#fff;border:1px solid #dce5de;border-radius:16px}
.member-filters label{display:flex;flex-direction:column;gap:6px;color:#244c40;font-weight:650;font-size:13px}
.member-filters input,.member-filters select{width:100%;min-height:44px;margin:0}
.member-filters>.btn,.member-filters>.button-outline{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px}
.member-row{gap:16px}.member-details{flex:1 1 220px;min-width:0}.member-details p{margin:5px 0;overflow-wrap:anywhere}
.member-row form{display:flex;align-items:flex-end;gap:8px;max-width:100%}
.member-row select{max-width:130px}
.member-row .button-outline{min-height:44px}
.auth-card input{min-height:46px}
@media(max-width:1000px){.member-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.member-filters label:first-child{grid-column:1/-1}}
@media(max-width:610px){.member-filters{grid-template-columns:1fr;padding:14px}.member-filters label:first-child{grid-column:auto}.member-row{display:flex;flex-wrap:wrap}.member-row form{width:100%;justify-content:flex-start}.member-row select{flex:1;min-width:90px;max-width:none}}

.password-entry{display:flex;align-items:stretch;gap:0;border:1px solid #aebfb5;border-radius:11px;overflow:hidden;background:white;max-width:100%}
.password-entry:focus-within{outline:3px solid #8f5f24;outline-offset:2px}
.password-entry input{flex:1 1 0;min-width:0;width:100%;border:0!important;outline:none!important;border-radius:0!important;margin:0!important;padding:13px 14px!important;background:transparent!important}
.password-entry button{flex:0 0 auto;border:0;border-left:1px solid #dce5de;background:#f5f8f4;color:#173a35;font-weight:700;min-height:46px;padding:8px 15px}
.password-entry button:hover{background:#e6eee8}
.password-entry button:focus-visible{outline:3px solid #8f5f24;outline-offset:-3px}

.mfa-settings .mfa-key{padding:14px;background:#f3f7f2;border:1px dashed #a9bfb3;border-radius:12px;margin:12px 0;max-width:100%;overflow-wrap:anywhere}.mfa-key code{font-size:clamp(14px,2.3vw,19px);letter-spacing:.055em}.mfa-settings form{display:grid;gap:10px;max-width:440px}.mfa-settings summary{cursor:pointer;padding:8px 0}

/* V3.0 - commercial portal visual system: warm cream, pine and restrained gold */
:root{--pine:#173a35;--pine2:#244e42;--cream:#f8f7f3;--gold:#d5a45e;--ink:#21362e;--muted:#596c62;--line:#e0e7e0;--shadow:0 15px 38px rgba(24,53,40,.055)}
body{background:var(--cream);color:var(--ink);font-size:15px;line-height:1.65}
.wrap{width:min(1320px,calc(100% - 48px))}
.site-header{background:#fff;box-shadow:0 2px 18px rgba(29,55,40,.025)}
.header-main{height:76px;gap:20px}
.brand{font-size:22px;letter-spacing:0}.brand small{letter-spacing:1.5px;font-size:9px}
.city-picker select{border:1px solid #e2e9e3;background:#f8faf7;border-radius:12px;padding-inline:14px;min-height:42px;max-width:270px}
.nav-line{background:#fff}.nav-inner{gap:24px;min-height:46px}.nav-inner a{font-weight:650;font-size:13px;transition:color .14s}.nav-inner a:hover{color:#956320}
.nav-inner .nav-publish{border-radius:9px;background:var(--pine);padding:7px 17px;color:#fff}
.header-actions .link-pill{border-radius:11px;background:#eaf2eb;padding:9px 15px}.eyebrow{color:#a57b3b;font-size:11px;letter-spacing:1.65px}
.hero-side .feature-tag{color:#f5dfb4;background:#295a49;font-size:12px}
.category-strip{grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin:20px 0 34px}
.category-strip a{padding:17px 5px 14px;gap:5px;min-width:0;border-radius:13px}.category-strip span{background:#eff6ee;border-radius:10px;display:grid;place-items:center;width:44px;height:44px;font-size:22px}.category-strip b{font-size:13px}.category-strip small{font-size:11px}
.content-layout{grid-template-columns:minmax(0,1fr) minmax(260px,300px);gap:25px}
.section-title{margin-top:0}.section-title h2{font-size:23px}.section-title>a{color:#2d6b50}
.item-card,.article-row,.side-box,.ad,.panel,.admin-record{border-color:#e3e8e1;box-shadow:0 3px 12px rgba(34,52,42,.028)}
.item-card{border-radius:13px;padding:17px;min-height:174px}.item-card h3{font-size:16px;line-height:1.42}
.item-kind{background:#e8f2ea;color:#275843}.item-meta{border-top-color:#edf1eb}
.article-row{padding:15px 18px;border-radius:13px}.article-row h3{font-size:16px}.article-row p{line-height:1.55}
.side-box,.ad{padding:19px;border-radius:14px}
.admin-layout{grid-template-columns:220px minmax(0,1fr);gap:26px}
.admin-sidebar{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:17px 10px}
.admin-sidebar h3{color:#1d4937;font-size:13px;padding:4px 12px;margin:6px 0 13px;letter-spacing:.03em}
.admin-sidebar a{border-radius:8px;font-size:13px;color:#465950;font-weight:600;padding:11px 13px;min-height:43px}
.admin-sidebar a.active{background:#e7f0e7;color:#18533a;border-left:3px solid #b78a4d;font-weight:760}
.admin-content{min-width:0}.admin-content .section-title h1{font-size:28px}
.admin-content .stat{background:#fff;border:1px solid #e3e8e1;border-radius:14px}
.admin-record{border-radius:11px}.admin-record b{overflow-wrap:anywhere}
.notice{border-radius:12px}.btn{border-radius:10px}
.geo-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.geo-summary>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px 20px;display:grid;gap:5px}
.geo-summary b{font-size:26px;line-height:1.2;color:var(--pine)}.geo-summary span{font-size:12px;color:var(--muted)}
.geo-search{display:flex;gap:12px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px;margin:18px 0 22px}
.geo-search label{flex:1;min-width:0;font-size:12px;font-weight:700;color:#3c5145}.geo-search :is(input,select){min-height:44px;margin-top:5px}
.geo-place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.geo-place{display:grid;gap:5px;background:#fff;border:1px solid var(--line);padding:17px;border-radius:13px;min-width:0}
.geo-place:hover{border-color:#b5c8b9;text-decoration:none;box-shadow:var(--shadow)}.geo-place strong{font-size:15px;color:#244b38;overflow-wrap:anywhere}.geo-place small{color:var(--muted);font-size:12px}
.geo-source{margin-top:23px;font-size:12px;color:var(--muted)}
.staff-auth{min-height:100vh;display:grid;place-items:center;background:linear-gradient(125deg,#eaf2e8,#f8f7f3 50%,#f4ead7);padding:30px 16px}
.staff-login{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:35px;box-shadow:0 20px 80px rgba(20,58,43,.075)}
.staff-logo{display:flex;align-items:center;gap:14px;color:var(--pine);font-size:32px;font-weight:800}.staff-logo span{font-size:18px;line-height:1.3}.staff-logo small{font-size:10px;color:#8c957f;letter-spacing:2px}.staff-login h1{font-size:27px;margin:27px 0 4px}.staff-login p{font-size:13px;color:#64746b}.staff-login label{display:grid;gap:7px;font-size:13px;font-weight:750;margin:17px 0}.staff-login .btn{width:100%;margin-top:10px}.staff-login small{color:#738077;font-size:11px}
@media(max-width:1100px){.category-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-layout{grid-template-columns:195px minmax(0,1fr)}}
@media(max-width:760px){.wrap{width:min(100% - 28px,720px)}.content-layout{grid-template-columns:1fr}.category-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.geo-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.geo-search{flex-wrap:wrap}.geo-search label{flex:1 1 180px}.admin-layout{display:block}.admin-sidebar{display:flex;overflow:auto;gap:6px;margin-bottom:17px;padding:7px;white-space:nowrap}.admin-sidebar h3{display:none}.admin-sidebar a{flex:none;padding:9px 12px}.admin-content{min-width:0}.header-main{height:65px}.city-picker{max-width:150px}.nav-inner{gap:17px}.main{padding-bottom:105px}}
@media(max-width:480px){.wrap{width:calc(100% - 24px)}.category-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.category-strip a{padding:11px 2px}.category-strip span{width:36px;height:36px;font-size:19px}.category-strip b{font-size:11px}.category-strip small{font-size:10px}.listing-grid{grid-template-columns:1fr}.geo-place-grid{grid-template-columns:1fr}.geo-summary{gap:6px}.geo-summary>div{padding:12px 8px}.geo-summary b{font-size:21px}.geo-summary span{font-size:10px}.staff-login{padding:25px 20px}.header-actions{gap:9px}.brand{font-size:17px}}
@media(prefers-reduced-motion:reduce){.item-card,.article-row,.category-strip a{transition:none;transform:none}}

/* V3.1.0 — improved admin operations and forms */
.admin-content .form-panel{background:var(--surface,#fff);border-radius:16px}
.admin-content .notice{line-height:1.65}
.admin-content .admin-record{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.admin-content .admin-record>div:first-child{flex:1 1 260px;min-width:0}
.admin-content .admin-record form{display:inline-flex;align-items:center;gap:8px;max-width:100%}
.admin-content .admin-record button{min-height:44px}
.admin-content .admin-record .button-outline{white-space:normal}
.admin-content label{font-weight:600;line-height:1.4}
.admin-content .form-panel input[type=file]{width:100%;min-width:0;padding:10px;border:1px dashed #c6d4c8;background:#f8fbf8;border-radius:10px}
.admin-sidebar a[aria-current=page]{background:#e7f1ea;font-weight:750;color:#173a35}
@media(max-width:700px){.admin-content .admin-record{display:block}.admin-content .admin-record form{display:flex;width:100%;margin-top:10px}.admin-content .admin-record button{width:100%}.admin-content .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.item-card,.btn,.button-outline{transition:none!important;animation:none!important}}

/* V3.2.0 · focused back-office (not the public community navigation) */
.staff-console .site-header,.staff-console .footer,.staff-console .mobile-nav{display:none!important}
.staff-console .main{width:min(1450px,calc(100% - 48px));margin-inline:auto;padding-top:23px;padding-bottom:60px}
.staff-console .flash:empty{display:none}
.console-topbar{background:#fff;border:1px solid #dce7db;border-radius:17px;padding:15px 20px;display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 24px;box-shadow:0 4px 20px rgba(22,55,43,.035)}
.console-home{display:flex;gap:12px;align-items:center;color:#173a35;text-decoration:none;font-size:15px}
.console-home>span:last-child{display:grid;gap:0}.console-home small{font-size:10px;color:#738078;letter-spacing:1.2px}
.console-mark{background:#173a35;color:#f5d69f;font-size:20px;font-weight:750;border-radius:11px;display:grid;place-items:center;width:42px;height:42px;flex:none}
.console-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:12px;color:#55685f}
.console-links a{color:#236446;font-weight:700}
.staff-console .admin-layout{align-items:start}
.staff-console .admin-sidebar{position:sticky;top:18px;max-height:calc(100vh - 35px);overflow-y:auto;scrollbar-width:thin}
.staff-console .admin-sidebar a:focus-visible,.console-topbar a:focus-visible{outline:3px solid #ad7f41;outline-offset:3px}
.staff-console .admin-record,.staff-console .form-panel{background:#fff}
@media(max-width:800px){.staff-console .main{width:calc(100% - 24px);padding-top:12px}.console-topbar{align-items:flex-start;padding:13px;flex-direction:column}.console-links{gap:10px}.staff-console .admin-sidebar{position:static;max-height:none;display:flex;overflow-x:auto;white-space:nowrap;padding:7px;gap:5px;scroll-snap-type:x proximity}.staff-console .admin-sidebar h3{display:none}.staff-console .admin-sidebar a{min-width:max-content;scroll-snap-align:start}.staff-console .admin-layout{display:block}.staff-console .admin-content{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.staff-console *{scroll-behavior:auto!important;transition:none!important}}

/* V3.3.0: actual, read-only operating-state indicators for staff */
.staff-console .operation-flags{background:#fff;border:1px solid #dce7db;border-radius:16px;padding:18px 20px;margin:20px 0 18px;box-shadow:0 5px 20px rgba(22,55,43,.035)}
.staff-console .operation-flags-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;flex-wrap:wrap}
.staff-console .operation-flags-heading h2{margin:0;color:#173a35;font-size:17px}
.staff-console .operation-flags-heading a{color:#176448;font-size:13px;font-weight:700}
.staff-console .operation-flag-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.staff-console .operation-flag{border:1px solid #e1e9e0;border-radius:11px;padding:13px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}
.staff-console .operation-flag span{color:#52675b}.staff-console .operation-flag strong{font-size:12px;white-space:nowrap;font-weight:800}
.staff-console .operation-flag strong.on{color:#176448}.staff-console .operation-flag strong.off{color:#7a5151}
@media(max-width:800px){.staff-console .operation-flag-list{grid-template-columns:1fr}.staff-console .operation-flags{padding:15px}.staff-console .operation-flag{padding:12px}}

/* V3.4.0: clear security forms and mobile-friendly fields */
.staff-login input:focus-visible,.auth-card input:focus-visible,.staff-console input:focus-visible {outline:3px solid #D5A45E;outline-offset:2px;}
@media(max-width:600px){.staff-login,.auth-card{width:min(100%,100vw - 24px);box-sizing:border-box}.staff-login input,.auth-card input{min-width:0;max-width:100%;box-sizing:border-box}}

/* V3.5.0 accessibility and small-screen account/security usability */
.auth-card .password-entry,.staff-login .password-entry{display:flex;align-items:center;gap:8px;min-width:0}
.auth-card .password-entry input,.staff-login .password-entry input{flex:1;min-width:0}
.auth-card .password-entry button,.staff-login .password-entry button{flex:none;min-height:44px;min-width:56px}
:is(.staff-console,.auth-card,.staff-login) :is(button,a,input,textarea,select):focus-visible{outline:3px solid #B47C2D;outline-offset:3px}
.staff-console .pagination,.main .pagination{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}
.staff-console .admin-record{overflow-wrap:anywhere}
@media(max-width:600px){.staff-console .table-scroll{overflow-x:auto;scrollbar-width:thin}.staff-console .table-scroll table{min-width:630px}.staff-console input,.staff-console textarea,.staff-console select{max-width:100%;box-sizing:border-box}.staff-login{border-radius:15px}.auth-card .password-entry{width:100%}}


/* V3.6.0 conversion-first visual system: refined editorial portal + accessible signup journey */
:root{--pine:#183f38;--pine2:#29675a;--pine3:#102d28;--gold:#d8a65c;--cream:#faf9f6;--ink:#1d302b;--muted:#5b6d66;--line:#dce5df;--soft:#eef4ef;--round:16px;--shadow:0 12px 36px rgba(17,55,43,.07)}
body{color:var(--ink);background:var(--cream);line-height:1.65}
.main{padding-top:22px}.site-header{box-shadow:0 2px 10px rgba(23,58,51,.025)}
.header-actions .link-pill,.nav-publish{border-radius:10px!important;padding:10px 15px!important}
.brand{letter-spacing:0}.header-main{height:74px}
.category-strip{grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;margin:20px 0 32px}
.category-strip a{padding:15px 5px;border-radius:14px;min-height:102px}.category-strip a:hover{transform:translateY(-2px)}
.content-layout{grid-template-columns:minmax(0,1fr) 285px;gap:24px}.item-card{border-radius:15px;padding:16px}
.article-row{border-radius:13px;padding:16px}
/* Auth: two-column journey, minimal fields, privacy-first trust content. */
.auth-layout{max-width:1090px;margin:16px auto 56px;display:grid;grid-template-columns:minmax(0,.98fr) minmax(360px,.96fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:white;box-shadow:0 22px 65px rgba(17,53,42,.08)}
.auth-benefits{background:linear-gradient(146deg,#123f36,#266558);color:#fff;padding:45px 43px;min-width:0;position:relative;display:flex;flex-direction:column}
.auth-benefits:after{content:"";width:235px;height:235px;position:absolute;right:-140px;top:-70px;border:42px solid rgba(255,255,255,.055);border-radius:50%;pointer-events:none}
.auth-back{color:#c8e1d2;font-size:13px;margin-bottom:55px;align-self:flex-start}.auth-back:hover{color:white}
.auth-benefits .eyebrow{font-size:11px;letter-spacing:1.5px;color:#f8d69f}
.auth-benefits h1{font-size:clamp(28px,3vw,39px);letter-spacing:-.8px;line-height:1.3;margin:14px 0 13px;max-width:415px}
.auth-benefits>p{color:#d6e7de;font-size:14px;max-width:415px;line-height:1.9}
.auth-benefit-list{display:grid;gap:19px;margin-top:24px}.auth-benefit-list>div{display:flex;align-items:start;gap:13px}.auth-benefit-list>div>span{display:grid;place-items:center;flex-shrink:0;width:37px;height:37px;border-radius:12px;background:#ffffff1e;color:#ffe1a5;font-size:23px;font-weight:700}
.auth-benefit-list b,.auth-benefit-list small{display:block}.auth-benefit-list b{font-size:14px}.auth-benefit-list small{font-size:12px;color:#d3e1d9;margin-top:2px;line-height:1.7}
.auth-card-refresh{width:auto;max-width:none;border:0!important;box-shadow:none!important;border-radius:0;margin:0!important;padding:39px 42px!important;min-width:0;background:white}
.auth-step{display:flex;justify-content:space-between;align-items:center;color:#507469;font-size:12px;font-weight:700;letter-spacing:.3px}.auth-step span{color:#9b6934}
.auth-card-refresh h2{font-size:26px;line-height:1.35;letter-spacing:-.5px;margin:18px 0 7px}.auth-subtitle{color:var(--muted);font-size:13px;line-height:1.65;margin-bottom:24px!important}
.auth-card-refresh form>label:not(.honeypot):not(.agreement){display:block;margin:14px 0;font-weight:730;font-size:13px;color:#2a453a}
.auth-card-refresh form label>small{float:right;font-size:11px;color:#697b73;font-weight:500;line-height:1.55}
.auth-card-refresh form>label>input,.auth-card-refresh .password-entry{margin-top:6px;width:100%}
.auth-card-refresh input[type=email],.auth-card-refresh input[type=text]{min-height:48px;border-radius:11px}
.auth-card-refresh .password-entry{border-radius:11px}
.password-strength{margin:7px 0 16px;font-size:12px;color:var(--muted)}.strength-track{height:5px;border-radius:8px;margin-top:8px;background:#e5ece7;overflow:hidden}
.strength-track i{display:block;width:0;height:100%;background:#c48659;transition:width .15s ease}.password-strength[data-score="2"] i{background:#ac9951}.password-strength[data-score="3"] i{background:#31886a}
.agreement{display:flex!important;gap:10px;align-items:start;font-size:12px!important;line-height:1.7;font-weight:500!important;margin:14px 0 18px!important;color:#455d51}
.agreement input{width:18px;height:18px;min-height:18px;flex-shrink:0;margin-top:2px;accent-color:#185e4a}
.agreement span small{display:block;float:none!important;color:var(--muted);font-size:11px;font-weight:400}
.agreement a{text-decoration:underline;text-underline-offset:2px}.auth-submit{min-height:50px;font-size:15px;border-radius:11px;width:100%}
.auth-card-refresh .switch-auth{display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap;margin:21px 0 9px;font-size:13px}
.auth-card-refresh .switch-auth .quiet-link{flex:1 0 100%;text-align:right;margin-top:-3px;margin-bottom:8px}
.auth-guest{text-align:center;border-top:1px solid var(--line);padding:17px 0 0;margin:16px 0 0;font-size:12px}
.auth-guest a{color:#5b7469}
/* Verification / onboarding and posting flow. */
.welcome-panel{max-width:920px;margin:14px auto 50px;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}
.welcome-header{background:linear-gradient(120deg,#143f37,#2a6654);color:#fff;padding:33px 39px}.welcome-header .eyebrow{color:#f6d29a}.welcome-header h1{font-size:clamp(25px,3vw,34px);margin:11px 0 8px}.welcome-header p{margin:0;color:#d5e8de}
.welcome-steps{padding:28px 39px 15px}.welcome-step{display:flex;gap:20px;align-items:flex-start;margin-bottom:26px}.step-num{display:grid;place-items:center;background:#f7ecd7;color:#855b2e;font-weight:800;width:43px;height:43px;border-radius:13px;flex-shrink:0}.welcome-step.completed .step-num{background:#e3f4e9;color:#14663d}.welcome-step h2{font-size:19px;margin:2px 0 7px}.welcome-step p{margin:0 0 14px;color:var(--muted);font-size:14px}.welcome-actions{display:flex;flex-wrap:wrap;gap:10px}.welcome-actions .button-outline{min-height:44px;display:inline-flex;align-items:center}.welcome-fine{font-size:12px;color:var(--muted);background:#f6f8f4;border-top:1px solid var(--line);padding:14px 39px;margin:0}
.post-guidance{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 19px}.post-guidance span{border:1px solid var(--line);border-radius:11px;background:#fff;padding:8px 12px;font-size:12px;color:#496055}.post-guidance .post-step-active{background:#e5f2ea;border-color:#b7d6c1;color:#1c563e;font-weight:750}.form-footnote{color:var(--muted);font-size:12px;margin:9px 0 0}
/* Operator experience: unify spacing and contrast, no invented conversion numbers. */
.staff-console .admin-content{min-width:0}.admin-content .stat{border:1px solid var(--line);background:#fff;border-radius:15px}.admin-content .stat strong{color:#183f38}.admin-content .section-title{align-items:center}
.admin-content .notice,.admin-content .panel{border-radius:14px}.admin-sidebar a.active{background:#1b5144;color:white;border-radius:9px}.admin-sidebar a:focus-visible{outline:3px solid #cf9b4c;outline-offset:2px}
.growth-stats{margin-top:22px;padding:20px;background:#f7faf7;border:1px solid var(--line);border-radius:16px}.growth-stats h2{font-size:17px;margin:0 0 11px}.growth-stats p{font-size:12px;color:var(--muted)}
@media(max-width:1050px){.category-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.auth-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1fr)}.auth-benefits,.auth-card-refresh{padding:32px!important}}
@media(max-width:750px){.auth-layout{display:flex;flex-direction:column;margin:4px 0 32px;border-radius:16px}.auth-benefits{padding:24px 22px!important}.auth-back{margin-bottom:12px}.auth-benefits h1{font-size:26px;margin:8px 0}.auth-benefits>p{margin:0}.auth-benefit-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:15px}.auth-benefit-list>div{display:block}.auth-benefit-list>div>span{width:31px;height:31px;font-size:18px}.auth-benefit-list b{margin:5px 0 2px;font-size:12px}.auth-benefit-list small{font-size:11px}.auth-card-refresh{padding:24px 20px!important}.category-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.welcome-header{padding:24px}.welcome-steps{padding:23px 20px 0}.welcome-fine{padding:14px 20px}}
@media(max-width:410px){.auth-benefit-list{grid-template-columns:1fr;gap:8px}.auth-benefit-list>div{display:flex;gap:8px}.auth-benefit-list b{margin:0}.auth-benefit-list small{display:none}.category-strip{gap:8px}.category-strip a{min-height:88px;padding:11px 3px}.auth-card-refresh label>small{float:none;display:block}.post-guidance span{flex:1 1 44%}}
@media(prefers-reduced-motion:reduce){.strength-track i{transition:none}}

.password-strength[data-score="1"] i{width:33.333%}
.password-strength[data-score="2"] i{width:66.667%}
.password-strength[data-score="3"] i{width:100%}
.verification-needed{display:inline-flex;align-items:center;min-height:44px;color:#6b5540;background:#fdf5e6;padding:10px 14px;border-radius:10px;font-size:13px}
.empty-action{padding:30px 23px;text-align:center;background:white;border:1px dashed #acc7b8;border-radius:15px}.empty-action strong{display:block;font-size:17px;margin-bottom:5px}.empty-action p{margin:0 0 15px;color:var(--muted);font-size:13px}

/* V3.7: verification confirmation and password recovery clarity */
.verification-confirm{max-width:640px;margin:20px auto 40px;padding:clamp(20px,4vw,36px)}
.verification-confirm h2{margin:0 0 12px;font-size:clamp(21px,3vw,27px)}
.verification-confirm p{line-height:1.75}
.verification-confirm .btn{min-height:48px;margin-top:12px}
.auth-card .password-entry+label{margin-top:12px}
@media(max-width:640px){.verification-confirm{margin:12px 0 28px}.verification-confirm form .btn{width:100%}}
/* V3.7 accessibility: do not stretch the legal consent checkbox to 100% width. */
.auth-card-refresh .agreement>input[type="checkbox"]{width:18px!important;max-width:18px!important;min-width:18px!important;min-height:18px!important;height:18px!important;flex:0 0 18px!important;margin:2px 0 0!important;padding:0!important;accent-color:var(--pine)}
.auth-card-refresh .agreement>span{display:block;flex:1 1 0%;min-width:0;overflow-wrap:anywhere}


/* V3.8 · coherent typography, warm neutral palette and anti-orphan layout */
:root{--pine:#17463b;--pine2:#24604f;--gold:#c79247;--cream:#faf9f5;--ink:#23312b;--muted:#52675c;--line:#e1e8e0;--shadow:0 9px 26px rgba(25,60,43,.065);--round:14px}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-size:16px;line-height:1.75;letter-spacing:.005em;text-rendering:optimizeLegibility}
p,h1,h2,h3,h4,li,dt,dd,label,.item-card,.admin-content,.article-row,.welcome-step{word-break:normal;overflow-wrap:break-word}
h1,h2,h3,h4{line-height:1.38;letter-spacing:-.012em;text-wrap:pretty}
p,li{line-height:1.78}
.section-title h1,.section-title h2,.section-heading h1{line-height:1.38;text-wrap:balance}
.section-title{flex-wrap:wrap;align-items:baseline}
.section-title h2,.section-title h1{min-width:min(100%,230px)}
.item-card h3,.article-row h3{font-size:16px;line-height:1.55;overflow-wrap:break-word}
.item-card p,.article-row p,.side-box p{font-size:14px;line-height:1.75}
.item-meta{font-size:13px}
.category-strip a{min-width:0;gap:5px}
.category-strip b{font-size:14px;line-height:1.5;white-space:normal;word-break:keep-all}
.category-strip small{font-size:12px;line-height:1.4}
.nav-inner,.header-actions{font-size:14px}
.btn,.button-outline,button{line-height:1.45;white-space:normal;word-break:keep-all}
.form-panel,.panel,.auth-card,.side-box,.ad{min-width:0}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-content{font-size:15px;line-height:1.75}
.admin-content h1{font-size:clamp(22px,2.2vw,28px)}
.admin-content h2{font-size:20px;line-height:1.45}
.admin-content .admin-record{display:flex;gap:14px;align-items:start;flex-wrap:wrap}
.admin-content .admin-record>div:first-child{flex:1 1 380px;min-width:min(100%,320px);overflow-wrap:break-word}
.admin-content .admin-record b,.admin-content .admin-record strong{overflow-wrap:break-word;word-break:normal;line-height:1.55}
.admin-content .admin-record p{font-size:14px;margin:6px 0;line-height:1.7}
.admin-content .admin-record form{display:flex;flex:0 1 auto;min-width:0;flex-wrap:wrap;align-items:center;gap:9px}
.admin-content .admin-record select{width:auto;min-width:134px;max-width:100%;flex:1 1 134px}
.admin-content .admin-record form button{flex:0 0 auto;min-width:100px}
.admin-content .admin-record .admin-totp-label{min-width:174px;max-width:220px}
.admin-content .admin-record .admin-totp-label input{width:100%}
.admin-content .form-panel label{font-size:14px;line-height:1.55}
.admin-sidebar a{font-size:14px;line-height:1.45}
.staff-console .operation-flag-list{grid-template-columns:repeat(2,minmax(260px,1fr))}
.staff-console .operation-flag{flex-wrap:nowrap;font-size:14px;align-items:center}
.staff-console .operation-flag strong{font-size:13px}
.staff-console .growth-stats p{font-size:13px}
.smart-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;border:1px solid #cfdecf;background:linear-gradient(120deg,#eff6ef,#fffdfa);border-radius:18px;padding:22px 24px;margin:18px 0 22px}
.smart-intro>div{flex:1 1 340px;min-width:0}
.smart-intro h2{margin:0 0 5px;color:var(--pine);font-size:22px}
.smart-intro p{font-size:14px;color:var(--muted);line-height:1.75;margin:0;max-width:75ch}
.smart-intro .btn,.smart-intro .button-outline{flex:0 0 auto}
.smart-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:17px 0 24px}
.smart-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:2px}
.smart-stat strong{font-size:28px;line-height:1.25;color:var(--pine);font-variant-numeric:tabular-nums}
.smart-stat span{font-size:13px;color:var(--muted)}
.smart-tip{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-left:4px solid #c79247;border-radius:12px;padding:14px 20px;margin:10px 0}
.smart-tip>div{flex:1 1 350px;min-width:0}
.smart-tip b{font-size:15px}
.smart-tip p{color:var(--muted);margin:3px 0;font-size:14px}
.smart-tip a{white-space:nowrap;font-weight:650}
.smart-subtitle{margin:27px 0 8px}
.smart-case{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:11px 0}
.smart-case-main{flex:1 1 430px;min-width:min(100%,260px)}
.smart-case h3{margin:8px 0;font-size:16px;line-height:1.55;overflow-wrap:break-word}
.smart-case p{font-size:13px;color:var(--muted);margin:0}
.smart-case-kicker{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.smart-severity{font-weight:750;padding:3px 10px;border-radius:99px;background:#eef2ec;color:#45604b}
.smart-severity-high{background:#faece5;color:#963c2e}.smart-severity-medium{background:#faf1de;color:#8a5b24}
.smart-case-action{display:grid;gap:9px;justify-items:end;flex:0 0 auto}
.smart-case-action b{font-size:22px;color:var(--pine);font-variant-numeric:tabular-nums}
.smart-case-action small{font-size:12px;color:var(--muted)}
@media(max-width:1100px){.staff-console .operation-flag-list{grid-template-columns:1fr}.smart-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){body{font-size:15px}.category-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.category-strip b{font-size:13px}.smart-intro{padding:16px;gap:13px}.smart-intro .btn,.smart-intro .button-outline{width:100%;text-align:center}.admin-content .admin-record{display:block}.admin-content .admin-record>div:first-child{min-width:0}.admin-content .admin-record form{display:flex;flex-wrap:wrap;width:100%;margin-top:12px}.admin-content .admin-record form button{min-width:130px}.form-grid{grid-template-columns:1fr}}
@media(max-width:420px){.category-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.category-strip small{font-size:11px}.category-strip b{font-size:13px}.smart-summary{gap:8px}.smart-stat{padding:12px}.smart-stat strong{font-size:23px}.smart-case{padding:14px}.smart-case-main{flex-basis:100%;min-width:0}.smart-case-action{display:flex;width:100%;justify-content:space-between;align-items:center}.admin-content .admin-record form button{flex:1 1 130px}.auth-benefit-list{grid-template-columns:1fr}.auth-benefit-list>div{display:flex;align-items:center;gap:10px}}


/* V3.9.0 — editorial typography & trustworthy local commerce; final overrides only. */
:root{--pine:#18483c;--pine2:#235a48;--gold:#ba853a;--cream:#faf9f5;--ink:#26352d;--muted:#52665b;--line:#dbe5dc;--shadow:0 6px 24px rgba(27,64,46,.055)}
body{font-size:16px;line-height:1.72;color:var(--ink);background:var(--cream)}
:where(.item-card,.article-row,.admin-record,.growth-inline,.smart-case,.growth-price,.side-box){word-break:normal;overflow-wrap:break-word;min-width:0}
:where(.item-card h3,.article-row h3,.smart-case h3,.admin-record b,.growth-inline strong){font-size:clamp(16px,1.42vw,19px);line-height:1.48;text-wrap:pretty;word-break:normal;overflow-wrap:break-word;max-width:100%}
.item-card h3,.article-row h3{overflow-wrap:break-word!important;word-break:normal!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
:where(.item-card p,.article-row p,.admin-record p){overflow-wrap:break-word!important;word-break:normal!important;line-height:1.68}
.item-card{padding:19px;gap:9px;min-width:0}.listing-grid{grid-template-columns:repeat(2,minmax(270px,1fr));gap:15px}
.content-layout{grid-template-columns:minmax(0,1fr) minmax(265px,290px);gap:24px}
.section-title{flex-wrap:wrap;align-items:center}.section-title h2{font-size:clamp(20px,2vw,25px)}
.category-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.category-strip a{min-width:0;padding:17px 8px;gap:6px}.category-strip b{font-size:15px;line-height:1.35;text-wrap:balance;word-break:keep-all}.category-strip small{font-size:12px}
.nav-inner{gap:clamp(13px,1.7vw,27px)}.nav-inner a,.header-actions a{white-space:nowrap}
.admin-content .admin-record{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;padding:17px 19px}
.admin-content .admin-record>div:first-child{flex:1 1 310px;min-width:0}
.admin-content .admin-record form{flex:0 1 auto;min-width:245px;display:flex;flex-wrap:wrap;gap:9px;align-items:end}
.admin-content .admin-record form select{flex:1 1 130px;max-width:220px}
.admin-content .admin-record form button{white-space:normal;min-width:105px}
.admin-content .admin-totp-label{flex:1 1 185px!important;max-width:205px!important}
.admin-content .admin-record b{overflow-wrap:break-word!important;word-break:normal!important}
.growth-inline{display:flex;align-items:center;justify-content:space-between;gap:22px;background:#e8f1e9;border:1px solid #cfe0d1;border-radius:16px;padding:19px 22px;margin:20px 0}
.growth-inline>div{min-width:0;flex:1 1 350px}.growth-inline strong{display:block;font-size:19px;color:#183d31}.growth-inline p{margin:6px 0 0;color:#425b4b;font-size:14px}.growth-inline a{flex:none}
.growth-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:23px 0}
.growth-price{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px;display:flex;flex-direction:column;gap:13px;min-width:0}
.growth-price h2{margin:0;font-size:20px;line-height:1.4;word-break:normal;text-wrap:balance}
.growth-price p{line-height:1.7;margin:0;color:var(--muted)}.growth-price .button-outline{margin-top:auto;align-self:flex-start}
.growth-kicker{font-size:12px;color:#1e634a;font-weight:750;letter-spacing:.06em}.growth-price-amount{font-weight:800;font-size:32px!important;color:#1e513a!important;line-height:1.25!important}.growth-price-amount small{font-size:13px;color:#5b6e61}
.growth-request{margin:24px 0}.growth-request>h2{font-size:22px;margin-top:0}.growth-disclosure{font-size:13px;color:#5b6e61;line-height:1.8;margin-top:20px}
.growth-orders-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.growth-orders-head h2{margin:0}.growth-finance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.growth-finance>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;display:grid;gap:9px}.growth-finance span{font-size:13px;color:var(--muted)}.growth-finance strong{font-size:27px;color:#1c523d}
@media(max-width:980px){.content-layout{grid-template-columns:minmax(0,1fr) 240px}.listing-grid{grid-template-columns:1fr}.growth-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.content-layout{display:block}.growth-price-grid{grid-template-columns:1fr}.growth-inline{flex-wrap:wrap}.growth-inline a{flex:1 1 100%;text-align:center}.category-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-content .admin-record>div:first-child{flex-basis:100%}.admin-content .admin-record form{flex:1 1 100%}.growth-finance{grid-template-columns:1fr}}
@media(max-width:480px){.category-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.category-strip a{padding:16px 9px;min-height:94px}.category-strip b{font-size:14px}.category-strip small{font-size:12px}.item-card{padding:17px}.growth-inline{padding:15px}.growth-inline strong{font-size:17px}.growth-price{padding:20px}.growth-price h2{font-size:18px}.staff-console .admin-content .admin-record form{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.staff-console .admin-content .admin-record form>*{max-width:none!important;min-width:0!important;width:100%!important}.staff-console .admin-content .admin-record button{width:100%}}


/* V3.10: sponsor content is distinguishable and paragraphs never collapse into 2-character columns. */
.campaign-section{margin:24px 0;padding:20px 22px;border:1px solid #bcd9c8;background:#f0f7f1;border-radius:18px;min-width:0}
.campaign-head{display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;margin-bottom:14px}
.campaign-head h2{font-size:clamp(18px,2vw,22px);margin:0;color:#1a4033}.campaign-head span{color:#406d53;font-size:12px}
.campaign-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.campaign-card{background:#fff;border:1px solid #d3e4d8;border-radius:12px;padding:16px;min-width:0;display:grid;gap:7px;text-decoration:none;color:#1c4031}
.campaign-card small{font-weight:700;color:#8a581c;font-size:12px}.campaign-card strong{font-size:17px;line-height:1.45;word-break:normal;overflow-wrap:break-word;text-wrap:pretty}
.campaign-card span{font-size:13px;line-height:1.6;color:#52665b}.campaign-card:focus-visible{outline:3px solid #bd8c43;outline-offset:3px}
.campaign-note{margin:13px 0 0;font-size:12px;line-height:1.65;color:#556c5b}
.admin-content .admin-record>div:first-child{flex-basis:320px;min-width:min(100%,270px)}
@media(max-width:640px){.campaign-section{padding:17px}.campaign-head{align-items:flex-start}.campaign-list{grid-template-columns:1fr}.admin-content .admin-record>div:first-child{flex-basis:100%;min-width:0}}

/* V3.11: member notice center, readable widths, no single-word columns */
.notice-inbox-link{display:flex;justify-content:flex-start;margin:1rem 0 1.25rem;gap:1rem}
.notice-inbox-link a{max-width:100%;text-wrap:pretty}
.notice-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;border:1px solid #d9e4dc;background:#fff;border-radius:14px;padding:1.2rem;margin:0 0 .8rem;min-width:0}
.notice-item.is-unread{border-left:4px solid #d5a45e;background:#fffdf8}
.notice-copy{flex:1 1 25rem;min-width:0;overflow-wrap:break-word;word-break:normal}
.notice-copy h2{font-size:1.1rem;margin:.3rem 0 .45rem;line-height:1.55}
.notice-copy p{line-height:1.75;margin:.2rem 0 .65rem;max-width:72ch}
.notice-item form{flex:0 0 auto;margin:0}
.notice-item small{color:#586a61}
@media(max-width:620px){.notice-item{flex-direction:column;padding:1rem;gap:.75rem}.notice-item form{width:100%}.notice-item form button{width:100%}.notice-copy{flex:auto;width:100%}}

/* V3.12 readable notification preferences and admin mail dashboard */
.mail-preferences{margin:1rem 0 1.5rem;max-width:100%;overflow-wrap:break-word;}
.mail-preferences h2{margin:0 0 .5rem;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.5;}
.mail-preferences p{max-width:66ch;line-height:1.8;}
.mail-preferences form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;}
.mail-preferences form label{flex:1 1 260px;min-width:0;}
.mail-preferences form button{flex:0 0 auto;min-height:44px;}
@media(max-width:620px){.mail-preferences form{display:grid;grid-template-columns:minmax(0,1fr);}.mail-preferences form button{width:100%;}}


/* V3.13 - newsroom hierarchy / community services / clearly identified advertising. */
:root{--pine:#153d35;--pine2:#255447;--cream:#fbfaf7;--ink:#21302a;--muted:#5d6c62;--line:#e1e5df;--gold:#b88945;--shadow:0 5px 25px rgba(19,52,40,.045)}
body{background:var(--cream);color:var(--ink);font-size:16px;line-height:1.72}
.wrap{width:min(1320px,calc(100% - 48px))}
.site-header{box-shadow:none;background:#fff}.nav-line{border-top:1px solid #edf0eb}.brand{letter-spacing:-.02em}
.main{padding-top:20px}
.edition-rule{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:25px 0 13px;padding:10px 0;border-top:1px solid #cbd4ca;border-bottom:1px solid #e1e6de;font-size:12px;letter-spacing:.02em;color:#59675c}
.edition-rule span:first-child{color:#173d34;font-weight:800;letter-spacing:.06em}
.edition-kicker{display:block;font-weight:800;color:#8d632e;font-size:11px;letter-spacing:.11em;line-height:1.6;margin-bottom:7px}
.editorial-front{margin:0 0 28px;min-width:0}.editorial-heading{border:0;margin:0 0 16px;align-items:flex-end}.editorial-heading h2{margin:0;color:#173e33;font-size:clamp(25px,2.8vw,35px);font-weight:800;line-height:1.26}.editorial-heading a{font-weight:750;white-space:nowrap}
.editorial-grid{display:grid;grid-template-columns:minmax(0,1.38fr) minmax(295px,.88fr);gap:0;background:#fff;border:1px solid #dce4db;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.editorial-lead{display:flex;flex-direction:column;gap:13px;justify-content:center;min-width:0;padding:clamp(24px,3vw,42px);color:var(--ink);text-decoration:none;background:linear-gradient(155deg,#ffffff 55%,#f2f6f0)}
.editorial-lead:hover{text-decoration:none}
.editorial-lead h3{font-size:clamp(26px,2.65vw,37px);line-height:1.35;margin:0;letter-spacing:-.035em;text-wrap:pretty;word-break:normal;overflow-wrap:break-word;color:#142e26}
.editorial-lead>p{font-size:16px;line-height:1.85;color:#546259;margin:0;max-width:63ch;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.editorial-byline{font-size:13px;color:#69786c;margin-top:5px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.editorial-byline span{color:#1d624d;font-weight:750}
.editorial-rail{border-left:1px solid #e4e7e1;display:grid;grid-template-rows:repeat(auto-fit,minmax(100px,auto));min-width:0}
.editorial-brief{padding:16px 21px;display:block;min-width:0;color:var(--ink);text-decoration:none;border-bottom:1px solid #e7ebe5;background:#fff}
.editorial-brief:last-child{border-bottom:0}.editorial-brief:hover{background:#f8faf7;text-decoration:none}.editorial-brief small{color:#976d37;font-size:11px;font-weight:800}.editorial-brief h3{font-size:clamp(16px,1.4vw,19px);margin:4px 0 6px;line-height:1.47;font-weight:780;color:#23362c;text-wrap:pretty;word-break:normal;overflow-wrap:break-word}.editorial-brief p{display:none}.editorial-brief span{color:#64756b;font-size:12px}
.editorial-empty{padding:28px 32px;background:#fff;border:1px solid #e0e5de;border-radius:14px;display:flex;gap:20px;align-items:center;justify-content:space-between}
.editorial-empty>div{min-width:0;max-width:75ch}.editorial-empty h3{margin:5px 0;font-size:clamp(20px,2vw,26px);line-height:1.42}.editorial-empty p{margin:7px 0 0;color:var(--muted)}.editorial-empty>a{flex-shrink:0;color:var(--pine);font-weight:800}
.partner-box{display:block;max-width:100%;min-width:0;border:1px solid #d7e1d7;border-radius:12px;background:#f3f6f2;margin:21px 0 26px;padding:0;overflow:hidden;box-shadow:none}
.partner-box__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 18px;background:#e9efea;border-bottom:1px solid #dae4da;color:#4b6255;font-size:11px;font-weight:800;letter-spacing:.05em}
.partner-box__body{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 22px;min-width:0}
.partner-box__copy{flex:1 1 360px;min-width:0}.partner-box__copy strong{display:block;color:#163b30;font-size:clamp(17px,1.7vw,23px);line-height:1.4;word-break:normal;overflow-wrap:break-word;text-wrap:pretty}
.partner-box__copy p{font-size:14px;line-height:1.7;margin:5px 0 0;color:#4f6156;overflow-wrap:break-word;word-break:normal}
.partner-box__cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:nowrap;flex-shrink:0;background:#1d5442;color:#fff;padding:10px 18px;border-radius:8px;font-size:13px;font-weight:750}
.partner-box__cta:hover{background:#143c31;color:#fff;text-decoration:none}
.partner-box__note{font-size:11px;color:#6c786d;border-top:1px solid #e0e7df;margin:0;padding:7px 18px}
.partner-box--toprow{margin:10px 0 24px}.partner-box--toprow .partner-box__body{min-height:100px}
.partner-box--sidebar{margin:16px 0}.partner-box--sidebar .partner-box__body{display:block;padding:18px}.partner-box--sidebar .partner-box__cta{margin-top:14px;width:100%;white-space:normal}.partner-box--sidebar .partner-box__head{padding:7px 14px}.partner-box--sidebar .partner-box__note{padding:8px 14px}
.partner-box--infeed .partner-box__body{padding:16px 18px}.partner-box--infeed .partner-box__copy strong{font-size:18px}.partner-box--infeed{margin-top:20px}
.category-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:18px 0 30px}.category-strip a{background:#fff;border:1px solid #e1e7df;min-width:0}.category-strip b{word-break:keep-all;font-size:15px;overflow-wrap:normal}
.content-layout{grid-template-columns:minmax(0,1fr) minmax(270px,310px);gap:28px}.listing-grid{grid-template-columns:repeat(2,minmax(250px,1fr));gap:16px}.item-card{background:#fff;min-width:0}.item-card h3{font-size:18px;line-height:1.5}
.community-bridge{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap;background:#eaf2ec;padding:23px 25px;border:1px solid #d8e4db;border-radius:14px;margin:22px 0}.community-bridge>div{flex:1 1 290px;min-width:0}.community-bridge h3{font-size:21px;margin:0;color:#193d32;line-height:1.42}.community-bridge p{margin:6px 0 0;font-size:14px;color:#526659}.community-bridge a{white-space:nowrap;font-weight:750}
.growth-inline{background:#fff;border-color:#e1e6df;margin:16px 0}.growth-inline strong{color:#1c4538}
:where(.hero,.editorial-grid,.content-layout,.editorial-lead,.editorial-brief,.item-card,.partner-box,.community-bridge)>*{min-width:0}
@media(max-width:1000px){.editorial-grid{grid-template-columns:minmax(0,1fr) minmax(250px,.78fr)}.editorial-lead{padding:26px}.content-layout{grid-template-columns:minmax(0,1fr) 255px}.listing-grid{grid-template-columns:1fr}}
@media(max-width:800px){.editorial-grid{grid-template-columns:1fr}.editorial-rail{border-left:0;border-top:1px solid #dfe6de;grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-brief{border-right:1px solid #e4e9e4}.content-layout{display:block}.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:620px){body{font-size:16px}.wrap{width:calc(100% - 26px)}.main{padding-top:14px}.edition-rule{margin:17px 0 12px;gap:3px}.edition-rule span:last-child{font-size:11px}.editorial-heading h2{font-size:24px}.editorial-grid{border-radius:12px}.editorial-lead{padding:23px 19px}.editorial-lead h3{font-size:clamp(24px,6vw,30px)}.editorial-lead>p{font-size:15px}.editorial-rail{display:block}.editorial-brief{padding:13px 19px;border-right:0}.editorial-brief h3{font-size:17px}.editorial-empty{display:block;padding:23px 19px}.editorial-empty>a{display:inline-flex;margin-top:12px}.listing-grid{grid-template-columns:1fr}.category-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-box__body{display:block;padding:17px}.partner-box__cta{margin-top:12px;white-space:normal;width:100%}.partner-box__copy strong{font-size:19px}.partner-box__head{padding:8px 13px}.partner-box__note{padding:7px 13px}.partner-box--toprow .partner-box__body{min-height:0}.community-bridge{padding:19px}.community-bridge a{white-space:normal}.growth-inline{padding:17px}}


/* V3.14.0 - Editorial design tokens, calm ad inventory, unclipped Chinese. No intrusive/sticky ads. */
:root{--pine:#153b34;--pine2:#215b4a;--gold:#b38244;--cream:#faf9f6;--paper:#fff;--ink:#1b2d26;--muted:#566960;--line:#dce5dc;--soft:#f2f6f1;--shadow:0 6px 22px rgba(23,55,40,.045)}
body{font-size:16px;line-height:1.75;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.wrap{width:min(1360px,calc(100% - 48px))}
.main{padding-top:12px}
:is(.hero,.editorial-grid,.editorial-lead,.editorial-brief,.content-layout,.item-card,.article-row,.section-title,.partner-box,.partner-box__body,.partner-box__copy,.media-channel-strip,.growth-inline,.partner-slot-guide)>*{min-width:0}
:is(h1,h2,h3,p,.item-card,.article-row,.admin-record,.side-box,.news-topic){word-break:normal;overflow-wrap:break-word;line-break:strict}
:is(h1,h2,h3){text-wrap:pretty}
:is(.item-card h3,.article-row h3,.editorial-lead h3,.editorial-brief h3){hyphens:none;word-break:normal;overflow-wrap:break-word}
.site-header{border-bottom:1px solid #d8e3d9}
.brand{font-size:23px}.brand small{font-size:10px}.nav-inner{gap:clamp(14px,2vw,29px);font-size:14px}
.edition-rule{font-size:12px;margin:16px 0 0;padding:10px 1px;border-top:2px solid var(--pine);border-bottom:0}
.edition-rule span:last-child{font-size:12px;max-width:100%;text-align:right}
.editorial-front{margin-bottom:25px}
.editorial-heading{margin-bottom:14px;align-items:flex-end}
.editorial-heading h2{font-size:clamp(25px,2.4vw,33px);letter-spacing:-.035em}
.editorial-grid{border:1px solid var(--line);border-top:3px solid #244e3e;border-radius:5px;grid-template-columns:minmax(0,1.44fr) minmax(315px,.95fr);background:#fff}
.editorial-lead{background:#fff;padding:clamp(23px,2.8vw,38px);gap:11px;justify-content:flex-start}
.editorial-lead h3{font-family:ui-serif,Georgia,"Songti SC","Noto Serif CJK SC",serif;font-size:clamp(27px,2.65vw,39px);font-weight:760;line-height:1.35;letter-spacing:-.022em;max-width:24ch}
.editorial-lead>p{font-size:15px;max-width:65ch;line-height:1.82;-webkit-line-clamp:3}
.editorial-byline{border-top:1px solid #e7ece7;padding-top:12px;margin-top:auto;font-size:12px}
.editorial-rail{border-left:1px solid #e2e8e1;grid-template-rows:repeat(4,minmax(0,auto))}
.editorial-brief{padding:16px 20px;border-bottom:1px solid #e7ebe5}
.editorial-brief h3{font-size:clamp(16px,1.4vw,19px);line-height:1.52;margin-top:5px;margin-bottom:6px}
.editorial-brief span{font-size:12px;line-height:1.6}
.editorial-empty{border-radius:6px}.hero-side .feature-tag{background:#e6dcc8;color:#355a47}
.category-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 31px}
.category-strip a{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;text-align:left;align-items:center;column-gap:12px;padding:14px 18px;min-height:82px;border-radius:8px}
.category-strip span{grid-row:span 2;font-size:25px}
.category-strip b{font-size:15px;line-height:1.45;white-space:normal}
.category-strip small{font-size:12px;line-height:1.35}
.section-title{align-items:flex-end;flex-wrap:wrap;gap:8px 20px}.section-title h2{font-size:clamp(21px,1.9vw,26px)}
.content-layout{grid-template-columns:minmax(0,1fr) minmax(275px,320px);gap:28px}
.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.item-card{min-height:170px;border-radius:7px;border-color:#e0e7df;padding:17px;box-shadow:none}
.item-card h3{font-size:18px;line-height:1.52;letter-spacing:-.01em;max-width:100%}
.item-card p{font-size:14px;line-height:1.7}
.item-meta{font-size:12px;gap:7px}.item-meta b{font-size:18px;color:#805023}
.article-row{border-radius:7px}.article-row p{font-size:14px;line-height:1.7}
.growth-inline,.community-bridge{border-radius:8px}
/* Each ad is a restrained media placement, never a news card. The cap is one creative per slot. */
.partner-box{border:1px solid #e0dfd6;border-radius:5px;background:#f7f5ef;margin:19px 0 24px;color:#2c3b33}
.partner-box__head{background:#f3f0e8;color:#615b4c;padding:9px 16px;font-size:11px;border-bottom:1px solid #e7e4dc;gap:12px;flex-wrap:wrap}
.partner-box__label{font-weight:850;letter-spacing:.085em;color:#805d35}
.partner-box__kind{font-weight:600;letter-spacing:0;color:#707066}
.partner-box__body{padding:17px 21px;gap:20px;flex-wrap:wrap}
.partner-box__copy{flex:1 1 260px;min-width:0}
.partner-box__copy strong{font-size:clamp(17px,1.5vw,22px);font-weight:750;line-height:1.5;max-width:36ch;color:#243b31}
.partner-box__copy p{font-size:14px;line-height:1.65;color:#536359;max-width:70ch}
.partner-box__cta{font-size:13px;background:#1c5645;border-radius:5px;min-height:42px;min-width:130px;max-width:100%;padding:9px 15px}
.partner-box__note{padding:8px 16px;border-top:1px solid #e7e4dc;color:#757268;font-size:11px;line-height:1.65}
.partner-box--toprow{margin:0 0 25px}.partner-box--toprow .partner-box__body{min-height:108px}
.partner-box--sidebar{margin:16px 0}.partner-box--sidebar .partner-box__body{padding:19px;display:grid;gap:10px}
.partner-box--sidebar .partner-box__copy strong{font-size:19px}.partner-box--sidebar .partner-box__cta{width:100%;margin:5px 0 0}
.partner-box--infeed{margin:23px 0}.partner-box--infeed .partner-box__body{padding:15px 19px}
/* Back office shows the actual inventory model, not invented earnings */
.partner-slot-guide{border:1px solid #dce5dd;border-top:3px solid var(--pine);border-radius:9px;background:white;padding:21px;margin:15px 0 23px}
.partner-slot-guide__header{display:flex;justify-content:space-between;gap:10px 23px;flex-wrap:wrap;align-items:flex-end}
.partner-slot-guide h2{font-size:21px;line-height:1.4;margin:0}.partner-slot-guide__header p{margin:0;color:var(--muted);max-width:44ch;font-size:13px;line-height:1.6}
.partner-slot-guide__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:17px 0}
.partner-slot-guide__grid>div{display:flex;flex-direction:column;gap:6px;min-width:0;border:1px solid var(--line);border-radius:7px;background:#fafaf7;padding:15px}
.partner-slot-guide__grid strong{font-size:15px;color:#274a3b}.partner-slot-guide__grid span{font-size:14px;line-height:1.6}
.partner-slot-guide__grid small{font-size:12px;color:var(--muted);line-height:1.65}
.partner-slot-guide__policy{font-size:12px;color:var(--muted);line-height:1.65;margin:0}
@media(max-width:1050px){.editorial-grid{grid-template-columns:minmax(0,1.25fr) minmax(270px,.95fr)}.content-layout{grid-template-columns:minmax(0,1fr) 275px}.category-strip a{padding:13px}}
@media(max-width:850px){.editorial-grid{grid-template-columns:1fr}.editorial-rail{grid-template-columns:repeat(2,minmax(0,1fr));border-left:0;border-top:1px solid var(--line)}.editorial-brief{border-right:1px solid var(--line)}.content-layout{display:block}.partner-box--sidebar{display:none!important}.partner-slot-guide__grid{grid-template-columns:1fr}.category-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.wrap{width:calc(100% - 28px)}.main{padding-top:11px}.edition-rule{padding-top:9px;gap:4px}.edition-rule span:last-child{font-size:11px;text-align:left}.editorial-heading{align-items:center}.editorial-heading h2{font-size:24px}.editorial-heading>a{font-size:12px}.editorial-grid{border-radius:5px}.editorial-lead{padding:24px 19px}.editorial-lead h3{font-size:clamp(24px,7vw,31px);line-height:1.42}.editorial-lead>p{font-size:15px;line-height:1.7}.editorial-rail{display:block}.editorial-brief{padding:15px 19px;border-right:0}.editorial-brief h3{font-size:17px}.category-strip{gap:8px}.category-strip a{grid-template-columns:30px minmax(0,1fr);gap:2px 9px;min-height:78px;padding:12px 10px}.category-strip span{font-size:23px}.category-strip b{font-size:14px}.category-strip small{font-size:11px}.listing-grid{grid-template-columns:1fr}.item-card{min-height:0}.content-layout{display:block}.section-title h2{font-size:22px}.partner-box__body{display:grid;gap:10px;padding:15px}.partner-box__copy{flex:auto}.partner-box__cta{width:100%;white-space:normal;margin:0}.partner-box__head{padding:8px 12px}.partner-box__note{padding:7px 12px}.partner-box--toprow .partner-box__body{min-height:0}.partner-box__copy strong{font-size:18px}.partner-slot-guide{padding:16px}.partner-slot-guide__header h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){.category-strip a,.item-card{transition:none!important;transform:none!important}}


/* V3.15.0 newspaper-first design system: typographic rhythm and calm paid inventory. */
:root{--pine:#16463b;--pine2:#286352;--gold:#ac783d;--cream:#fbfaf7;--ink:#172c25;--muted:#56685f;--line:#dfe5df;--soft:#f4f6f3}
body{font-family:system-ui,-apple-system,"Noto Sans CJK SC","PingFang SC","Microsoft Yahei",sans-serif;font-size:16px;line-height:1.75}
.wrap{width:min(1320px,calc(100% - 44px))}
:where(.hero,.hero-copy,.editorial-grid,.editorial-lead,.editorial-brief,.portal-service-index,.portal-service-heading,.category-strip,.content-layout,.item-card,.partner-box,.partner-editor-preview)>*{min-width:0}
:where(.editorial-front h2,.editorial-lead h3,.section-title h2,.portal-service-heading h2){text-wrap:balance;word-break:normal;overflow-wrap:break-word}
.edition-rule{padding-block:9px;margin-top:8px;color:#566a5e}
.editorial-front{margin-bottom:19px}.editorial-heading{margin-bottom:9px}
.editorial-heading h2{font-family:ui-serif,Georgia,"Songti SC",serif;line-height:1.28;font-size:clamp(26px,2.6vw,35px)}
.editorial-grid{grid-template-columns:minmax(0,1.5fr) minmax(290px,.93fr);border-top:3px solid var(--pine);box-shadow:0 3px 18px rgba(18,48,34,.035)}
.editorial-lead{padding:clamp(24px,2.6vw,34px);justify-content:flex-start;gap:12px;background:#fff}
.editorial-lead h3{font-size:clamp(28px,2.8vw,41px);line-height:1.35;max-width:30ch;letter-spacing:-.02em}
.editorial-lead>p{font-size:15px;line-height:1.72;max-width:58ch}
.editorial-byline{margin-top:16px;border-top:1px solid var(--line);padding-top:11px}
.editorial-brief{padding:12px 19px}.editorial-brief h3{font-size:clamp(16px,1.3vw,18px);line-height:1.43;margin:3px 0 5px}
.editorial-brief span{font-size:12px}
.partner-box{border:1px solid #e4e2d9;background:#f8f7f3;border-radius:6px;margin-block:13px 20px}
.partner-box__head{background:#eeece5;border-color:#e4e0d8;color:#5f5c4d}
.partner-box__body{gap:17px;padding:16px 19px}.partner-box__copy strong{font-size:clamp(17px,1.45vw,21px);color:#214036}
.partner-box__copy p{font-size:14px;line-height:1.65}
.partner-box__cta{background:#1c5446;color:#fff;min-height:43px}
.partner-box__note{color:#616c61;line-height:1.65;font-size:11px}
.partner-box__note a{font-weight:700;text-decoration:underline;text-underline-offset:3px;color:#345848}
.partner-box--toprow .partner-box__body{min-height:0}.partner-box--sidebar{margin-top:17px}.hero .eyebrow{color:#836233;letter-spacing:.07em}
.hero-side .feature-tag{font-size:10px;background:#e8efe8;color:#335545;padding:5px 8px}
.growth-inline{border-radius:6px;padding:15px 21px;margin:15px 0;background:#fff}.growth-inline strong{font-size:17px}
.portal-service-index{margin:23px 0 24px}
.portal-service-heading{display:flex;align-items:end;justify-content:space-between;gap:12px 22px;padding:0 0 11px;border-bottom:1px solid var(--line);margin-bottom:12px}
.portal-service-heading h2{font:800 clamp(20px,2.1vw,26px)/1.4 system-ui,-apple-system,"PingFang SC",sans-serif;margin:2px 0 0;color:#1c3a2e}
.portal-service-heading p{font-size:13px;color:var(--muted);margin:0;line-height:1.7;max-width:36ch}
.category-strip{gap:10px;margin:0}.category-strip a{border-radius:7px;min-height:86px;padding:13px 15px;box-shadow:none}.category-strip b{font-size:15px;line-height:1.5;word-break:keep-all}.category-strip small{font-size:12px}
.section-title{align-items:center}.section-title h2{font-size:clamp(21px,2vw,27px);line-height:1.35}
.item-card{border-radius:7px;padding:19px}.item-card h3{font-size:18px;line-height:1.5;overflow-wrap:break-word}
.item-card p{font-size:14px;line-height:1.75}.item-meta{font-size:12px}
.side-box,.community-bridge{border-radius:7px}
/* Admin preview resembles the real visible ad but never becomes a paid placement. */
.partner-editor-preview{margin:17px 0 5px;background:#f8f7f3;border:1px dashed #b4b9aa;border-radius:8px;overflow:hidden}
.partner-editor-preview__meta{background:#eeece5;display:flex;justify-content:space-between;gap:10px;padding:9px 15px;font-size:11px;color:#555a50;font-weight:750}
.partner-editor-preview__body{display:flex;gap:17px;align-items:center;padding:16px;flex-wrap:wrap}
.partner-editor-preview__body strong{font-size:clamp(17px,2vw,21px);line-height:1.45;color:#1a4335;flex:1 1 250px;overflow-wrap:break-word}
.partner-editor-preview__body p{font-size:14px;color:#56695c;flex:1 1 220px;line-height:1.7;overflow-wrap:break-word;margin:0}
.partner-editor-preview__button{background:#1c5446;color:#fff;border-radius:6px;padding:10px 13px;font-size:12px;font-weight:800}
.partner-editor-preview>[data-ad-preview-url]{border-top:1px solid #e5e3da;margin:0;font-size:12px;padding:8px 16px;color:#67766b;overflow-wrap:anywhere}
.partner-editor-preview__note{font-size:12px;color:#576a5d;line-height:1.7;margin:8px 0 15px}
.partner-editor-preview[data-placement="sidebar"] .partner-editor-preview__body{display:grid;max-width:340px}
.partner-editor-preview[data-placement="infeed"] .partner-editor-preview__body{padding:12px 16px}
@media(max-width:970px){.editorial-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.9fr)}}
@media(max-width:850px){.editorial-grid{grid-template-columns:1fr}.editorial-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-box--sidebar{display:none!important}.portal-service-heading{align-items:start}}
@media(max-width:620px){.wrap{width:calc(100% - 28px)}.editorial-lead{padding:20px 19px}.editorial-lead h3{font-size:clamp(24px,7vw,30px)}.editorial-byline{margin-top:13px}.editorial-brief{padding:13px 18px}.portal-service-heading{display:block}.portal-service-heading p{margin-top:5px;font-size:12px;max-width:none}.category-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.category-strip a{padding:12px 9px;min-height:76px}.category-strip b{font-size:14px}.partner-box__body{padding:14px}.partner-box__copy strong{font-size:17px}.partner-box__note{padding:8px 12px}.partner-editor-preview__body{display:grid}.partner-editor-preview__button{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.item-card,.category-strip a{transition:none!important;transform:none!important}}

/* Final V3.15 editorial proportions: 2×2 teasers minimize vacant whitespace. */
@media(min-width:1051px){.editorial-grid{grid-template-columns:minmax(0,1.2fr) minmax(440px,1fr)}.editorial-rail{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.editorial-brief{border-right:1px solid var(--line)}.editorial-brief:nth-child(even){border-right:0}.editorial-brief:nth-child(n+3){border-bottom:0}.editorial-brief h3{font-size:17px}}

/* V3.16: compact, news-first American Chinese community front page. Scoped to home modules. */
.edition-rule{padding:7px 0 9px!important;margin-bottom:8px!important}
.editorial-front{margin-bottom:12px!important}.editorial-heading{margin-bottom:8px!important}
.editorial-grid{box-shadow:none!important}.editorial-lead{padding:20px 24px!important;gap:8px!important;justify-content:space-between!important}
.editorial-lead h3{font-size:clamp(25px,2.45vw,34px)!important;line-height:1.3!important;text-wrap:pretty}
.editorial-lead>p{line-height:1.6!important;-webkit-line-clamp:2!important}
.editorial-byline{margin-top:9px!important;padding-top:8px!important}
.editorial-brief{padding:9px 15px!important}.editorial-brief h3{font-size:clamp(15px,1.3vw,17px)!important;line-height:1.35!important;margin:3px 0!important}
.editorial-brief small{font-size:10px!important}.editorial-brief span{font-size:11px!important}
.city-news-partner-layout{display:block;margin:11px 0 15px;min-width:0}
.city-news-partner-layout:has(.city-news-ads){display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,245px);gap:13px;align-items:start}
.city-news-main,.city-editions{min-width:0}.city-editions-header{margin:0 0 9px!important;padding:0 0 7px;border-bottom:2px solid #29523f}
.city-editions-header h2{font-size:clamp(20px,2vw,25px)!important;color:#193d30}
.city-editions-header .edition-kicker{font-size:10px;color:#8b673d}
.city-editions-header a{font-size:12px;white-space:nowrap}
.city-editions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.city-edition-card{min-width:0;padding:11px 12px 8px;background:#fff;border:1px solid #dbe2d9;border-top:2px solid #335f4a;border-radius:4px}
.city-edition-top{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:7px;min-width:0}
.city-edition-top h3{font-size:15px;font-weight:800;line-height:1.35;color:#214333;margin:0;min-width:0;overflow-wrap:break-word}
.city-edition-top small{font-size:11px;color:#777d74;font-weight:600}
.city-edition-top>a{font-size:11px;white-space:nowrap;color:#4b705d;font-weight:700;text-decoration:none}
.city-edition-stories{display:flex;flex-direction:column}.city-edition-story{display:block;padding:7px 0 8px;color:#263a2e;text-decoration:none;border-top:1px solid #eef0e9;min-width:0}
.city-edition-story strong{font-size:14px;line-height:1.46;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;word-break:normal;overflow-wrap:break-word;font-weight:700}
.city-edition-story span{display:block;font-size:11px;color:#758076;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.city-edition-story:hover strong,.city-edition-top>a:hover{color:#966c37}
.city-editions-empty{border:1px solid #dbe4d8;border-radius:4px;background:#fafbf8;padding:13px 16px;margin:0;font-size:13px;color:#566b59}
.city-news-ads .partner-box--sidebar{margin:0}.city-news-ads .partner-box__body{padding:12px!important}.city-news-ads .partner-box__head{padding:8px 10px!important}
.market-compact{margin:15px 0 12px}.market-compact-bar{display:grid;grid-template-columns:minmax(180px,1fr) minmax(250px,1.4fr) auto;align-items:center;gap:10px;padding:10px 12px;border-top:2px solid #29523f;border-bottom:1px solid #dbe3da;background:#f3f6f0}
.market-compact-bar>div{min-width:0}.market-compact-bar h2{margin:2px 0 0;font-size:clamp(17px,1.65vw,21px);line-height:1.35;color:#183d30}
.market-compact-bar .edition-kicker{font-size:9px}
.market-inline-search{display:flex;min-width:0;gap:0;margin:0;align-items:stretch}
.market-inline-search input{min-width:0;width:100%;height:38px;min-height:38px;border:1px solid #cbd8cf;border-radius:4px 0 0 4px;padding:5px 10px;background:#fff;font-size:13px}
.market-inline-search button{min-height:38px;padding:4px 15px;background:#20523e;color:#fff;border-radius:0 4px 4px 0;font-size:13px;border:0;white-space:nowrap}
.market-post{font-size:13px;background:#20523e;color:#fff!important;border-radius:4px;text-decoration:none!important;padding:9px 12px;white-space:nowrap;font-weight:750}
.market-categories{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0;background:#fff;border:1px solid #dbe4da;border-top:0}
.market-categories a{min-width:0;min-height:55px;display:flex;gap:6px;align-items:center;justify-content:center;padding:9px 5px;text-decoration:none!important;border-right:1px solid #e7ebe5;color:#234235;white-space:nowrap}
.market-categories a:last-child{border-right:0}.market-categories a:hover{background:#f0f7f0}
.market-categories span{font-size:18px;flex:none}.market-categories b{font-size:12px;line-height:1.4;font-weight:750}.homepage-listings>.section-title{margin-bottom:8px!important}
.homepage-listings>.section-title h2{font-size:clamp(19px,1.9vw,23px)!important}
.homepage-listings .listing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.homepage-listings .item-card{min-width:0;min-height:0;padding:12px 13px;gap:4px;border-radius:5px;box-shadow:none}
.homepage-listings .item-card h3{font-size:15px;line-height:1.43;margin:3px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.homepage-listings .item-card p{font-size:12px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:3px 0}
.homepage-listings .item-meta{font-size:11px;gap:6px;flex-wrap:wrap;margin-top:4px}
.homepage-listings .item-cover{max-height:110px;object-fit:cover}
.compact-safety-footer{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap;padding:10px 12px;margin:12px 0 18px;background:#f7f7f1;border-top:1px solid #e3e7dd;border-bottom:1px solid #e3e7dd;color:#506355;font-size:12px;line-height:1.5}
.compact-safety-footer span{flex:1 1 380px}.compact-safety-footer a{white-space:nowrap;color:#2b604a;font-size:12px;font-weight:700}
.homepage-listings+.partner-box--infeed,.homepage-listings~.partner-box--infeed{margin:10px 0!important}
@media(max-width:1100px){.market-categories{grid-template-columns:repeat(4,minmax(0,1fr))}.market-categories a:nth-child(4){border-right:0}.market-categories a:nth-child(-n+4){border-bottom:1px solid #e7ebe5}.city-editions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.city-news-partner-layout:has(.city-news-ads){display:block}.city-news-ads{display:none}.market-compact-bar{grid-template-columns:1fr auto}.market-inline-search{grid-column:1/-1;grid-row:2}.homepage-listings .listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.editorial-lead{padding:14px 15px!important}.editorial-lead h3{font-size:clamp(23px,6vw,28px)!important}.editorial-lead>p{font-size:13px!important}.editorial-brief{padding:10px 13px!important}.city-news-partner-layout{margin:10px 0}.city-editions-grid{grid-template-columns:1fr;gap:6px}.city-edition-card{padding:8px 12px}.city-edition-story strong{-webkit-line-clamp:2}.city-edition-story span{margin-top:3px}.market-compact-bar{padding:9px;gap:7px}.market-compact-bar h2{font-size:18px}.market-inline-search{min-width:0}.market-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.market-categories a{min-height:42px;justify-content:flex-start;padding:7px 12px;gap:10px}.market-categories a:nth-child(even){border-right:0}.market-categories a:nth-child(odd){border-right:1px solid #e7ebe5}.market-categories a:nth-child(-n+6){border-bottom:1px solid #e7ebe5}.market-categories b{font-size:13px}.homepage-listings .listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.homepage-listings .item-card{padding:10px}.homepage-listings .item-card h3{font-size:14px}.homepage-listings .item-card p{font-size:12px;-webkit-line-clamp:1}.homepage-listings .item-meta{font-size:10px}.compact-safety-footer{padding:9px 10px}}
@media(max-width:370px){.homepage-listings .listing-grid{grid-template-columns:1fr}.market-categories b{font-size:12px}.market-post{padding:8px}.city-edition-top h3{font-size:14px}}

/* V3.17 editorial-first density: usable city jump chips and natural CJK wrapping. */
.city-editions-jump{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 9px;padding:0;min-width:0}
.city-editions-jump a{display:inline-flex;gap:5px;align-items:center;min-height:29px;max-width:100%;padding:4px 10px;border:1px solid #d8e2d6;border-radius:3px;background:#fff;color:#254b37;text-decoration:none;font-weight:700;font-size:12px;line-height:1.45;word-break:keep-all}
.city-editions-jump a span{font-size:11px;color:#8b6b40}.city-editions-jump a:hover{background:#eaf3e9;border-color:#8bae9b}
.city-edition-top h3,.city-edition-story strong,.editorial-brief h3,.editorial-lead h3,.homepage-listings .item-card h3{word-break:normal!important;overflow-wrap:break-word!important;text-wrap:pretty}
.city-edition-story strong{min-height:0}.city-edition-card{display:flex;flex-direction:column;gap:0}.city-edition-stories{flex:1}
@media(min-width:1101px){.city-news-partner-layout:not(:has(.city-news-ads)) .city-editions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.city-editions-jump{gap:5px;margin-bottom:8px}.city-editions-jump a{font-size:12px;min-height:34px;padding:6px 9px}.city-editions-header{gap:8px}.city-editions-header a{white-space:normal;text-align:right}.city-edition-top h3{font-size:15px}}

/* V3.18.0 uschinaren.com identity & tighter institutional editorial chrome */
.brand-official{display:inline-flex!important;flex:0 0 auto;white-space:normal;max-width:215px;min-width:0;padding:0;background:transparent;box-shadow:none;letter-spacing:normal}
.brand-logo{display:block;object-fit:contain;object-position:left center;width:204px;height:auto;max-height:60px;border:0;flex:none;background:#fff}
.brand-official .brand-logo{width:204px;max-height:55px}
.header-main{min-height:72px;height:auto;padding-block:8px;column-gap:12px}
.header-actions{white-space:nowrap;gap:10px}.header-actions a{white-space:nowrap}
.city-picker{margin-left:0;flex:1 1 145px;min-width:105px;max-width:220px}
.footer-brand{display:inline-flex;background:white;border-radius:5px;padding:4px 6px;margin-bottom:9px}.footer-logo{width:172px;max-height:46px}
.console-home{display:inline-flex;align-items:center;gap:10px;min-width:0}.console-logo{width:146px;max-height:40px;flex:none;background:white;border-radius:4px;padding:2px}.console-title{min-width:0;display:grid;gap:1px}.console-title b{font-size:14px;white-space:nowrap}.console-title small{font-size:10px;letter-spacing:.03em;white-space:nowrap}
.site-header,.nav-line{background:#fff}.nav-inner{gap:clamp(12px,2vw,24px)}
.item-card h3,.article-row h3,.editorial-lead h3,.city-edition-story strong{word-break:normal;overflow-wrap:break-word;line-break:strict}
@media(max-width:900px){.brand-official .brand-logo{width:176px}.console-logo{width:122px}.console-title small{display:none}}
@media(max-width:620px){.header-main{flex-wrap:wrap;justify-content:space-between;row-gap:8px}.brand-official{max-width:52%}.brand-official .brand-logo{width:clamp(133px,41vw,176px);max-height:48px}.header-actions{flex:0 0 auto;margin-left:auto}.city-picker{flex:1 1 100%;max-width:none;order:4}.city-picker select{font-size:14px;min-height:38px;padding:7px 12px}.console-title small{display:none}.console-logo{width:120px}.footer-logo{width:175px}}
@media(max-width:375px){.header-actions{gap:6px;font-size:12px}.link-pill{padding-inline:8px}.brand-official .brand-logo{width:132px}}


/* V5.0 unified design system */
:root{--brand-950:#0b2a23;--brand-900:#10382f;--brand-800:#174a3e;--brand-700:#1f5f4e;--brand-600:#2c765f;--accent-700:#9b531a;--accent-600:#b86722;--accent-400:#d79a57;--paper:#f7f7f3;--surface:#fff;--ink:#17251f;--muted:#66736d;--line:#dfe6e1;--soft:#edf3ee;--danger:#982f2a;--ok:#28734d;--radius:10px;--shadow:0 10px 30px rgba(15,45,34,.07);--font-sans:Inter,"Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif}
html{font-size:16px}body{font-family:var(--font-sans);font-size:15px;line-height:1.68;background:var(--paper);color:var(--ink);text-rendering:optimizeLegibility}.wrap{max-width:1320px;margin-inline:auto;padding-inline:clamp(14px,2.2vw,28px)}.header-utility{background:var(--brand-950);color:#dbe8e2;font-size:12px}.header-utility .wrap{display:flex;justify-content:space-between;gap:16px;padding-top:6px;padding-bottom:6px}.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-main{min-height:86px;gap:20px}.brand-logo{width:min(320px,58vw)!important;height:auto!important}.nav-line{border-top:1px solid var(--line)}.nav-inner a{min-height:44px;display:inline-flex;align-items:center;font-weight:680;font-size:14px}.nav-publish{background:var(--brand-800)!important;color:#fff!important;padding-inline:15px!important}.btn{background:var(--brand-800);border-radius:6px}.button-outline{border-radius:6px}.panel,.form-panel,.item-card,.auth-card{border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line)}h1{font-size:clamp(28px,3vw,42px);line-height:1.2}h2{font-size:clamp(21px,2vw,30px);line-height:1.28}h3{font-size:18px;line-height:1.35}.detail-body{font-size:17px;line-height:1.95}.muted,small{color:var(--muted)}input,select,textarea{font-size:16px!important;min-height:44px}.console-topbar{background:var(--brand-950)!important}.admin-sidebar{background:#102f28!important}.admin-sidebar a{font-size:14px;min-height:44px}.admin-sidebar a.active{background:#fff;color:var(--brand-900);font-weight:800}.admin-content{max-width:1480px}.ops-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.ops-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:18px}.ops-card strong{display:block;font-size:28px;color:var(--brand-800)}.health-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.score-ring{font-size:42px;font-weight:850;color:var(--brand-800)}@media(max-width:900px){.ops-grid{grid-template-columns:repeat(2,1fr)}.header-main{min-height:72px}.detail-body{font-size:16px}.header-utility .wrap{display:block}}@media(max-width:560px){html{font-size:15px}.ops-grid{grid-template-columns:1fr 1fr}.brand-logo{width:min(250px,63vw)!important}.header-main{gap:8px}.nav-inner a{font-size:13px}.panel,.form-panel,.item-card{border-radius:7px}.main{padding-top:14px}}

/* V5.1.0 global design system refresh: consistent typography, logo, spacing and optional dark theme. */
:root{
 --page:#f6f7f3;--surface:#ffffff;--surface-2:#eef3ee;--text:#172721;--text-2:#586a62;
 --brand:#173f35;--brand-2:#245f4e;--accent:#c99549;--danger:#a6372c;--success:#28734c;
 --border:#dbe4dc;--focus:#9b6a24;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;
 --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;
 --font-ui:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
 --font-size-sm:13px;--font-size-md:15px;--font-size-lg:18px;--shadow-soft:0 14px 36px rgba(17,53,42,.07)
}
body{font-family:var(--font-ui);background:var(--page);color:var(--text);font-size:var(--font-size-md);line-height:1.68;text-rendering:optimizeLegibility}
.site-header,.form-panel,.panel,.item-card,.article-row,.side-box,.admin-record,.smart-stat,.smart-case,.ops-card{background:var(--surface);border-color:var(--border)}
.brand-logo{display:block;width:min(310px,58vw);height:auto;max-height:68px;object-fit:contain;object-position:left center}
.footer-logo{width:min(260px,70vw)}.console-logo{width:min(230px,50vw);max-height:54px}
.header-main{min-height:82px;height:auto;padding-block:10px}.header-utility{background:var(--brand);color:#e9f3ee}.header-utility .wrap{display:flex;justify-content:space-between;gap:18px;padding-block:5px;font-size:11px;letter-spacing:.02em}
.nav-line{background:var(--surface)}.nav-inner a{font-size:14px}.nav-inner .nav-publish{background:var(--brand);border-radius:var(--radius-sm)}
h1,h2,h3{letter-spacing:-.018em;text-wrap:pretty}p,li,.detail-body{max-width:78ch}.detail-body{font-size:17px;line-height:1.95}.section-heading h1{font-size:clamp(26px,3.4vw,38px)}
.btn,.button-outline,input,textarea,select{border-radius:var(--radius-sm)}.btn{background:var(--brand)}.btn:hover{background:var(--brand-2)}
.admin-content{min-width:0}.admin-content .section-title h1{font-size:clamp(24px,2.7vw,34px)}.admin-sidebar a{border-radius:8px}.admin-sidebar a.active{background:#e4eee7;color:#123f32;font-weight:760}
.smart-summary,.ops-grid{gap:14px}.smart-stat,.ops-card{box-shadow:0 6px 22px rgba(19,54,42,.035)}
@media(max-width:760px){.wrap{width:min(100% - 28px,1320px)}.header-main{gap:10px;flex-wrap:wrap}.brand-official{order:1;flex:1 1 55%}.city-picker{order:3;flex:1 1 100%;margin:0;max-width:none}.header-actions{order:2;gap:10px}.brand-logo{width:min(250px,55vw);max-height:58px}.header-utility .wrap{display:block}.header-utility .wrap span+span{display:none}.detail-body{font-size:16px;line-height:1.88}}
html[data-theme="dark"]{--page:#101713;--surface:#17211c;--surface-2:#202c26;--text:#eef4f0;--text-2:#a9bbb2;--border:#2d3d35;--brand:#d9b46e;--brand-2:#efc987;--accent:#dfb66e;--focus:#efc987;--pine:#d9b46e;--pine2:#efc987;--cream:#101713;--white:#17211c;--ink:#eef4f0;--muted:#a9bbb2;--line:#2d3d35;--soft:#202c26}
html[data-theme="dark"] body{background:var(--page);color:var(--text)}
html[data-theme="dark"] .site-header,html[data-theme="dark"] .nav-line,html[data-theme="dark"] .form-panel,html[data-theme="dark"] .panel,html[data-theme="dark"] .item-card,html[data-theme="dark"] .article-row,html[data-theme="dark"] .side-box,html[data-theme="dark"] .admin-record,html[data-theme="dark"] .smart-stat,html[data-theme="dark"] .smart-case,html[data-theme="dark"] .ops-card,html[data-theme="dark"] .auth-card{background:var(--surface);color:var(--text);border-color:var(--border)}
html[data-theme="dark"] input,html[data-theme="dark"] textarea,html[data-theme="dark"] select{background:#101713;color:var(--text);border-color:#42564b}
html[data-theme="dark"] a{color:#e1bf7c}html[data-theme="dark"] .nav-inner a{color:#dbe8e1}html[data-theme="dark"] .nav-inner .nav-publish,html[data-theme="dark"] .btn{background:#d4ad65;color:#13251e}html[data-theme="dark"] .button-outline{background:#202c26;color:#e9f0ec;border-color:#52685c}
html[data-theme="dark"] .brand-logo{content:url('/assets/brand/logo-dark.svg')}html[data-theme="dark"] .footer{background:#0b120f;color:#c7d7cf}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}


/* V5.2.0 unified command-center UI and global readability refinements */
:root{--text-xs:12px;--text-sm:13px;--text-md:15px;--text-lg:18px;--text-xl:24px;--content-max:1260px}
body{font-size:var(--text-md)}
.wrap{max-width:var(--content-max)}
:where(h1,h2,h3){text-wrap:balance}
:where(p,li,.detail-body){text-wrap:pretty}
:where(button,.btn,.button-outline,input,select,textarea){font-size:14px}
.command-hero{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:24px;align-items:center;padding:26px;margin-bottom:18px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,var(--white),var(--soft))}
.command-hero h2{margin:2px 0 8px;font-size:clamp(25px,3vw,38px)}
.command-hero p{margin:0;max-width:850px;color:var(--muted)}
.command-score{display:grid;place-items:center;min-height:120px;border-radius:18px;background:var(--pine);color:#fff;text-align:center}
.command-score strong{display:block;font-size:42px;line-height:1}.command-score span{font-size:12px;opacity:.85;margin-top:7px}
.command-alert{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;margin:10px 0;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;background:var(--white)}
.command-alert.level-high{border-left-color:#a54032}.command-alert.level-medium{border-left-color:#b8781c}.command-alert.level-low{border-left-color:#4a8067}
.command-alert b{font-size:15px}.command-alert p{margin:4px 0 0;color:var(--muted);font-size:13px}
.health-list{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--white)}
.health-list .health-row{margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0}.health-list .health-row:last-child{border-bottom:0}
@media(max-width:700px){.command-hero{grid-template-columns:1fr;padding:18px}.command-score{min-height:90px}.command-alert{align-items:flex-start;flex-direction:column}.command-alert .button-outline{width:100%;text-align:center}.header-main{min-height:68px;height:auto;padding-top:8px;padding-bottom:8px}}


/* V5.3.0 accessibility, operations controls and resilient responsive UI */
.skip-link{position:fixed;left:14px;top:10px;z-index:10000;transform:translateY(-180%);background:#fff;color:#102f28;border:2px solid #102f28;border-radius:8px;padding:10px 14px;font-weight:800;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.skip-link:focus{transform:translateY(0)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus,#9b6a24)!important;outline-offset:3px!important}
#main-content:focus{outline:none}
.admin-record{min-width:0;overflow-wrap:anywhere}.admin-record>div{min-width:0}.health-row span{overflow-wrap:anywhere;text-align:right}
.form-grid input[type="number"]{font-variant-numeric:tabular-nums}
.command-score strong,.ops-card strong,.smart-stat strong{font-variant-numeric:tabular-nums}
@media(max-width:560px){.health-row{align-items:flex-start;flex-direction:column}.health-row span{text-align:left}.ops-grid{grid-template-columns:1fr}.command-score strong{font-size:36px}.admin-record{align-items:flex-start;flex-direction:column}.admin-record>.button-outline,.admin-record>form{max-width:100%}}
@media(forced-colors:active){.btn,.button-outline,.theme-toggle,.nav-publish{border:1px solid ButtonText}.command-alert{border-left-width:5px}.smart-severity{border:1px solid CanvasText}}


/* V5.4 unified typography, page rhythm and operations readability */
:root{--font-body:-apple-system,BlinkMacSystemFont,"Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif;--text-xs:clamp(12px,.74rem,13px);--text-sm:clamp(13px,.82rem,14px);--text-md:clamp(15px,.94rem,16px);--text-lg:clamp(18px,1.15rem,20px);--page-gap:clamp(18px,2.4vw,32px)}
html{font-size:16px;text-size-adjust:100%;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-md);line-height:1.68;text-rendering:optimizeLegibility}.main{padding-top:var(--page-gap);padding-bottom:var(--page-gap)}
:is(.detail,.panel,.form-panel,.item-card,.side-box,.auth-card){min-width:0} :is(.detail,.article-row,.item-card) p{max-width:76ch}.detail-body{font-size:clamp(16px,1rem + .12vw,18px);line-height:1.92}.section-title h1,.section-heading h1{line-height:1.18;text-wrap:balance}.muted,small{line-height:1.55}
.command-readiness{display:grid;grid-template-columns:minmax(100px,160px) 1fr;gap:18px;align-items:start}.command-readiness>strong{font-size:clamp(36px,6vw,64px);line-height:1;font-variant-numeric:tabular-nums}.ops-card strong,.stat strong,.command-score strong{font-variant-numeric:tabular-nums}
@media(max-width:700px){.command-readiness{grid-template-columns:1fr}.nav-inner a{min-height:44px;display:flex;align-items:center}.header-actions a,.theme-toggle{min-height:42px}.admin-content{font-size:14px}.health-row{align-items:flex-start;gap:10px}.health-row span{text-align:right}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* V5.5 readability and admin density refinements */
:root{--content-reading:74ch;--admin-card-min:210px}
.detail-body,.article-body{max-width:var(--content-reading);font-size:clamp(16px,1.05vw,18px);line-height:1.9}
.admin-content .ops-grid{grid-template-columns:repeat(auto-fit,minmax(var(--admin-card-min),1fr))}
.command-alert p,.admin-record p{max-width:88ch}
@media (max-width:680px){.admin-content{font-size:14px}.ops-card strong{font-size:clamp(20px,7vw,30px)}.command-alert{align-items:flex-start;gap:12px}.command-alert .button-outline{min-height:44px}}
@media (prefers-contrast:more){:root{--line:#69756f}.button-outline,.btn,input,select,textarea{border-width:2px}}

/* V5.6.0 compact enterprise density system — all public/admin surfaces */
:root{
 --space-1:4px;--space-2:7px;--space-3:10px;--space-4:14px;--space-5:18px;--space-6:24px;
 --radius-ui:5px;--radius-panel:7px;--compact-row:36px;--content-max:1240px;
}
body{font-size:14.5px;line-height:1.58}.wrap{max-width:var(--content-max)}.main{padding-top:16px;padding-bottom:22px}
.header-main{min-height:62px}.brand-logo{max-height:48px}.nav-inner a{padding:8px 11px;font-size:13px}.header-actions{gap:7px}
.section-title,.section-heading{margin-bottom:11px}.section-title h1,.section-heading h1{font-size:clamp(22px,2vw,29px)}.section-title h2{font-size:clamp(19px,1.7vw,24px)}
:is(.panel,.form-panel,.item-card,.side-box,.auth-card,.detail){border-radius:var(--radius-panel)}
.panel,.form-panel,.detail{padding:16px}.item-card,.side-box{padding:14px}.item-card h3{font-size:16px;line-height:1.42;margin-block:3px 6px}.item-card p{font-size:13px;line-height:1.62}
.article-row{padding:10px 12px}.article-row h3{font-size:15px;line-height:1.38;margin:0 0 4px}.article-row p{font-size:13px;line-height:1.55;margin:0}
.detail-body,.article-body{font-size:16px;line-height:1.82;max-width:72ch}.detail-body :is(h2,h3){margin-top:1.25em;margin-bottom:.5em}
.category-strip{gap:7px}.category-strip a{min-height:68px;padding:10px 11px}.category-strip b{font-size:13.5px}.category-strip small{font-size:11px}
.editorial-lead{padding:16px 19px!important}.editorial-lead h3{font-size:clamp(23px,2.15vw,31px)!important}.editorial-lead>p{font-size:13.5px;line-height:1.52!important}.editorial-brief{padding:8px 12px!important}.editorial-brief h3{font-size:15px!important}.city-edition-card{padding:9px 10px 7px}.city-edition-story{padding:6px 0}.city-edition-story strong{font-size:13px}
:is(input,select,textarea){min-height:38px;padding:8px 10px}.btn,.button-outline{min-height:38px;padding:8px 12px;border-radius:var(--radius-ui);font-size:13px}.form-grid{gap:10px}.form-panel label,.auth-card label{font-size:12.5px}
.console-topbar{min-height:58px}.console-title b{font-size:14px}.console-title small{font-size:9px}.admin-sidebar{padding-block:9px}.admin-sidebar h3{margin:7px 12px 6px;font-size:11px}.admin-sidebar a{min-height:35px;padding:7px 12px;font-size:12.5px}.admin-content{padding:18px 20px 28px}.admin-content .section-title{margin-bottom:12px}
.stat-grid,.ops-grid,.smart-summary{gap:8px}.stat,.ops-card,.smart-stat{padding:11px 12px;border-radius:6px}.stat strong,.ops-card strong,.smart-stat strong{font-size:clamp(20px,2vw,28px)}.stat small,.ops-card span,.smart-stat span{font-size:11.5px}
.command-hero{grid-template-columns:minmax(0,1fr) 118px;gap:15px;padding:16px;border-radius:8px;margin-bottom:12px}.command-hero h2{font-size:clamp(22px,2.3vw,30px);margin:1px 0 5px}.command-hero p{font-size:12.5px;line-height:1.55}.command-score{min-height:86px;border-radius:7px}.command-score strong{font-size:34px}.command-alert{padding:10px 12px;margin:7px 0;border-radius:6px;gap:12px}.command-alert b{font-size:13px}.command-alert p{margin-top:2px;font-size:12px;line-height:1.5}.health-list{border-radius:6px}.health-row{min-height:var(--compact-row);padding:8px 11px;font-size:12.5px}.admin-record{padding:9px 11px;min-height:44px}.admin-record b{font-size:12.5px}.admin-record p,.admin-record span{font-size:11.5px;line-height:1.5}.smart-case{padding:11px 12px;border-radius:6px}.smart-case h3{font-size:14px;margin:3px 0}.smart-case p{font-size:12px;line-height:1.5}
.table-scroll th,.table-scroll td,table th,table td{padding:8px 9px;font-size:12px}.notice{padding:10px 12px;border-radius:6px;font-size:12.5px;line-height:1.55}.empty-action,.empty{padding:13px;font-size:12.5px}
.footer{margin-top:18px;padding-block:22px}
@media(max-width:700px){body{font-size:14px}.wrap{width:calc(100% - 22px)}.main{padding-top:12px}.header-main{min-height:58px}.nav-inner a{min-height:42px;padding:7px 10px}.panel,.form-panel,.detail{padding:13px}.admin-content{padding:13px 11px 76px}.admin-sidebar a{min-height:42px}.command-hero{grid-template-columns:1fr;padding:13px}.command-score{min-height:68px}.command-alert{padding:10px}.btn,.button-outline{min-height:42px}.category-strip a{min-height:66px}.detail-body,.article-body{font-size:15.5px;line-height:1.78}}


/* V5.7 compact-density refinement: tighter desktop rhythm, accessible touch targets remain on small screens. */
:root{--v57-space-1:4px;--v57-space-2:8px;--v57-space-3:12px;--v57-space-4:16px;--v57-radius:5px}
body:not(.staff-console){font-size:14px;line-height:1.58}
body:not(.staff-console) :is(.panel,.detail,.form-panel,.side-box,.community-bridge){border-radius:var(--v57-radius);box-shadow:none}
body:not(.staff-console) :is(.panel,.detail,.form-panel){padding:16px}
body:not(.staff-console) .section-title{margin:8px 0 10px}
body:not(.staff-console) .section-title h1{font-size:clamp(22px,2.2vw,28px)}
body:not(.staff-console) .section-title h2{font-size:clamp(19px,1.8vw,24px)}
body:not(.staff-console) :is(input,select,textarea){min-height:38px;padding:8px 10px}
body:not(.staff-console) :is(.btn,.button-outline){min-height:38px;padding:8px 12px}
.staff-console .admin-content{padding-top:15px!important}
.staff-console .admin-content>.section-title{margin-bottom:10px!important}
.staff-console .admin-content :is(.panel,.detail,.form-panel){padding:14px!important}
.staff-console .ops-grid{gap:8px!important;margin:10px 0!important}
.staff-console .ops-card{padding:10px 11px!important;min-height:68px!important}
.staff-console .ops-card strong{font-size:20px!important;line-height:1.1}
.staff-console .ops-card span{font-size:11px!important;line-height:1.35}
.staff-console .admin-record{padding:9px 11px!important;gap:9px!important}
.staff-console .health-row{padding:8px 10px!important}
.staff-console .command-alert{padding:10px 11px!important;margin:7px 0!important}
.staff-console .command-alert p{margin:3px 0 0!important;line-height:1.5!important}
.staff-console .command-hero{padding:14px 16px!important;margin-bottom:10px!important}
.staff-console .command-hero h2{font-size:22px!important;margin:2px 0 4px!important}
.staff-console .admin-sidebar a{min-height:35px!important;padding-top:7px!important;padding-bottom:7px!important;font-size:12px!important}
@media(max-width:700px){body:not(.staff-console) :is(.btn,.button-outline,input,select){min-height:44px}.staff-console .admin-sidebar a{min-height:44px!important}.staff-console .ops-card{min-height:72px!important}}


/* V5.8 layout polish: dense desktop, readable mobile, consistent data-heavy admin surfaces. */
:root{--v58-panel-gap:10px;--v58-control-h:36px;--v58-copy:13.5px}
body:not(.staff-console) .main{padding-top:14px}
body:not(.staff-console) .grid,body:not(.staff-console) .content-grid{gap:12px}
body:not(.staff-console) .article-row{gap:10px}
body:not(.staff-console) .item-meta{font-size:11.5px;line-height:1.4}
body:not(.staff-console) .detail .breadcrumb{margin-bottom:8px;font-size:11.5px}
.staff-console .admin-content{max-width:1500px}
.staff-console .ops-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}
.staff-console .health-list{margin:8px 0 14px!important}
.staff-console .table-scroll{border-radius:5px;box-shadow:none}
.staff-console table{line-height:1.4}
.staff-console :is(input,select,textarea){min-height:var(--v58-control-h)!important}
.staff-console .section-title h1{font-size:21px!important}
.staff-console h2{font-size:16px;line-height:1.3;margin:16px 0 8px}
.staff-console .muted{font-size:11.5px}
@media(max-width:700px){:root{--v58-control-h:44px}.staff-console .ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.staff-console .admin-content{max-width:none}.staff-console h2{font-size:17px}.staff-console .table-scroll{overflow:auto;-webkit-overflow-scrolling:touch}}
@media(max-width:430px){.staff-console .ops-grid{grid-template-columns:1fr!important}}

/* V6.0 commercial-ready compact layout: ads stay secondary to publisher content. */
:root{--content-max:1240px;--reading-max:780px;--compact-gap:12px;--ad-paper:#f7f5ef;--ad-line:#ded9cb}
.wrap{max-width:var(--content-max)}
.main{padding-top:10px}.section-heading{margin:8px 0 12px}.section-heading h1{font-size:clamp(23px,2.1vw,30px)}
.section-title{margin:10px 0 8px}.section-title h2{font-size:clamp(19px,1.7vw,24px)}
.detail{padding:20px 22px}.detail>h1{font-size:clamp(26px,2.4vw,36px);line-height:1.32}.detail-body{max-width:var(--reading-max);font-size:16px;line-height:1.82}
.listing-grid{gap:10px}.item-card{padding:14px}.article-row{padding:11px 13px}.form-panel,.panel{padding:17px}.table-scroll td,.table-scroll th{padding:9px 10px}
.partner-box{background:var(--ad-paper);border-color:var(--ad-line);box-shadow:none;contain:layout paint}.partner-box__head{min-height:30px}.partner-box__label{font-size:10px}.partner-box__kind{font-size:10px}
.partner-box--detail_sponsor{max-width:var(--reading-max);margin:18px 0}.partner-box--footer_brand{margin:18px 0 4px}.partner-box--footer_brand .partner-box__body{min-height:0}
.partner-slot-guide__grid--five{grid-template-columns:repeat(5,minmax(0,1fr))}.partner-slot-guide__grid--five>div{padding:12px}.partner-slot-guide__grid--five strong{font-size:13px}.partner-slot-guide__grid--five span{font-size:12px}
.commercial-settings{margin:16px 0;border:1px solid var(--line);border-radius:7px;padding:13px;background:#fafbf8}.commercial-settings legend{padding:0 7px;font-weight:800;color:var(--pine)}
.partner-admin-record form{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.partner-admin-record input[type="datetime-local"]{max-width:190px}
@media(max-width:1100px){.partner-slot-guide__grid--five{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.partner-box--desktop_sidebar{display:none!important}.partner-slot-guide__grid--five{grid-template-columns:1fr}.detail{padding:17px}.detail-body{font-size:16px}.partner-box--footer_brand{display:none}}
@media(max-width:620px){.main{padding-top:8px}.section-heading h1{font-size:24px}.section-title h2{font-size:20px}.item-card{padding:12px}.article-row{padding:10px 11px}.form-panel,.panel{padding:14px}.partner-box{margin-block:11px 15px}.partner-box__body{padding:12px!important}.partner-box__copy p{font-size:13px}.partner-box__note{font-size:10px}.partner-admin-record input[type="datetime-local"]{max-width:none;width:100%}}


/* V6.1 commercial readability guardrails and compact ad system */
.partner-box{contain:layout paint;max-width:100%;margin-block:12px;border-radius:7px;box-shadow:none}
.partner-box__head{font-size:10.5px;letter-spacing:.025em}.partner-box__body{gap:12px}.partner-box__copy strong{font-size:14px;line-height:1.4}.partner-box__copy p{font-size:12.5px;line-height:1.58;margin:.25rem 0 0}.partner-box__cta{min-height:38px;padding:8px 12px;font-size:12px}.partner-box__note{font-size:10.5px;line-height:1.55;margin-top:7px}
.partner-box--toprow{margin-block:10px 15px}.partner-box--sidebar{position:sticky;top:82px}.detail>.partner-box{margin-top:18px}.detail>.partner-box+.contact-box{margin-top:12px}
@media(max-width:850px){.partner-box--sidebar{display:none!important}.partner-box{margin-block:10px}.partner-box__body{align-items:flex-start}}
@media(max-width:620px){.partner-box{padding:10px 11px}.partner-box__body{display:grid;grid-template-columns:1fr}.partner-box__cta{width:fit-content;min-height:40px}.partner-box--footer_brand{display:none!important}}
@media print{.partner-box,.campaigns{display:none!important}}

/* V6.2 commercial intelligence refinements: dense but readable */
.staff-console .ops-grid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr))}
.staff-console .command-alert{max-width:1120px}
.staff-console .command-alert p{max-width:86ch}
.staff-console .smart-tip,.staff-console .smart-case{box-shadow:none}
@media(max-width:700px){.staff-console .ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-console .ops-card{min-height:72px!important}.staff-console .command-alert{display:block}.staff-console .command-alert .button-outline{display:inline-flex;margin-top:8px}}
@media(max-width:420px){.staff-console .ops-grid{grid-template-columns:1fr}}


/* V6.3 dense commercial operations: compact without sacrificing reading or touch targets */
.staff-console .admin-content{max-width:1440px}
.staff-console .admin-content :is(.panel,.form-panel,.command-hero){padding:clamp(14px,1.5vw,20px)}
.staff-console .admin-record{padding:10px 12px;gap:10px}
.staff-console .ops-grid{gap:9px}
.staff-console .ops-card{min-height:82px;padding:12px}
.staff-console .ops-card strong{font-size:clamp(18px,2vw,25px);line-height:1.05}
.staff-console .command-alert{padding:10px 12px;margin:8px 0}
.staff-console table :is(th,td){padding:9px 10px;line-height:1.42}
body:not(.staff-console) .partner-box{margin-block:14px;padding:12px 14px}
body:not(.staff-console) .partner-box__body{gap:12px}
@media(max-width:680px){.staff-console .admin-record{padding:11px}.staff-console .ops-card{min-height:78px}.staff-console :is(.btn,.button-outline,button,input,select){min-height:44px}}


/* V6.4 compact commercial-quality polish */
:root{--content-measure:72ch;--panel-gap:12px;--section-gap:18px}
.main>section,.admin-content>section{margin-block:var(--section-gap)}
.panel,.form-panel,.admin-record,.smart-case,.command-alert{padding:clamp(12px,1.35vw,17px)}
.admin-record p,.smart-case p,.command-alert p{margin:.28rem 0 0;line-height:1.48}
.admin-content h2{margin:1.15rem 0 .55rem;font-size:clamp(1.05rem,1.6vw,1.28rem)}
.admin-content h3{margin:.75rem 0 .35rem;font-size:1rem}
.ops-grid{gap:10px}.ops-card{min-height:82px;padding:12px}.ops-card strong{font-size:clamp(1.25rem,2.1vw,1.65rem)}
.article-body,.prose,.news-body{max-width:var(--content-measure);line-height:1.72}
@media(max-width:720px){:root{--section-gap:14px}.panel,.form-panel,.admin-record,.smart-case,.command-alert{padding:12px}.ops-card{min-height:76px}.admin-content h2{margin-top:1rem}}

/* V6.5 operator disposition + page-experience polish */
.command-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.command-actions form{margin:0}.command-actions .button-outline{white-space:nowrap}
body:not(.staff-console) :is(.article-row,.item-card,.side-box,.detail,.panel){content-visibility:auto;contain-intrinsic-size:auto 220px}
body:not(.staff-console) .detail{content-visibility:visible}
body:not(.staff-console) :is(.partner-box,.campaign-card){max-inline-size:100%}
@media(max-width:700px){.command-actions{justify-content:flex-start;margin-top:8px}.command-actions form,.command-actions .button-outline{width:100%}.command-actions button{width:100%;min-height:44px}}

/* V7.0 — user-logo coordinated warm editorial portal, compact but readable */
:root{--pine:#245344;--pine2:#37644e;--pine3:#183f35;--gold:#b99866;--cream:#f7f3eb;--white:#fffdf9;--ink:#2a3630;--muted:#646d63;--line:#e4dcd0;--soft:#f1ebe0;--shadow:0 3px 14px rgba(71,62,43,.055);--round:12px}
body{background:var(--cream);color:var(--ink);font-size:15px;line-height:1.58}
.site-header,.header-main,.nav-line{background:#fffdf9}.header-utility{background:#254f40}
.header-main{height:68px;gap:14px}.brand-logo{height:47px;width:auto;max-width:202px;object-fit:contain;object-position:left center}.nav-inner{min-height:44px;gap:23px}.main{padding-top:18px}.footer{background:#eeeae1}
:where(input,select,textarea){border-color:#d9d2c7;background:#fffefa;border-radius:8px;font-size:14px;min-height:40px;padding:9px 11px}
:where(.btn,.button-outline,.nav-publish){border-radius:8px}.nav-publish{padding:7px 11px}
:where(.section-title){margin-bottom:12px;padding-bottom:8px}:where(.section-title h1,.section-title h2){font-size:20px}
:where(.item-card,.article-row,.panel,.detail,.side-box){border-color:#e3dbcd;border-radius:12px;box-shadow:none}
.item-card{padding:13px;min-height:0}.article-row{padding:12px 14px;gap:11px}.article-row h3{font-size:16px}.article-row p{font-size:13px}.form-panel{padding:16px}.form-panel label{font-size:13px}
.main h1{letter-spacing:-.025em}.detail h1{font-size:clamp(24px,2.65vw,32px);line-height:1.4}.detail-body{font-size:16px;line-height:1.85;white-space:pre-line}
.news-front{margin:0 0 16px}.home-news-grid{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(0,.9fr);gap:14px}.home-news-lead{display:flex;flex-direction:column;justify-content:center;min-height:230px;padding:23px;border-radius:13px;background:#eee9df;border:1px solid var(--line);color:#274536}.home-news-lead h1{font-size:clamp(21px,2.5vw,30px);line-height:1.38;margin:11px 0}.home-news-lead p{font-size:14px;color:#506158}.home-news-lead small{color:#66736a}.editorial-label{color:#936f40;font-size:12px;letter-spacing:.06em;font-weight:800}.home-news-feed{display:grid;grid-template-rows:repeat(4,1fr);background:#fffefa;border:1px solid var(--line);border-radius:13px;overflow:hidden}.home-news-feed a{padding:12px 15px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;gap:5px}.home-news-feed strong{font-size:15px;font-weight:700;color:#273b32;line-height:1.45}.home-news-feed small{font-size:12px;color:#738076}
.market-compact{margin:18px 0;padding:12px 14px}.home-five-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:12px 0 0}.home-five-categories a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:7px;border:1px solid #ddd7ca;background:#fffefa;border-radius:9px;font-size:14px}.home-five-categories a:hover{background:#f2eddf;text-decoration:none}
.portal-home-departments{margin:24px 0}.department-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.department-card{background:#fffdf8;border:1px solid var(--line);border-radius:11px;padding:16px;display:grid;gap:11px}.department-head{display:flex;justify-content:space-between;align-items:center}.department-head h3{margin:0;font-size:17px}.department-head a{font-size:13px}.department-story{display:block;padding:8px 0;border-top:1px solid #eee8db;font-size:14px}.department-card p{color:var(--muted)}
.news-category-nav{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 18px}.news-category-nav a{padding:7px 12px;border-radius:7px;border:1px solid var(--line);background:#fffdf9;font-size:13px}.news-category-nav a[aria-current=page]{background:#245344;color:white}
.secondary-guides{margin:20px 0;border-top:1px solid var(--line);padding:15px 0}.guide-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.guide-link-grid a{display:flex;justify-content:space-between;background:#fffdf9;border:1px solid var(--line);border-radius:9px;padding:12px;font-size:14px}
.partner-box--house{background:#fffdf8;border:1px solid #e4dacc}.partner-link{display:block;overflow:hidden;border-radius:8px}.partner-link img{display:block;width:100%;height:auto;aspect-ratio:1200/340;object-fit:contain}.partner-box__foot{font-size:12px;color:#6e766e;margin:5px 0 0}.partner-box__head{margin-bottom:7px}
.editorial-seed-console{background:#f8f3e8;border-color:#dcccaf;margin-bottom:16px}.editorial-seed-console h2{font-size:19px;margin:0 0 8px}
@media(max-width:950px){.home-news-grid{grid-template-columns:1fr}.home-news-feed{grid-template-columns:repeat(2,1fr);grid-template-rows:none}.home-news-feed a{min-height:80px}.department-grid{grid-template-columns:1fr}}
@media(max-width:600px){body{font-size:15px}.header-main{min-height:62px;height:auto;padding-block:7px}.brand-logo{height:38px;max-width:178px}.home-news-lead{min-height:185px;padding:16px}.home-news-lead h1{font-size:24px}.home-news-feed{display:block}.home-news-feed a{min-height:0;padding:11px}.home-five-categories{gap:5px}.home-five-categories a{display:grid;gap:2px;text-align:center;font-size:12px;min-height:50px;padding:6px 2px}.home-five-categories strong{font-weight:650}.guide-link-grid{grid-template-columns:1fr}.department-card{padding:13px}.detail-body{font-size:16px}.main{padding-top:14px}.news-category-nav{flex-wrap:nowrap;overflow-x:auto}.news-category-nav a{white-space:nowrap}}
@media print{.partner-box--house{display:none!important}}

/* House creative gallery, private operator view */
.partner-console{margin-bottom:18px}.partner-console h2{font-size:19px;margin:0 0 8px}.partner-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.partner-catalog article{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}.partner-catalog img{width:100%;height:auto;aspect-ratio:1200/340;object-fit:contain}.partner-catalog strong{font-size:13px}.partner-catalog small{font-size:11px;color:var(--muted)}@media(max-width:900px){.partner-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.partner-catalog{grid-template-columns:1fr}}

.partner-box--sidebar .partner-link img{aspect-ratio:6/5;object-fit:contain}.partner-box--sidebar.partner-box--house{max-width:320px}.partner-link:hover{outline:2px solid #af9367;outline-offset:2px}

/* In-feed house and paid ad share a full row, after actual record six. */
.listing-grid > .partner-box,.article-list > .partner-box{grid-column:1/-1;max-width:100%}.article-list > .partner-box{margin:5px 0}.listing-grid > .partner-box--house,.article-list > .partner-box--house{padding:10px 12px}

/* V7.1 editorial navigation and compact newsroom controls */
.news-category-nav{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin:12px 0 18px;padding:0}
.news-category-nav a{border-radius:7px;padding:6px 10px;min-height:34px;display:inline-flex;align-items:center;white-space:nowrap;font-size:13px;line-height:1.4}
.news-category-nav a[aria-current="page"]{background:#285146;color:#fff}
.editorial-seed-console,.admin-content .panel{box-shadow:none}
.admin-content input:not([type="checkbox"]):not([type="radio"]),.admin-content select{min-height:40px}
.admin-content textarea{min-height:104px}
.admin-content input[type="file"]{border:1px dashed #cbbfa9;background:#faf8f2;max-width:100%;padding:8px;border-radius:8px}
.json-example{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;padding:12px;border-radius:8px;background:#f6f1e8;color:#294338;font-size:12px}
.city-editions-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))}
@media(max-width:700px){.news-category-nav{gap:5px;margin:10px 0}.news-category-nav a{font-size:13px;padding:6px 9px}.city-editions-grid{grid-template-columns:1fr}.admin-content input:not([type="checkbox"]):not([type="radio"]),.admin-content select{font-size:16px;min-height:40px}}

.editorial-coverage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;margin:12px 0}.coverage-item{display:flex;flex-direction:column;gap:4px;background:#fbf8f1;border:1px solid #e2d9c9;padding:9px 11px;border-radius:9px;text-decoration:none;font-size:13px;color:#27493d}.coverage-item span{color:#6d766b;font-size:12px}.coverage-item:hover{background:#f1eadd}

/* V7.3 news-first presentation: predictable sponsor inventory and readable compact pages */
:root{--sponsor-paper:#fbf7ec;--sponsor-border:#d9cbae}
.partner-box{min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden;background:var(--sponsor-paper);border:1px solid var(--sponsor-border);box-shadow:none}
.partner-box__head{min-height:27px;padding:5px 11px;display:flex;gap:9px;align-items:center;background:#f0e7d5;color:#5e4c34}
.partner-box__label{font-size:12px;font-weight:800;letter-spacing:.015em;color:#65452e}
.partner-box__kind{font-size:11px;color:#6f6759}
.partner-box--house{padding:8px 10px}.partner-box--house .partner-box__head{margin:-8px -10px 8px}
.partner-box--house .partner-link{margin-inline:auto;max-width:100%;border-radius:5px;display:block}
.partner-box--house .partner-link img{width:100%;max-width:100%;height:auto;aspect-ratio:1200/340;object-fit:contain;display:block}
.partner-box--toprow{max-width:960px;margin-inline:auto}.partner-box--toprow .partner-link img{max-height:185px}
.partner-box--list_infeed,.partner-box--detail_sponsor{max-width:760px}.partner-box--list_infeed .partner-link img,.partner-box--detail_sponsor .partner-link img{max-height:158px}
.partner-box--footer_brand{max-width:960px;margin-inline:auto}.partner-box--footer_brand .partner-link img{max-height:155px}
.partner-box--sidebar,.partner-box--desktop_sidebar{width:100%;max-width:300px;position:static}.partner-box--sidebar .partner-link img{aspect-ratio:6/5;max-height:250px;object-fit:contain}
.partner-box__foot{color:#706b60;font-size:12px;line-height:1.5;padding:2px 3px 0;margin:4px 0 0}
.partner-box__body{padding:13px 15px}.partner-box__copy strong{font-size:16px}.partner-box__copy p{font-size:13px}.partner-box__note{font-size:12px}
.related-reading{margin:18px 0}.related-reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.related-reading-grid a{padding:13px 15px;border:1px solid var(--line);background:#fffdf9;border-radius:8px;display:grid;gap:7px;text-decoration:none}.related-reading-grid strong{font-size:15px;line-height:1.5}.related-reading-grid small{font-size:13px;color:var(--muted);line-height:1.5}
@media(max-width:850px){.partner-box--desktop_sidebar{display:none!important}.related-reading-grid{grid-template-columns:1fr}}
@media(max-width:620px){.partner-box--house{padding:7px 8px}.partner-box--house .partner-box__head{margin:-7px -8px 7px}.partner-box--toprow .partner-link img{max-height:145px}.partner-box--list_infeed .partner-link img,.partner-box--detail_sponsor .partner-link img{max-height:132px}.partner-box__copy strong{font-size:15px}.partner-box__body{padding:11px}.partner-box__head{padding:6px 10px}.related-reading-grid a{padding:11px}}
@media print{.partner-box{display:none!important}}

/* V8.1.0 brand lockup: icon image + real HTML words. The tagline under the logo
   is text at 13px, not ~6px pixels baked into the banner image. */
.brand-lockup{display:inline-flex;align-items:center;gap:10px;min-width:0}
.brand-lockup .brand-icon{width:auto!important;height:58px!important;max-width:none;max-height:58px;object-fit:contain;background:transparent!important;flex:none}

/* ===== editorial_v770.css ===== */
/* USCHINAREN V7.7 — Warm Chinese newsroom design system.
   Loaded after the legacy bundle: intentionally override, do not alter workflows. */
:root{color-scheme:light;--pine:#285546;--pine2:#365d4d;--pine3:#23483a;--gold:#a78152;--cream:#f8f5ef;--white:#fffefa;--ink:#28362e;--muted:#657168;--line:#e6ded1;--soft:#f2ece1;--page:#f8f5ef;--surface:#fffefa;--surface-2:#f5efe4;--text:#28362e;--text-2:#657168;--border:#e6ded1;--brand:#285546;--brand-2:#365d4d;--focus:#916337;--accent:#a78152;--content-max:1260px;--reading-max:760px;--ui-control:40px;--ui-radius:9px;--ui-font:"Noto Sans CJK SC","PingFang SC","Microsoft YaHei",-apple-system,BlinkMacSystemFont,sans-serif}
html,html[data-theme="light"]{color-scheme:light;background:var(--cream)}
body{background:var(--cream);color:var(--ink);font-family:var(--ui-font);font-size:15px;line-height:1.64;font-weight:400;letter-spacing:0;text-rendering:optimizeLegibility}
.wrap{width:min(1260px,calc(100% - 36px));max-width:1260px}
.main{padding-top:17px;padding-bottom:44px;min-height:60vh}
a{color:var(--pine)}a:hover{color:#896039}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus)!important;outline-offset:2px!important}
h1,h2,h3{font-family:var(--ui-font);font-weight:750;letter-spacing:-.02em;line-height:1.4;text-wrap:pretty}
p,li{line-height:1.68}.muted,.meta{color:var(--muted)}.sr{position:absolute!important;clip:rect(0,0,0,0)!important;width:1px!important;height:1px!important;overflow:hidden!important}
/* Brand and readable horizontal information architecture */
.site-header,.header-main,.nav-line{background:#fffdf8;border-color:var(--line)}
.header-utility{background:var(--pine3);color:#f7f0e5;font-size:11px;letter-spacing:.02em}
.header-utility .wrap{min-height:27px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.header-main{height:auto;min-height:68px;padding-block:9px;gap:20px}
.brand-official,.brand-official .brand-logo{flex:none}.brand-official .brand-logo{width:clamp(175px,16vw,206px);height:auto;max-height:53px;object-fit:contain;object-position:left center}
.city-picker{flex:0 1 214px;width:214px;min-width:150px;max-width:214px;margin:0 auto 0 16px}.city-picker select{height:39px;min-height:39px;line-height:1.4;background:#f8f3ea;border:1px solid #e1d8c9;color:var(--ink);border-radius:8px;padding:7px 11px;font-size:13px}
.header-actions{gap:12px;font-size:13px;color:var(--ink)}.header-actions>a{display:inline-flex;align-items:center;min-height:36px}.link-pill{border-radius:7px;background:#efe9dc;color:var(--pine)!important;padding:7px 14px}
.nav-line{border-top:1px solid #ede5d9;border-bottom:0}.nav-inner{min-height:44px;gap:4px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#dbd0c0 transparent}
.nav-inner a{color:#3b5144;padding:10px 14px;font-size:14px;line-height:1.45;font-weight:650;display:inline-flex;align-items:center;min-height:43px;border-bottom:2px solid transparent;text-decoration:none}
.nav-inner a:hover{background:#f8f2e8;color:var(--pine3)}.nav-inner a[aria-current="page"]{border-bottom-color:#9c7a4b;color:#23483a;background:#faf6ef}
.nav-inner .nav-publish{margin-left:auto;border-radius:7px;background:var(--pine)!important;color:#fff!important;min-height:35px;padding:7px 13px;border-bottom:0}
/* Headings and compact flexible modules */
.edition-rule{color:#796d59;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#faf8f3;padding:7px 11px;font-size:12px;line-height:1.5}
.section-heading{margin:5px 0 15px}.section-heading h1{font-size:clamp(23px,2.4vw,31px);line-height:1.4;margin:0 0 3px}.section-heading p{font-size:13px}
.section-title{padding-bottom:9px;margin-bottom:12px;border-bottom:1px solid var(--line);gap:12px}.section-title :is(h1,h2){color:#243d31;font-size:clamp(19px,1.7vw,23px);line-height:1.35}.section-title>a{font-size:12px;font-weight:700;white-space:nowrap}
.edition-kicker,.editorial-label{color:#927045;font-size:11px;font-weight:750;letter-spacing:.035em}
.news-front{margin-bottom:14px}.home-news-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px}
.home-news-lead{background:linear-gradient(137deg,#f1e9dd,#f8f2e8 72%);color:var(--ink);min-height:252px;padding:24px 26px;border-radius:10px;border:1px solid #e7dccc;box-shadow:none;justify-content:space-between}
.home-news-lead h1{color:#273d30;font-size:clamp(23px,2.5vw,32px);line-height:1.43;margin:12px 0 8px;max-width:22em}
.home-news-lead p{font-size:14px;line-height:1.76;color:#596458;margin:0 0 15px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;max-width:58ch}
.home-news-lead small{color:#777263;font-size:12px}.home-news-lead:hover{border-color:#cbb996;text-decoration:none}
.home-news-feed{background:var(--white);border-color:var(--line);border-radius:10px;box-shadow:none}
.home-news-feed a{padding:11px 16px;min-width:0}.home-news-feed a:last-child{border-bottom:0}.home-news-feed a:hover{background:#fcf8f1;text-decoration:none}
.home-news-feed strong{color:#2b4133;font-size:15px;line-height:1.5;font-weight:720;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.home-news-feed small{font-size:12px;color:#72796c}
/* Home city coverage — 15 cities, compact enough to read without endless blank space */
.city-news-partner-layout{min-width:0;gap:15px}.city-news-main{min-width:0}
.city-editions{margin:12px 0 14px}.city-editions-header{margin-bottom:10px}.city-editions-jump{gap:5px;margin-bottom:10px}
.city-editions-jump a{background:#fffdf9;border:1px solid #e2d9ca;border-radius:6px;min-height:32px;padding:5px 10px;color:#385e4c;font-size:12px}
.city-editions-jump a:hover{background:#f4ecdf;border-color:#d0bd9f}
.city-editions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.city-edition-card{border:1px solid #e3dacb;border-top:2px solid #5d785e;background:var(--white);border-radius:8px;padding:12px 13px 8px;min-width:0}
.city-edition-top h3{font-size:15px;color:#2c4936}.city-edition-top small{font-size:11px;color:#77756d}.city-edition-top>a{font-size:11px;color:#5c744c}
.city-edition-story{padding:8px 0 7px;border-color:#f0ebe2}.city-edition-story strong{font-size:14px;line-height:1.48;font-weight:680}.city-edition-story span{font-size:11px;color:#817f76}
/* Single, five-entry classified strip; newspaper remains primary */
.market-compact{margin:14px 0 18px}.market-compact-bar{border-top:2px solid #50745d;background:#f3ede2;border-bottom-color:#e2d6c6;padding:9px 13px;gap:10px}
.market-compact-bar h2{font-size:18px;color:#2a4a38}.market-inline-search input{min-height:38px;height:38px;background:var(--white);border-color:#d8cfc1}.market-inline-search button,.market-post{background:var(--pine);color:#fff!important}
.home-five-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:1px solid var(--line);border-top:0;background:var(--white)}
.home-five-categories a{min-width:0;min-height:49px;padding:8px 6px;display:flex;align-items:center;justify-content:center;gap:8px;border-right:1px solid #eee6da;text-decoration:none!important;font-size:14px;color:var(--pine3)}
.home-five-categories a:last-child{border-right:0}.home-five-categories a:hover{background:#faf4ea}.home-five-categories strong{font-size:13px;white-space:normal}
.portal-home-departments{margin:18px 0}.department-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.department-card{gap:7px;padding:14px;background:var(--white);border-radius:9px;border-color:var(--line)}.department-head{gap:8px}.department-head h3{font-size:16px;color:#2d4938}.department-head a{font-size:12px;white-space:nowrap}
.department-story{padding:7px 0;color:#394b3f;font-size:14px;line-height:1.48}
/* News categories, article lists and detail reading */
.news-category-nav{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 16px}.news-category-nav a{border:1px solid #e3dacb;background:#fffdf9;border-radius:7px;padding:7px 11px;min-height:35px;line-height:1.45;color:#526650;font-size:13px;text-decoration:none}
.news-category-nav a:hover{background:#f5eee3}.news-category-nav a[aria-current="page"]{background:var(--pine);border-color:var(--pine);color:#fff}
.article-list{gap:7px}.article-row{padding:12px 15px;border-radius:9px;border-color:var(--line);background:var(--white);gap:13px;align-items:flex-start}
.article-row:hover{background:#fffaf1;border-color:#d3c4aa;text-decoration:none}.article-row>div{flex:1;min-width:0}.article-row h3{font-size:16px;line-height:1.46;margin:0 0 5px;color:#283c31}.article-row p{font-size:13px;color:var(--muted);line-height:1.58;max-width:85ch;margin:0 0 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.article-row small{font-size:11.5px;color:#777a70}.news-tag{flex:none;font-size:11px;font-weight:650;padding:4px 8px;background:#f4e9da;color:#79613f;border:1px solid #eee0c9;border-radius:5px}
.article-row .arrow{font-size:18px;line-height:1.5;color:#a39884}.news-pagination,.pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:11px;margin:17px 0;font-size:13px}
.detail{max-width:900px;padding:clamp(21px,3vw,43px);background:var(--white);border-color:var(--line);border-radius:10px;box-shadow:none}
.route-article .detail{max-width:920px}.detail .breadcrumb{font-size:12px;color:#777c72;margin:0 0 18px}.detail h1{font-size:clamp(25px,2.8vw,35px);line-height:1.52;max-width:26em;margin:12px 0}
.detail .meta{font-size:12px;line-height:1.65;color:#77786e;margin:10px 0}.detail .lead{margin:23px 0;color:#4e594c;background:#f7f1e6;border-left:3px solid #b1915e;padding:13px 15px;font-size:clamp(16px,1.25vw,18px);line-height:1.83}
.detail-body{font-size:17px;line-height:1.94;max-width:72ch;margin:22px 0 25px;white-space:pre-line;overflow-wrap:anywhere;color:#303c32}.detail-body :is(h2,h3){margin-block:1.3em .5em}.detail-body img{height:auto;border-radius:6px}
.contact-box{background:#f5efe3;border:1px solid #e6dbc9;padding:16px;border-radius:8px}.report-box{margin-top:22px}.related-reading{margin:20px auto;max-width:1080px}
/* Forms and data-dense utility surfaces */
input:not([type="checkbox"]):not([type="radio"]),select,textarea{background:#fffefb;border:1px solid #d9d1c4;border-radius:7px;color:var(--ink);font-size:14px;min-height:40px;padding:9px 11px;box-shadow:none}
textarea{height:auto;min-height:110px;line-height:1.65}input[type="checkbox"],input[type="radio"]{accent-color:var(--pine);width:auto;min-height:0}
:where(.btn,.button-outline,button){border-radius:7px}.btn{padding:9px 15px;min-height:40px;background:var(--pine);color:#fff;font-size:13px;font-weight:700}.btn.small{min-height:34px;padding:6px 12px}.button-outline{background:var(--white);border-color:#cbbda7;padding:8px 12px;min-height:36px;color:var(--pine3)}
.filters{display:flex;flex-wrap:wrap;align-items:end;gap:9px;padding:11px 12px;background:var(--white);border:1px solid var(--line);border-radius:8px;margin:0 0 16px}
.filters>input,.filters>select{flex:1 1 130px;min-width:125px}.filters>input[name="q"]{flex:2 1 215px}.filters>label{margin:0!important;flex:0 1 122px;font-size:11px;line-height:1.3;color:#746d60;min-width:104px}.filters>label>input{margin:3px 0 0}.filters>button{min-width:82px;min-height:40px;padding:8px 11px}
:is(.panel,.form-panel,.auth-card,.side-box){background:var(--white);border:1px solid var(--line);border-radius:9px;box-shadow:none;padding:16px}
.form-panel{max-width:900px}.auth-card{max-width:440px}.form-panel label,.auth-card label,.panel label{font-size:13px;font-weight:650;color:#415546;margin:10px 0}.form-grid{gap:0 14px}.form-panel textarea{min-height:125px}
.listing-grid{gap:10px}.item-card{padding:13px;border-radius:9px;border-color:var(--line);background:var(--white);min-height:0}.item-card:hover{box-shadow:none;background:#fffaf1;border-color:#d2bfaa}.item-card h3{font-size:15px;color:#2d4234}.item-card p{font-size:13px;line-height:1.58}.item-kind{font-size:11px;background:#eeeadd;color:#496247}.item-meta{border-top-color:#efe8db;font-size:12px}
.empty,.notice{border-radius:8px;background:#f6f0e6;border:1px solid #e8dcc9;color:#596257}.empty{padding:18px}.empty strong{font-size:15px}
.geo-search{background:var(--white);padding:13px;border-color:var(--line);border-radius:9px;gap:10px}.geo-search label{font-size:12px}.geo-search :is(input,select){min-height:40px}
/* Commercial inventory remains secondary to news and never overlays controls */
.partner-box,.partner-box--house{background:#f8f3e8;border:1px solid #dfd1b9;border-radius:8px;box-shadow:none;max-width:100%;overflow:hidden;position:relative;contain:layout paint}
.partner-box__head{background:#efe5d3;color:#695335;min-height:28px;padding:6px 11px}.partner-box__label{font-size:12px;font-weight:800;color:#654a2f}.partner-box__kind{font-size:11px;color:#776a59}
.partner-box__body{padding:12px 14px}.partner-box__copy strong{font-size:15px;line-height:1.5}.partner-box__copy p{font-size:13px;line-height:1.6}.partner-box__cta{background:var(--pine);color:#fff;min-height:38px}
.partner-box--toprow,.partner-box--home_leaderboard,.partner-box--footer_brand{max-width:960px;margin-inline:auto}
.partner-box--list_infeed,.partner-box--detail_sponsor{max-width:760px}.partner-box--sidebar,.partner-box--desktop_sidebar{max-width:300px;width:100%;position:static}
.partner-box--house .partner-link img{width:100%;height:auto;aspect-ratio:1200/340;object-fit:contain;max-height:180px}
.partner-box--sidebar .partner-link img,.partner-box--desktop_sidebar .partner-link img{aspect-ratio:6/5;max-height:250px;object-fit:contain}
.partner-box__foot,.partner-box__note{font-size:11.5px;line-height:1.55;color:#726858}.city-news-ads .partner-box{margin:0}
/* Operator UI is warm, dense and usable; admin actions remain distinct */
.staff-console{background:#f8f5ef;color:var(--ink)}.staff-console .main{max-width:1460px}.staff-console :is(.panel,.form-panel,.admin-record,.stat,.ops-card,.command-hero,.command-alert){background:#fffefa;border-color:var(--line);border-radius:8px;box-shadow:none}
.staff-console .admin-layout{grid-template-columns:210px minmax(0,1fr);gap:18px}.staff-console .admin-sidebar{background:#fffefa;border-color:var(--line);border-radius:9px;padding:9px;box-shadow:none}.staff-console .admin-sidebar a{border-radius:6px;min-height:36px;padding:8px 11px;font-size:13px;color:#475c49}.staff-console .admin-sidebar a.active{background:#e9dfcc;color:#2f513e;border:0}
.staff-console .admin-content{font-size:14px;line-height:1.62}.staff-console .admin-content :is(.panel,.form-panel,.admin-record){padding:13px 15px}.staff-console .admin-content h2{font-size:18px}.staff-console .admin-record{gap:9px}.staff-console .admin-record :is(select,input:not([type="checkbox"])) {min-height:38px}.staff-console .admin-content textarea{min-height:120px}
.staff-console :is(.ops-grid,.stat-grid){gap:9px}.staff-console table :is(td,th){padding:9px 11px;font-size:12px;line-height:1.55}.staff-console th{background:#f3ecdf;color:#496049}
/* System-wide footer and comfortable safe areas */
.footer{background:#ede7dc;border-top:1px solid #dcd1bd;color:#475a4b}.footer-grid{gap:20px}.footer-grid p{color:#617065;font-size:12px}.footer a{color:#345b45}.footer-brand{background:#fffdf8}
.mobile-nav{background:#fffdf8;border-top:1px solid var(--line);box-shadow:0 -3px 12px rgba(68,58,41,.05)}.mobile-nav a{color:#405a49}
@media(max-width:1100px){.city-editions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.department-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-news-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.staff-console .admin-layout{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:900px){.city-news-partner-layout{display:block!important}.city-news-ads,.partner-box--desktop_sidebar{display:none!important}.home-news-grid{grid-template-columns:1fr}.home-news-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}.home-news-feed a{min-height:90px}.header-main{flex-wrap:wrap}.city-picker{margin-left:0}}
@media(max-width:760px){.wrap{width:calc(100% - 28px)}.header-main{min-height:60px;gap:10px}.brand-official{flex:1 1 53%;min-width:0}.brand-official .brand-logo{width:min(185px,45vw);height:auto;max-height:45px}.header-actions{flex:0 0 auto;margin-left:auto;gap:9px}.city-picker{flex:1 1 100%;max-width:none;width:100%;order:3;margin:0}.city-picker select{height:38px}.nav-inner a{padding:9px 12px}.main{padding-top:12px;padding-bottom:90px}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.filters>*{min-width:0!important;width:100%}.filters>input[name="q"]{grid-column:1/-1}.filters>button{grid-column:1/-1}.staff-console .admin-layout{display:block}.staff-console .admin-sidebar{position:static;display:flex;overflow-x:auto;white-space:nowrap;max-height:none;margin-bottom:14px;padding:7px}.staff-console .admin-sidebar a{flex:none}.staff-console .main{padding-bottom:25px}.home-news-lead{min-height:0;padding:18px}.detail-body{font-size:16px;line-height:1.86}.detail{padding:21px 19px}.section-heading h1{font-size:25px}}
@media(max-width:620px){body{font-size:15px}.header-utility .wrap span+span{display:none}.home-news-grid{gap:8px}.home-news-lead h1{font-size:25px}.home-news-lead p{font-size:14px}.home-news-feed{display:block}.home-news-feed a{padding:11px 13px;min-height:0}.city-editions-grid,.department-grid{grid-template-columns:1fr}.city-edition-card{padding:11px 13px}.city-edition-story strong{font-size:14px}.news-category-nav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:5px}.news-category-nav a{flex:none;min-height:39px}.home-five-categories a{display:flex;flex-direction:column;gap:2px;min-height:49px;padding:6px 2px;font-size:16px}.home-five-categories strong{font-size:11px}.market-compact-bar{grid-template-columns:1fr auto}.market-inline-search{grid-column:1/-1;grid-row:2}.market-compact-bar h2{font-size:17px}.article-row{padding:11px 12px;gap:8px}.article-row h3{font-size:15px}.article-row p{font-size:12.5px}.article-row .news-tag{font-size:10px;max-width:88px;white-space:normal}.article-row .arrow{display:none}.detail .lead{padding:10px 12px;font-size:16px}.partner-box--house .partner-link img{max-height:145px}.partner-box--footer_brand{display:none!important}.partner-box--sidebar,.partner-box--desktop_sidebar{display:none!important}.staff-console .admin-content :is(input:not([type="checkbox"]),select,textarea),.portal-public :is(input:not([type="checkbox"]),select,textarea){font-size:16px}/* iOS zoom prevention */}
@media(max-width:380px){.wrap{width:calc(100% - 22px)}.home-five-categories strong{font-size:10px}.header-actions{gap:6px}.link-pill{padding:6px 8px}.brand-official .brand-logo{width:133px}.article-row{flex-wrap:wrap}.article-row>div{flex:1 1 75%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media print{.site-header,.mobile-nav,.partner-box,.nav-line,.report-box{display:none!important}body{background:white;color:#111}.detail{border:0;box-shadow:none;max-width:100%;padding:0}.detail-body{max-width:100%}}
/* Additional newest verified reports, rather than repeated homepage shortcuts */
.home-latest-news{margin:16px 0 19px}.home-latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.home-latest-item{display:flex;flex-direction:column;gap:7px;min-width:0;background:var(--white);border:1px solid var(--line);padding:13px 14px;border-radius:8px;color:var(--ink);text-decoration:none}
.home-latest-item:hover{border-color:#d1baa0;background:#fffaf2;text-decoration:none}
.home-latest-topic{font-size:11px;color:#937044;font-weight:700}.home-latest-item strong{font-size:14px;line-height:1.52;font-weight:720;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.95em}
.home-latest-item small{font-size:11px;color:#828077;margin-top:auto}
@media(max-width:930px){.home-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.home-latest-grid{grid-template-columns:1fr;gap:6px}.home-latest-item{padding:11px 13px;gap:4px}.home-latest-item strong{min-height:0}.home-latest-item small{margin-top:2px}}
/* The previous generic content-visibility:auto placeholder was much taller than
   compact real rows, causing large blank jumps when visitors scrolled. */
.portal-public :is(.article-row,.item-card,.side-box,.panel,.department-card,.city-edition-card){content-visibility:visible!important;contain-intrinsic-size:none!important}

/* ===== editorial_v780.css ===== */
/* V7.8 — compact warm editorial design. Loaded LAST across public and admin. */
:root{--cream:#f8f5ef;--white:#fffdf8;--line:#e7e0d6;--pine:#285546;--ink:#293a31;--muted:#687168;color-scheme:light}
html,body{background:#f8f5ef!important;color:#293a31}
.site-header{border-bottom:1px solid #ded6c9;background:#fffdf8}.header-utility{display:none!important}
.header-main{min-height:58px!important;padding-block:5px!important;gap:18px}
.brand-official{display:inline-flex;align-items:center;min-width:0;max-width:240px;background:none!important;border:0!important;padding:0!important}
.brand-official .brand-logo,.footer-brand .brand-logo{display:block!important;object-fit:contain!important;object-position:left center!important;width:210px!important;height:auto!important;max-height:62px!important;aspect-ratio:650/238!important;min-width:0!important;max-width:100%!important;background:transparent!important;transform:none!important}
.footer-brand{background:transparent!important;border:0!important}
.site-header .city-picker{margin-left:0;max-width:185px;width:185px;flex:0 1 185px}.site-header .city-picker select{height:36px;min-height:36px;padding:6px 9px}
.nav-line{background:#fffdf8}.nav-inner{min-height:37px;gap:0}.nav-inner a{min-height:37px;padding:7px 12px;font-size:13px}.nav-inner .nav-publish{min-height:33px;padding:6px 11px}
.main{padding-top:10px;padding-bottom:20px;min-height:initial}.main>.flash:empty{display:none!important}
.edition-rule{padding:5px 0;background:none;margin:3px 0 11px}.section-heading{margin:2px 0 11px}.section-heading h1{font-size:clamp(21px,2vw,28px)}
.section-title{margin-bottom:9px;padding-bottom:6px}.section-title :is(h1,h2){font-size:19px}.news-front,.city-editions,.portal-home-departments,.home-latest-news{margin-block:10px 12px}
.home-news-grid{gap:9px}.home-news-lead{min-height:0!important;padding:12px 15px!important;display:flex;flex-direction:column;gap:5px}
.home-news-lead .home-headline-visual{width:100%;height:120px;max-height:120px;object-fit:cover;object-position:center;border-radius:5px;margin:2px 0 3px}
.home-news-lead h1{font-size:clamp(20px,2vw,26px);line-height:1.34;margin:3px 0}.home-news-lead p{font-size:13px;line-height:1.48;margin:0}.home-news-lead small{font-size:11px}
.home-news-feed a{padding:8px 12px}.home-news-feed strong{font-size:13px;line-height:1.4}.home-news-feed small{font-size:11px}
.city-editions-grid{gap:7px}.city-edition-card{padding:9px 11px}.city-edition-story{padding:5px 0}.city-edition-story strong{font-size:13px;line-height:1.4}.city-edition-story span{font-size:10.5px}.city-editions-jump{margin-bottom:6px}.city-editions-jump a{min-height:30px}
.home-latest-grid{gap:6px}.home-latest-item{display:grid;grid-template-columns:86px 1fr;grid-template-rows:auto auto auto;gap:2px 9px;padding:8px;align-items:center}
.home-latest-thumb{width:86px;height:64px;object-fit:cover;border-radius:4px;grid-row:1/4;grid-column:1}.home-latest-topic,.home-latest-item strong,.home-latest-item small{grid-column:2}.home-latest-item strong{font-size:13px;line-height:1.36;min-height:0!important}.home-latest-item small{font-size:10.5px}
.market-compact{margin:11px 0}.market-compact-bar{padding:6px 9px}.market-compact-bar h2{font-size:16px}.home-five-categories a{min-height:43px;padding:6px}
.department-card{padding:10px 12px;gap:4px}.department-head h3{font-size:14px}.department-story{padding:4px 0;font-size:12.5px;line-height:1.46}
.article-row{display:flex;align-items:center;padding:10px 12px;gap:11px}.article-row .news-tag{align-self:flex-start;max-width:80px}.article-row-thumb{width:120px;height:77px;flex:0 0 120px;object-fit:cover;border-radius:5px;border:1px solid #e7e0d6}
.article-row>div.article-row-copy{flex:1;min-width:0}.article-row h3{font-size:15px;line-height:1.4;margin:0 0 3px}.article-row p{font-size:12.5px;line-height:1.43;margin:0 0 3px}.article-row small{font-size:11px}
.route-article .detail{width:min(100%,1000px);max-width:1000px!important;padding:clamp(14px,2vw,24px)!important;margin:0 auto;background:#fffefa;border:1px solid #e9e1d5}
.route-article .detail h1{font-size:clamp(23px,2.3vw,33px)!important;line-height:1.38!important;margin:5px 0 8px!important;max-width:100%}
.route-article .detail .breadcrumb{margin:0 0 8px;font-size:12px}
.route-article .detail .meta{font-size:11.5px;margin:4px 0 9px!important;line-height:1.45}
.route-article .detail .lead{margin:10px 0!important;padding:9px 12px!important;font-size:15px!important;line-height:1.56!important;background:#f6f0e5}
.route-article .news-visual{max-width:100%;margin:9px 0 10px;padding:0;background:transparent!important}.route-article .news-visual img{display:block;width:100%;height:clamp(120px,18vw,245px);object-fit:cover;border-radius:6px}.route-article .news-visual figcaption{font-size:11px;color:#7b766d;line-height:1.5;padding:4px 0}
/* Crucial: old nl2br+pre-line doubled line gaps. News is paragraph HTML, not whitespace-based. */
.route-article .news-rich-body{white-space:normal!important;display:flow-root;font-size:16px;line-height:1.72;max-width:100%!important;min-height:0!important;margin:6px 0 14px!important;padding:0!important;letter-spacing:0;overflow-wrap:anywhere}
.route-article .news-rich-body h2{font-size:17px;line-height:1.45;margin:15px 0 5px!important;color:#2c513d;font-weight:700;border-left:3px solid #ae9166;padding-left:8px}
.route-article .news-rich-body p{font-size:16px;line-height:1.74;margin:0 0 9px!important;padding:0!important;white-space:normal!important;min-height:0!important}
.news-source-card{max-width:100%;background:#f7f3ec;border:1px solid #e7ddcf;border-radius:7px;padding:10px 13px;margin:11px 0;color:#556254;font-size:12px}.news-source-card strong{font-size:13px;color:#395746}.news-source-card p{margin:3px 0!important;font-size:12px!important;line-height:1.5!important}.news-source-card a{display:inline-flex;margin-top:4px;font-size:12px;word-break:break-word}.news-source-warning{color:#964a40}
.route-article .related-reading{margin:10px auto;max-width:1000px}.route-article .related-reading-grid{gap:8px}.route-article .related-reading-grid a{padding:9px 12px}
/* Compact, horizontal sponsor strip; content always dominates. Paid and owned use same disclosure. */
.partner-box,.partner-box--house{width:100%!important;max-width:min(100%,960px)!important;border-radius:6px;margin:10px auto!important;padding:0!important;background:#f5efe5!important;box-shadow:none!important}
.partner-box__head{min-height:22px!important;padding:3px 10px!important;display:flex;justify-content:space-between;align-items:center}.partner-box__label{font-size:11px!important}.partner-box__kind{font-size:10px!important}
.partner-box--house .partner-link{display:block;margin:0 auto;max-width:100%}.partner-box--house .partner-link img{display:block;width:100%!important;height:92px!important;max-height:92px!important;object-fit:contain!important;object-position:center!important;aspect-ratio:auto!important;margin:0 auto!important}
.partner-box--house .partner-box__foot{font-size:10px;line-height:1.3;margin:3px 9px 5px!important;padding:0!important}
.partner-box__body{padding:7px 10px!important;display:flex;gap:10px;align-items:center;justify-content:space-between}.partner-box__copy strong{font-size:13px}.partner-box__copy p{font-size:11.5px;line-height:1.35;margin:0}.partner-box__cta{min-height:32px!important;white-space:nowrap;padding:6px 10px!important;font-size:11px}.partner-box__note{margin:3px 10px 5px!important;font-size:10px;line-height:1.3}
.partner-box--sidebar,.partner-box--desktop_sidebar{max-width:300px!important;width:100%!important}.partner-box--sidebar .partner-link img,.partner-box--desktop_sidebar .partner-link img{height:130px!important;max-height:130px!important;object-fit:contain!important}
.route-article .partner-box--detail_sponsor{max-width:100%!important}.footer-grid{padding-top:12px;padding-bottom:12px}.footer-grid p{margin:3px 0!important;line-height:1.4}.footer-brand .brand-logo{width:175px!important}
/* Backend surfaces stay compact; security code never appears on public routes. */
.staff-console .admin-content{padding:12px!important}.staff-console .admin-content .panel,.staff-console .admin-content .form-panel{padding:11px 13px!important}.staff-console .admin-content textarea{min-height:110px}
.staff-console .admin-sidebar a{min-height:34px!important;font-size:12.5px}.staff-console .admin-content input:not([type=checkbox]),.staff-console .admin-content select{min-height:38px}
@media(max-width:950px){.city-news-partner-layout{display:block}.city-news-ads{display:none}.home-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.wrap{width:calc(100% - 22px)}.header-main{min-height:53px!important;gap:7px}.brand-official{max-width:44vw}.brand-official .brand-logo{width:min(170px,44vw)!important;max-height:48px!important}.header-actions{gap:6px}.city-picker{flex:1 1 100%;order:3;margin:0;max-width:none!important;width:100%!important}.city-picker select{width:100%;font-size:14px;min-height:36px}.nav-inner a{min-height:36px;padding:7px 9px;font-size:12.5px}.main{padding-top:8px}.edition-rule{font-size:11px}.home-news-lead .home-headline-visual{height:106px}.home-news-lead h1{font-size:21px}.home-latest-grid{grid-template-columns:1fr}.home-latest-thumb{width:79px;height:58px}.home-latest-item{grid-template-columns:79px 1fr}.article-row{gap:7px;flex-wrap:wrap}.article-row .news-tag{font-size:10px}.article-row-thumb{width:84px;height:59px;flex-basis:84px}.article-row>div.article-row-copy{flex:1 1 64%}.article-row h3{font-size:14px}.article-row p{display:none}.route-article .detail{padding:12px!important}.route-article .detail h1{font-size:23px!important}.route-article .news-rich-body,.route-article .news-rich-body p{font-size:16px!important;line-height:1.72!important}.route-article .news-rich-body h2{font-size:17px}.route-article .news-visual img{height:155px}.partner-box--house .partner-link img{height:75px!important;max-height:75px!important}.partner-box__body{flex-wrap:wrap}.partner-box__note{font-size:10px}}
@media(max-width:380px){.brand-official .brand-logo{width:138px!important}.article-row-thumb{width:70px;height:49px;flex-basis:70px}}
@media print{.partner-box,.site-header,.mobile-nav{display:none!important}.route-article .detail{border:0;padding:0!important}.news-visual img{max-height:185px}}

/* V7.8 new intrinsic wide sponsors: no stretching and no huge blank ad box. */
.partner-box--house .partner-link picture{display:block;width:100%;line-height:0}.partner-box--house .partner-link img{width:100%!important;height:auto!important;max-height:120px!important;object-fit:contain!important;aspect-ratio:auto!important}.partner-box--sidebar .partner-link img,.partner-box--desktop_sidebar .partner-link img{height:auto!important;max-height:140px!important}.partner-box--house .partner-box__foot{margin:3px 10px 5px!important}
@media(max-width:680px){.partner-box--house .partner-link img{max-height:102px!important}}

/* ===== portal_v790.css ===== */
/* USCHINAREN V7.9: editorial portal close to approved layout; actual content only. */
:root{--pine:#1d5140;--pine2:#2c654f;--ink:#1c2f27;--paper:#fffdf9;--cream:#faf8f3;--line:#e9e5dc;--muted:#68736d;--warm:#f3ede3;color-scheme:light}
html,body{background:var(--cream)!important;color:var(--ink)!important;font-family:"PingFang SC","Noto Sans CJK SC","Microsoft Yahei",system-ui,sans-serif!important}
.wrap{width:min(1460px,calc(100% - 42px))!important;max-width:1460px!important}
.site-header,.nav-line,.header-main{background:#fff!important}.site-header{border-bottom:1px solid #e5e6de}.header-main{display:flex!important;min-height:77px!important;height:auto!important;padding:7px 0!important;gap:clamp(14px,3.5vw,62px)!important;align-items:center!important}
.brand-official{display:inline-flex!important;flex:0 0 auto!important;width:clamp(175px,16vw,225px)!important;max-width:225px!important;min-width:0!important;align-items:center!important;line-height:0!important}
.brand-official .brand-logo{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;aspect-ratio:650/238!important;object-fit:contain!important;object-position:left center!important;transform:none!important}
.header-news-search{display:flex;align-items:center;min-width:180px;max-width:620px;flex:1 1 480px;height:41px;border:1px solid #d4dcd5;border-radius:6px;overflow:hidden;background:#fff}
.header-news-search input{flex:1;min-width:0;width:100%;min-height:39px!important;height:39px!important;padding:7px 14px!important;background:#fff!important;color:#2d4038;border:0!important;outline:0!important;box-shadow:none!important;font-size:13px!important}
.header-news-search input:focus-visible{outline:2px solid #4b856d!important;outline-offset:-2px!important}.header-news-search button{flex:0 0 49px;height:41px;min-height:41px;background:#075941;color:#fff;border:0;border-radius:0;font-size:26px;display:grid;place-items:center}
.header-actions{margin-left:auto!important;display:flex!important;align-items:center;gap:10px!important;white-space:nowrap}
.header-actions a{min-height:38px;display:inline-flex;align-items:center;font-weight:700;font-size:13px!important;padding:7px 13px;border:1px solid #d2d8d2;border-radius:6px;color:#304b3d!important;background:#fff}
.header-actions a.link-pill{background:#0d5943!important;color:#fff!important;border-color:#0d5943!important}
.nav-line{border-top:1px solid #eeeee9;border-bottom:1px solid #eceae3}.nav-inner{min-height:42px!important;display:flex;align-items:center;gap:0!important;overflow-x:auto}
.nav-inner>a:not(.nav-publish){font-size:13px!important;font-weight:700;white-space:nowrap;padding:9px 14px!important;min-height:40px!important;color:#294236!important}
.nav-inner>a[aria-current=page]{border-bottom:2px solid #0e6547}.nav-inner .city-picker{margin:0 8px 0 auto!important;flex:0 0 155px!important;min-width:120px;max-width:155px!important;width:155px!important}
.nav-inner .city-picker select{height:33px!important;min-height:33px!important;max-height:33px!important;font-size:12px!important;border-radius:5px;background:#f8f6f0}
.nav-inner .nav-publish{font-size:13px;min-height:34px!important;white-space:nowrap;padding:6px 12px!important;margin-left:0!important}
.main{padding-top:9px!important;padding-bottom:25px!important;min-height:initial!important}
.main>.flash:empty{display:none!important}
/* Four low-profile owned-brand promos are clearly labeled and do not imitate headlines. */
.partner-ribbon{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 11px;min-width:0}
.partner-cell{position:relative;display:block;min-width:0;overflow:hidden;border-radius:5px;border:1px solid #e1dfd6;background:#f5f0e6;height:62px;box-shadow:none}
.partner-cell img{display:block;width:100%;height:100%;object-fit:fill;aspect-ratio:auto}
/* Original banners 1600 x 180 are wide: desktop crops rather than stretching. */
.partner-cell img{object-fit:cover;object-position:center}
.partner-cell__mark{position:absolute;top:3px;right:4px;background:rgba(26,43,36,.84);color:#fff;padding:1px 5px;border-radius:3px;font-size:9px;line-height:1.45;z-index:1}
/* True news-headline matrix: big feature image, story rail, right information rail. */
.news-front--v79{margin:0 0 12px!important}
.home-lead-composition{display:grid;grid-template-columns:minmax(0,1.54fr) minmax(0,.99fr) minmax(260px,.99fr);gap:12px;align-items:start;min-width:0}
.home-news-lead--v79{position:relative!important;display:block!important;padding:0!important;min-height:0!important;height:365px!important;overflow:hidden;border:1px solid #e2e4da!important;border-radius:7px!important;background:#ded9cf!important;box-shadow:none!important}
.home-news-lead--v79 .home-headline-visual{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none!important;min-height:0!important;object-fit:cover!important;object-position:center!important;border:0!important;border-radius:0!important;margin:0!important}
.home-news-lead--v79::after{content:"";position:absolute;inset:28% 0 0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(12,21,17,.56) 46%,rgba(5,15,12,.92) 100%)}
.home-lead-caption{position:absolute;z-index:2;bottom:0;left:0;right:0;padding:20px 18px 16px;color:#fff}
.home-lead-caption .editorial-label{display:inline-block;background:#ba4032;color:#fff!important;border-radius:3px;padding:2px 7px;font-size:10px}
.home-lead-caption h1{font-size:clamp(20px,2.1vw,29px)!important;line-height:1.35!important;margin:8px 0 6px!important;color:#fff!important;font-weight:800;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 2px #1118;max-width:none!important}
.home-lead-caption p{color:#efeeeb!important;font-size:12px!important;line-height:1.55!important;margin:0 0 8px!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.home-lead-caption small{font-size:10px!important;color:#e3dfd9!important;line-height:1.4}
.home-news-feed--v79{display:grid!important;grid-template-rows:repeat(4,minmax(0,1fr));gap:6px!important;min-height:0!important;height:365px!important;max-height:none!important;background:transparent!important;border:0!important;box-shadow:none!important}
.home-news-feed--v79>a{display:grid!important;grid-template-columns:122px minmax(0,1fr);gap:10px;align-items:center;padding:0!important;min-width:0;min-height:0;border:0!important;border-bottom:1px solid #eae7df!important;background:transparent!important;color:#20382d}
.home-news-feed--v79 img{display:block;width:122px;height:80px;object-fit:cover;border-radius:5px;border:1px solid #e9e5dc}
.home-news-feed--v79 span{display:flex;flex-direction:column;gap:5px;min-width:0}.home-news-feed--v79 strong{font-size:14px!important;line-height:1.43!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.home-news-feed--v79 small{font-size:10px!important;line-height:1.45;color:#73736a!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.home-editorial-aside{display:flex;flex-direction:column;gap:9px;min-width:0}.home-right-box{border:1px solid #e6e5de;border-radius:6px;background:#fffdf9;overflow:hidden;min-width:0}
.right-box-head{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:34px;padding:5px 11px;background:#f7f2ea;border-bottom:1px solid #ede5d9}.right-box-head h2{margin:0;font-size:14px;line-height:1.2;color:#25392f}.right-box-head a{font-size:10px;white-space:nowrap}
.quick-news-links{padding:3px 10px}.quick-news-links a{display:grid;grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:24px;padding:4px 0;color:#29382e;border-bottom:1px solid #f2efea;line-height:1.3;text-decoration:none;font-size:11px}
.quick-news-links a:last-child{border:0}.quick-news-links a>span:nth-child(2){display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.quick-news-links time{font-size:9px;color:#938d80}.quick-dot{width:6px;height:6px;border-radius:50%;background:#a64a3f}
.home-city-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:7px}
.home-city-tiles a{position:relative;display:flex;flex-direction:column;min-width:0;border-radius:4px;overflow:hidden;background:#f1efe9;text-decoration:none;color:#fff;min-height:57px}
.home-city-tiles img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.63)}
.home-city-tiles span,.home-city-tiles small{position:relative;z-index:1;text-shadow:0 1px 2px #0006;text-align:center}.home-city-tiles span{margin-top:15px;font-size:11px;font-weight:750}.home-city-tiles small{font-size:8.5px;color:#eee}
.home-service-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:7px}.home-service-tiles a{border:1px solid #f0ebe4;border-radius:4px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4px 1px;min-width:0;font-size:19px;min-height:48px;line-height:1.2;text-decoration:none;color:#275340}.home-service-tiles small{font-size:9px;margin-top:3px;color:#333;white-space:nowrap}
/* Photo-led editorial grid uses actual published titles and category-safe illustrations. */
.home-visual-section{margin:10px 0 14px}.home-visual-section .section-title{margin-bottom:8px!important;padding-bottom:6px!important}.home-visual-section h2{font-size:20px!important;color:#1a4634}
.home-photo-news{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.home-photo-news a{display:block;color:#263931;text-decoration:none;min-width:0}.home-photo-news a:hover strong{text-decoration:underline}
.home-photo-news img{width:100%;height:105px;object-fit:cover;display:block;border-radius:5px;border:1px solid #eae4da}.home-photo-news strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12.5px;line-height:1.48;margin:5px 0;min-height:35px}
.home-photo-news small{display:block;color:#888278;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Compact follow-on news layout and single five-link classified band. */
.city-editions,.home-latest-news,.portal-home-departments,.market-compact{margin:10px 0 13px!important}.section-title{margin-bottom:7px!important;padding-bottom:7px!important}.section-title h2{font-size:19px!important}.city-editions-grid{gap:7px!important}.city-edition-card{padding:8px 10px!important}.city-edition-story{padding:5px 0!important}
.city-news-partner-layout{grid-template-columns:minmax(0,1fr) minmax(0,240px);gap:10px}.city-news-ads{width:240px}.partner-box--sidebar,.partner-box--desktop_sidebar{max-width:240px!important}
.home-five-categories{grid-template-columns:repeat(5,minmax(0,1fr))}.market-compact-bar{padding:6px 10px}.market-inline-search{max-width:330px}
/* News and backend: small sections, generous letter spacing only when useful. */
.article-row{padding:9px 10px!important;gap:9px!important}.article-row h3{font-size:15px!important}.article-row p{font-size:12px!important}.news-query-note{font-size:13px;color:#657168;margin:6px 0}
.route-article .detail{max-width:960px!important;background:#fffefb!important}.route-article .news-rich-body{line-height:1.72!important}.route-article .news-rich-body p{margin-bottom:8px!important}.route-article .news-rich-body h2{margin:12px 0 4px!important}
.partner-box,.partner-box--house{max-width:100%!important;border-color:#e5ded2!important}.partner-box--house .partner-link img{max-height:90px!important;height:auto!important;object-fit:contain!important}.partner-box__head{min-height:20px!important}.partner-box--sidebar .partner-link img{max-height:110px!important}.partner-box--house .partner-box__foot{font-size:10px;line-height:1.3}
/* Staff entry is isolated to /ad888/ and never appears in the public header. */
.staff-auth{background:#faf8f3!important;min-height:100vh}.staff-auth .staff-login{border:1px solid #e5ded2;background:#fffdf9;box-shadow:0 6px 25px #283c3012;border-radius:12px;max-width:440px}.staff-auth .staff-logo img{width:190px!important;height:auto!important;aspect-ratio:650/238;object-fit:contain}.staff-auth .staff-login input{min-height:42px}.staff-auth .staff-login h1{color:#1f4e3e}
@media(max-width:1300px){.wrap{width:calc(100% - 30px)!important}.nav-inner>a:not(.nav-publish){padding:8px 10px!important;font-size:12px!important}.home-lead-composition{grid-template-columns:minmax(0,1.4fr) minmax(0,.97fr) minmax(240px,.94fr)}.home-news-feed--v79>a{grid-template-columns:94px 1fr}.home-news-feed--v79 img{width:94px;height:72px}.home-news-feed--v79 strong{font-size:12.5px!important}}
@media(max-width:1040px){.home-lead-composition{grid-template-columns:minmax(0,1.35fr) minmax(0,.95fr)}.home-editorial-aside{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.home-editorial-aside .home-services{grid-column:1/-1}.nav-inner .city-picker{display:none}.partner-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}.home-photo-news{grid-template-columns:repeat(3,minmax(0,1fr))}.home-photo-news a:nth-child(n+4){display:none}.home-service-tiles a{min-height:43px}}
@media(max-width:680px){.wrap{width:calc(100% - 22px)!important}.header-main{min-height:57px!important;gap:5px!important;flex-wrap:wrap}.brand-official{width:min(48vw,180px)!important}.header-news-search{order:3;flex:1 0 100%;max-width:none;height:37px;margin:2px 0 5px}.header-news-search input{height:37px!important;min-height:37px!important;font-size:16px!important}.header-news-search button{height:37px;min-height:37px;flex-basis:44px}.header-actions{gap:5px!important}.header-actions a{min-height:34px;font-size:12px!important;padding:5px 7px}.nav-inner>a:not(.nav-publish){min-height:36px!important;padding:7px 9px!important;font-size:12px!important}.nav-inner .nav-publish{min-height:33px!important}.main{padding-top:7px!important}.partner-ribbon{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0 0 7px}.partner-cell{height:49px}.partner-cell__mark{font-size:8px;padding:1px 2px}.home-lead-composition{grid-template-columns:1fr;gap:8px}.home-news-lead--v79{height:270px!important}.home-lead-caption{padding:10px 12px 12px}.home-lead-caption h1{font-size:21px!important}.home-lead-caption p{font-size:11px!important}.home-news-feed--v79{grid-template-rows:repeat(4,minmax(0,1fr));height:auto!important;gap:0!important}.home-news-feed--v79>a{grid-template-columns:86px minmax(0,1fr);min-height:71px;padding:4px 0!important}.home-news-feed--v79 img{width:86px;height:58px}.home-news-feed--v79 strong{font-size:12.8px!important;-webkit-line-clamp:2}.home-editorial-aside{display:flex;grid-column:auto;gap:6px}.home-editorial-aside .home-services{grid-column:auto}.quick-news-links a{min-height:25px}.home-photo-news{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.home-photo-news a:nth-child(n+5){display:none}.home-photo-news img{height:98px}.home-photo-news strong{font-size:12px}.home-city-tiles a{min-height:63px}.home-service-tiles small{font-size:9px}.city-news-ads{display:none}.route-article .detail{padding:13px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

/* ===== customer_v800.css ===== */
/* USCHINAREN V8.0 – customer-center is consistent with the warm paper portal. */
:root{--support-cream:#fffdf7;--support-ink:#2d4238;--support-pine:#285748;--support-line:#e5dccc}
.support-widget{position:fixed;z-index:120;right:18px;bottom:22px;max-width:calc(100vw - 24px);font:inherit;color:var(--support-ink)}
.support-widget details{position:relative}
.support-widget summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;min-height:44px;padding:9px 16px;color:#fff;background:var(--support-pine);border:1px solid #21493c;border-radius:28px;font-weight:700;box-shadow:0 5px 22px #172c2130}
.support-widget summary::-webkit-details-marker{display:none}
.support-widget summary span{font-weight:500;font-size:12px;opacity:.93}
.support-widget details[open] summary{border-radius:12px 12px 0 0}
.support-widget-panel{box-sizing:border-box;position:absolute;right:0;bottom:100%;width:min(370px,calc(100vw - 24px));max-height:min(76vh,680px);overflow-y:auto;padding:18px;background:var(--support-cream);border:1px solid var(--support-line);border-radius:15px 15px 0 15px;box-shadow:0 10px 38px #273c342b}
.support-widget-panel h2{font-size:19px;line-height:1.35;margin:0 0 7px;color:var(--support-pine)}
.support-widget-panel p{margin:5px 0 12px;font-size:13px;line-height:1.5}
.support-widget-panel a{color:var(--support-pine);font-weight:650;overflow-wrap:anywhere}
.support-widget-panel form{display:grid;gap:9px}
.support-widget-panel label{display:grid;gap:4px;font-size:13px;font-weight:600}
.support-widget-panel input,.support-widget-panel textarea{box-sizing:border-box;width:100%;min-height:40px;margin:0;padding:7px 10px;border-radius:8px;border:1px solid #cfc8bb;background:#fff;color:#223b31;font:inherit;font-size:14px}
.support-widget-panel textarea{min-height:82px;resize:vertical}
.support-widget-panel button{min-height:42px}
.support-widget-panel small{color:#68766b;font-size:12px;line-height:1.5}
.support-widget .honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.support-center-page{width:min(640px,100%);box-sizing:border-box}
.support-center-page label{display:grid;gap:6px;margin:0 0 14px}
.support-ticket-record{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,320px);gap:18px;align-items:start}
.support-ticket-record .ticket-message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;margin:12px 0}
.support-ticket-record form textarea{box-sizing:border-box;width:100%}
@media(max-width:760px){.support-widget{right:12px;bottom:78px}.support-widget-panel{max-height:min(67vh,560px);padding:13px}.support-widget summary{font-size:13px}.support-ticket-record{grid-template-columns:1fr}}
@media print{.support-widget{display:none!important}}

/* ===== home_v810.css ===== */
/* USCHINAREN V8.1.0 — homepage rebuilt to the approved design.
   Layout: sponsor ribbon / lead+feed+rail / 全美新闻 tabs+photo row /
   城市新闻 tabs+photo cards. Colours follow the design: deep green,
   warm paper background, red editorial accents. */

/* ---------- brand lockup (also appended to style.css) ---------- */
.brand-lockup{display:inline-flex;align-items:center;gap:10px;min-width:0}
.brand-lockup .brand-icon{width:auto!important;height:58px!important;max-width:none;max-height:58px;object-fit:contain;background:transparent!important;flex:none}
.footer-brand .brand-icon{height:46px!important;max-height:46px}
.footer-brand .brand-name{font-size:20px}
.footer-brand .brand-tagline{font-size:12px}
@media (max-width:640px){
 .brand-lockup .brand-icon{height:44px!important;max-height:44px}
}

/* ---------- header search + nav (design: centred pill search, green button) ---------- */
.header-news-search{border:1.5px solid #cfe0d6;border-radius:999px;overflow:hidden;background:#fff}
.header-news-search button{background:#14532d;color:#fff}
.nav-line .nav-inner{overflow-x:auto;scrollbar-width:none}
.nav-line .nav-inner::-webkit-scrollbar{display:none}
.nav-line .nav-inner a{white-space:nowrap}

/* ---------- lead composition ---------- */
.home-lead-composition--v810{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,3fr) 300px;gap:18px;align-items:start}
.home-news-lead--v810{position:relative;display:block;border-radius:14px;overflow:hidden;aspect-ratio:16/9.8;background:#10312b;color:#fff;text-decoration:none}
.home-news-lead--v810 .home-headline-visual{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.home-news-lead--v810 .lead-tag{position:absolute;top:12px;left:12px;z-index:2;background:#c0392b;color:#fff;font-size:12px;font-weight:700;padding:3px 10px;border-radius:4px;letter-spacing:1px}
.home-news-lead--v810 .home-lead-caption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:56px 20px 16px;background:linear-gradient(180deg,transparent,rgba(6,26,21,.78) 55%)}
.home-news-lead--v810 .home-lead-caption h1{font-size:27px;line-height:1.35;font-weight:800;margin:0 0 8px;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-news-lead--v810 .home-lead-caption p{font-size:14px;line-height:1.6;color:#e8efe9;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-news-lead--v810 .home-lead-caption small{font-size:12px;color:#cfdccf}

.home-news-feed--v810{display:flex;flex-direction:column}
.home-news-feed--v810 a{display:flex;gap:10px;padding:10px 2px;border-bottom:1px solid #eee7d8;text-decoration:none;color:inherit}
.home-news-feed--v810 a:first-child{padding-top:2px}
.home-news-feed--v810 img{width:104px;height:76px;object-fit:cover;border-radius:8px;flex:none}
.home-news-feed--v810 .feed-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.home-news-feed--v810 .feed-cat{font-size:12px;font-weight:700;color:#c2512c}
.home-news-feed--v810 strong{font-size:15px;line-height:1.45;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-news-feed--v810 small{font-size:11.5px;color:#84907f}

/* ---------- right rail ---------- */
.home-editorial-aside{display:flex;flex-direction:column;gap:14px}
.home-right-box{border:1px solid #e7e0cf;border-radius:12px;padding:13px 14px;background:#fff}
.right-box-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.right-box-head h2{font-size:17px;font-weight:800;color:#173a35;margin:0}
.right-box-head a{font-size:12px;color:#84907f;text-decoration:none}
.quick-news-links a{display:flex;gap:8px;align-items:flex-start;padding:6px 0;border-bottom:1px dashed #eee7d8;text-decoration:none;color:inherit;font-size:13.5px;line-height:1.5}
.quick-news-links a:last-child{border-bottom:0}
.quick-news-links .quick-dot{width:7px;height:7px;border-radius:50%;background:#d43a2a;flex:none;margin-top:7px}
.quick-news-links time{margin-left:auto;flex:none;font-size:12px;color:#a08b62;font-variant-numeric:tabular-nums}
.home-city-tiles--v810{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.home-city-tiles--v810 a{position:relative;display:block;border-radius:8px;overflow:hidden;text-decoration:none}
.home-city-tiles--v810 img{width:100%;height:64px;object-fit:cover;display:block}
.home-city-tiles--v810 .city-tile-name{position:absolute;left:7px;bottom:15px;color:#fff;font-size:13px;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.65)}
.home-city-tiles--v810 small{position:absolute;left:7px;bottom:2px;color:#ffe9b0;font-size:10px;letter-spacing:1.5px;text-shadow:0 1px 4px rgba(0,0,0,.65)}
.home-service-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.home-service-tiles a{display:flex;flex-direction:column;align-items:center;gap:3px;background:#f3f7f2;border-radius:10px;padding:9px 2px;font-size:19px;text-decoration:none;color:#173a35}
.home-service-tiles a small{font-size:11px;font-weight:600}

/* ---------- 全美新闻 ---------- */
.home-visual-section--v810{margin-top:26px}
.home-news-tabs{display:flex;gap:6px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:none}
.home-news-tabs::-webkit-scrollbar{display:none}
.home-news-tabs a{flex:none;font-size:13px;padding:6px 13px;border-radius:999px;background:#eef3ee;color:#39544c;text-decoration:none}
.home-news-tabs a[aria-current="page"]{background:#14532d;color:#fff;font-weight:700}
.home-photo-news--v810{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.home-photo-news--v810 a{display:block;text-decoration:none;color:inherit}
.home-photo-news--v810 img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:10px;display:block}
.home-photo-news--v810 strong{display:block;font-size:15px;line-height:1.5;font-weight:700;margin-top:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-photo-news--v810 small{display:block;font-size:12px;color:#84907f;line-height:1.6;margin-top:4px}
.home-photo-news--v810 .photo-cat{display:inline-block;background:#fdf0ec;color:#b3402a;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;margin-top:6px}

/* ---------- 城市新闻 ---------- */
.city-editions--v810{margin-top:28px}
.city-tabs--v810{display:flex;gap:6px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:none}
.city-tabs--v810::-webkit-scrollbar{display:none}
.city-tabs--v810 a{flex:none;font-size:13px;padding:6px 13px;border-radius:999px;background:#eef3ee;color:#39544c;text-decoration:none}
.city-editions-grid--v810{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.city-card--v810{border:1px solid #e7e0cf;border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.city-card--v810 .city-card-photo{position:relative;display:block}
.city-card--v810 .city-card-photo img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.city-card--v810 .city-chip{position:absolute;left:10px;bottom:10px;background:rgba(13,43,35,.85);color:#fff;font-size:12px;font-weight:700;padding:3px 10px;border-radius:4px}
.city-card--v810 .city-edition-stories{padding:10px 12px 4px;display:flex;flex-direction:column;gap:8px}
.city-card--v810 .city-edition-story{text-decoration:none;color:inherit}
.city-card--v810 .city-edition-story strong{display:block;font-size:14.5px;line-height:1.5;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.city-card--v810 .city-edition-story span{font-size:11.5px;color:#84907f}
.city-card--v810 .city-card-more{margin-top:auto;padding:8px 12px 12px;font-size:12.5px;color:#14532d;text-decoration:none;font-weight:700}

/* ---------- responsive ---------- */
@media (max-width:1150px){
 .home-lead-composition--v810{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
 .home-editorial-aside{grid-column:1/-1;flex-direction:row}
 .home-editorial-aside .home-right-box{flex:1}
 .home-photo-news--v810,.city-editions-grid--v810{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:760px){
 .home-lead-composition--v810{grid-template-columns:1fr}
 .home-news-lead--v810 .home-lead-caption h1{font-size:21px}
 .home-editorial-aside{flex-direction:column}
 .home-photo-news--v810,.city-editions-grid--v810{grid-template-columns:repeat(2,1fr)}
}

/* V8.2.0 header fix: the legacy .brand-official cap (215px, written for the old
   single-image banner logo) clipped the V8.1 text lockup and let the search
   pill paint over the tagline. The lockup sizes to its content now. */
.brand-official{max-width:none}
.header-news-search{min-width:0}

/* ---------- V8.2.0 alignment pass (owner screenshot review) ----------
   portal_v790.css still carries !important geometry for the retired
   full-banner logo (anchor width clamp 225px, logo aspect 650/238); it
   squeezed the text lockup into 57px and let the tagline paint under the
   search pill. The lockup is content-sized again, header and footer. */
.brand-official{width:auto!important;max-width:none!important}
.brand-official .brand-logo.brand-icon,.brand-lockup .brand-icon{width:auto!important;height:58px!important;max-width:none!important;max-height:58px!important;aspect-ratio:auto!important;object-position:center}
.footer-brand .brand-logo.brand-icon{width:auto!important;height:46px!important;max-height:46px!important;aspect-ratio:auto!important}
@media(max-width:620px){.brand-official .brand-logo.brand-icon{height:44px!important;max-height:44px!important}}
/* Section title rows: the class shipped without any rule and stacked. */
.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:2px 0 12px}
.section-title-row h2{margin:0}
/* Sponsor ribbon: tiles now carry the 1200x340 main creatives; fixing the
   tile to that ratio ends the cover-crop that cut the creatives' footers. */
.partner-cell{height:auto;aspect-ratio:1200/340}
.partner-cell img{object-fit:cover}
/* Lead story: photo gets a real share of the card instead of a 120px strip
   over a mostly empty caption block. */
.home-news-lead--v810{display:flex;flex-direction:column}
.home-news-lead--v810 .home-headline-visual{position:static;flex:0 0 320px;height:320px;max-height:none;width:100%;border-radius:14px 14px 0 0}
.home-news-lead--v810 .home-lead-caption{flex:1;display:flex;flex-direction:column;justify-content:flex-end}
@media(max-width:900px){.home-news-lead--v810 .home-headline-visual{flex-basis:220px;height:220px}}
/* Hot-city tiles: bottom scrim so white names stay readable on bright skies. */
.home-city-tiles--v810 a::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,30,26,0) 42%,rgba(10,30,26,.58));z-index:0}
.home-city-tiles--v810 .city-tile-name,.home-city-tiles--v810 small{z-index:1}

/* Homepage ad slots added in the alignment pass: mid-page and footer
   leaderboards plus the right-rail sidebar slot. */
.partner-box--home_mid{margin:20px 0 4px}
.partner-box--home_footer{margin:24px 0 6px}
.home-editorial-aside .partner-box{margin-top:14px}
/* Hero headline legibility over bright photography. */
.home-news-lead--v810 .home-lead-caption{background:linear-gradient(180deg,rgba(6,26,21,0) 0%,rgba(6,26,21,.52) 34%,rgba(6,26,21,.88) 64%)}
/* Wide homepage slots: the legacy house-ad rule caps creative height at
   145px and shrinks the banner to a small centered card. The two new wide
   contexts run as true leaderboards at the creative's own 1200/340 ratio. */
.partner-box--home_mid,.partner-box--home_footer{max-width:1100px!important;margin-inline:auto!important}
.partner-box--home_mid .partner-link,.partner-box--home_footer .partner-link{display:block}
.partner-box--home_mid .partner-link img,.partner-box--home_footer .partner-link img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:1200/340!important;object-fit:cover!important}

/* ---------- Lead alignment pass (measured, not eyeballed) ----------
   The hero kept its 16/9.8 aspect ratio (436px) while the middle feed
   column stacks to 744px: three columns, three different baselines, and a
   308px hole under the hero. The composition now stretches to one row
   height, the hero fills it (photo grows, caption stays at the foot), and
   feed rows get one fixed height with two-line clamped titles and the
   meta line pinned to the row foot, so the column reads as a ruler. */
.home-lead-composition--v810{align-items:stretch}
.home-news-lead--v810{aspect-ratio:auto;height:100%}
.home-news-lead--v810 .home-headline-visual{flex:1 1 auto;min-height:300px}
.home-news-feed--v810 > a{height:186px;align-items:stretch}
.home-news-feed--v810 > a img{height:100%}
.home-news-feed--v810 .feed-copy{display:flex;flex-direction:column;min-width:0}
.home-news-feed--v810 .feed-copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-news-feed--v810 .feed-copy small{margin-top:auto}
@media(max-width:900px){.home-news-feed--v810 > a{height:auto}.home-news-lead--v810{height:auto}}

/* Feed geometry, self-contained (supersedes the two interim rules above):
   rows share the column height evenly, thumbnails are fixed landscape
   boxes, and the copy column is a fixed-height flex stack. */
.home-lead-composition--v810 .home-news-feed--v810{height:100%}
.home-lead-composition--v810 .home-news-feed--v810 > a{height:auto;flex:1 1 0;min-height:0;flex-direction:row;align-items:center;gap:12px;padding:10px 4px}
.home-lead-composition--v810 .home-news-feed--v810 > a img{width:148px;height:110px;flex:none;object-fit:cover;align-self:center}
.home-lead-composition--v810 .home-news-feed--v810 .feed-copy{flex:1;min-width:0;height:110px;display:flex;flex-direction:column;gap:4px}
@media(max-width:900px){
 .home-lead-composition--v810 .home-news-feed--v810{height:auto}
 .home-lead-composition--v810 .home-news-feed--v810 > a{flex:none}
}

/* ---------- V8.3.0 compact pass (sitewide; this sheet loads last) ----
   Tightens vertical rhythm only: article reading density, section gaps,
   grid gaps and ad-slot margins. No geometry that the alignment passes
   depend on (row heights, column widths, brand lockup) is touched. */
.detail-body{line-height:1.85;margin:16px 0 18px}
.detail .lead{margin:14px 0}
.city-editions--v810{margin-top:18px}
.home-photo-news--v810{gap:12px}
.department-grid{gap:12px}
.section-title-row{margin:2px 0 9px}
.partner-box--home_mid{margin:14px 0 2px}
.partner-box--home_footer{margin:16px 0 4px}
/* In-content sponsored slots inside the article body. */
.news-rich-body .partner-box{margin:18px 0}
.news-rich-body .partner-box--infeed{max-width:760px;margin-inline:auto}

.admin-table{width:100%;border-collapse:collapse;font-size:13px}
.admin-table th,.admin-table td{border:1px solid #e3dccb;padding:6px 8px;text-align:left}

/* ---------- V8.4.0 palette & partner-row upgrade ----------
   Premium editorial palette: deeper ink-pine, bronze-champagne gold,
   one unified warm paper, refined vermillion. Driven through the design
   tokens so every component that consumes them upgrades together. */
:root{
 --pine:#0e2f28;--pine2:#1d4a3e;--pine3:#09231d;
 --gold:#b08d46;--cream:#FAFAF8;--portal-paper:#FAFAF8;
 --ink:#1a2320;--muted:#5c6a64;--line:#e4e1d6;--soft:#FFFFFF;
 --red:#9c3324;--focus-ring:#14594a;
 --shadow:0 1px 2px rgba(16,42,34,.05),0 14px 34px rgba(16,42,34,.06);
}
.btn{border-radius:8px;letter-spacing:.01em}
.footer{background:#FFFFFF;border-top:2px solid var(--pine)}
/* Ad shells: clean white with a hairline and a whisper of shadow,
   no more beige band. */
.partner-box{background:#fff!important;border:1px solid #e4e1d6!important;box-shadow:0 1px 2px rgba(16,42,34,.04),0 10px 28px rgba(16,42,34,.05)}
.partner-box__head{background:#FAFAF8!important;color:#7d7462!important}
/* Rectangular multi-block strip for the wide editorial slots. */
.partner-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px}
.partner-cell{position:relative;display:block;border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:#0e2f28;text-decoration:none}
.partner-cell img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.partner-cell:hover img{transform:scale(1.04)}
.partner-cell::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,35,29,0) 42%,rgba(9,35,29,.55) 74%,rgba(9,35,29,.86));pointer-events:none}
.partner-cell__copy{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:12px 14px;display:flex;flex-direction:column;gap:3px}
.partner-cell__brand{font-size:10px;font-weight:700;letter-spacing:.14em;color:#e7cf9a}
.partner-cell__copy strong{color:#fff;font-size:15.5px;line-height:1.45;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.partner-box--strip .partner-box__foot{padding:0 12px 10px}
@media(max-width:760px){
 .partner-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px}
 .partner-cell{flex:0 0 74%;scroll-snap-align:start}
}

/* ---------- V8.5.0 wide pass (template edition) ----------
   Full-bleed wide layout, native 2+4 ad strip, city feature+list,
   wide article rail. Everything is additive overrides in this last
   stylesheet; narrow viewports keep the previous layout. */
.wrap{width:calc(100% - 48px);max-width:1720px}
.partner-box--home_mid,.partner-box--home_footer{max-width:none!important}
/* Ad strip: native news-card tiles, 2 wide + up to 4 narrow. */
.partner-row{display:grid;grid-template-columns:1.9fr 1.9fr 1fr 1fr 1fr 1fr;gap:12px;padding:12px}
.partner-row--n6{grid-template-columns:1.9fr 1.9fr 1fr 1fr 1fr 1fr}
.partner-row--n5{grid-template-columns:1.9fr 1.9fr 1fr 1fr 1fr}
.partner-row--n4{grid-template-columns:1.9fr 1.9fr 1fr 1fr}
.partner-row--n3{grid-template-columns:1fr 1fr 1fr}
.partner-row--n2{grid-template-columns:1fr 1fr}
.partner-cell{position:static;aspect-ratio:auto;background:#fff;border:1px solid #e9e6da;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none}
.partner-cell::after{display:none}
.partner-cell__img{display:block;height:118px;overflow:hidden;flex:none}
.partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.partner-cell:hover .partner-cell__img img{transform:scale(1.04)}
.partner-cell__copy{position:static;padding:9px 11px 10px;gap:4px;background:#fff;display:flex;flex-direction:column}
.partner-cell__brand{color:#8f5f24;font-size:10px;font-weight:700;letter-spacing:.1em}
.partner-cell__copy strong{color:var(--ink);font-size:13.5px;line-height:1.5;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.partner-cell__meta{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:2px;font-size:10.5px;color:#8a938c;flex-wrap:wrap}
.partner-cell__label{color:var(--red);font-weight:700;border:1px solid #e5c9c2;border-radius:4px;padding:0 4px;white-space:nowrap}
@media(max-width:760px){.partner-row{grid-template-columns:1fr 1fr!important;display:grid;overflow:visible}.partner-cell{flex:none}}
/* Homepage photo news: six across on wide screens. */
@media(min-width:1200px){.home-photo-news--v810{grid-template-columns:repeat(6,1fr)}}
/* Listing grids: four across on wide screens. */
@media(min-width:1280px){.listing-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* City news: feature + text list. */
.city-feature-list{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.55fr);gap:22px;align-items:start}
.city-feature-photo{position:relative;display:block;border-radius:12px;overflow:hidden}
.city-feature-photo img{width:100%;aspect-ratio:16/9.5;object-fit:cover;display:block}
.city-feature-story{display:flex;flex-direction:column;gap:2px;padding:10px 2px;border-bottom:1px solid var(--line);text-decoration:none}
.city-feature-story strong{font-size:16.5px;line-height:1.5;color:var(--ink)}
.city-feature-story span{font-size:12px;color:var(--muted)}
@media(max-width:900px){.city-feature-list{grid-template-columns:1fr}}
/* Article page: body + right rail on wide screens. */
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:26px;align-items:start;max-width:1240px;margin:0 auto}
.article-main .detail{max-width:none;margin:0}
.article-rail{position:sticky;top:14px;display:flex;flex-direction:column;gap:16px;min-width:0}
.article-rail .partner-box{margin:0}
.rail-hot{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.rail-hot h2{font-size:16px;margin:0 0 4px;color:var(--pine)}
.rail-hot a{display:flex;flex-direction:column;gap:1px;padding:8px 0;border-top:1px solid var(--line);text-decoration:none}
.rail-hot a strong{font-size:13.5px;line-height:1.5;color:var(--ink);font-weight:600}
.rail-hot a small{font-size:11px;color:var(--muted)}
@media(max-width:1100px){.article-layout{grid-template-columns:1fr;max-width:900px}.article-rail{position:static}}

/* ---------- V8.6.1 official logo (single-image lockup) ----------
   !important throughout: five eras of .brand-logo rules compete in this
   cascade, and the end-of-chain slot is what makes these win. */
.brand-lockup .brand-logo-img{width:auto!important;height:64px!important;max-width:none!important;max-height:64px!important;aspect-ratio:auto!important;display:block}
.footer-brand .brand-logo-img{height:56px!important;max-height:56px!important}
@media(max-width:760px){.brand-lockup .brand-logo-img{height:42px!important;max-height:42px!important}.footer-brand .brand-logo-img{height:44px!important;max-height:44px!important}}

/* ---------- V8.7.0 experience pass ----------
   Type & color detailing, reader tools, print, console polish. */
::selection{background:var(--pine);color:#FAFAF8}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}
time,.story-meta,.partner-cell__meta,.rail-hot small,.city-feature-story span{font-variant-numeric:tabular-nums}
.detail a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#c9a86a}
.article-row,.listing-card{transition:transform .18s ease,box-shadow .18s ease}
.article-row:hover,.listing-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(14,47,40,.10)}
/* Reader tools */
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:1200;background:transparent}
.reading-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--pine2),var(--gold))}
.article-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:9px 12px;margin:0 0 16px;background:var(--soft);border:1px solid var(--line);border-radius:10px;font-size:13px}
.article-tools .tools-label{color:var(--muted);font-weight:600}
.article-tools button,.article-tools .tools-share{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:3px 11px;font-size:12.5px;cursor:pointer;text-decoration:none;line-height:1.7}
.article-tools button.on{background:var(--pine);border-color:var(--pine);color:#fff;font-weight:700}
.article-tools .tools-sep{width:1px;height:16px;background:var(--line);margin:0 4px}
.detail[data-font="s"] p,.detail[data-font="s"] li{font-size:15.5px}
.detail[data-font="l"] p,.detail[data-font="l"] li{font-size:18.5px;line-height:1.92}
.detail[data-font="xl"] p,.detail[data-font="xl"] li{font-size:20px;line-height:1.95}
.back-to-top{position:fixed;right:18px;bottom:86px;z-index:1100;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--pine);color:#fff;font-size:18px;cursor:pointer;box-shadow:0 8px 20px rgba(14,47,40,.25)}
@media(prefers-reduced-motion:reduce){.article-row,.listing-card{transition:none}.article-row:hover,.listing-card:hover{transform:none}}
/* Print: clean article sheet */
@media print{
 .site-header,.nav-line,.footer,.mobile-nav,.support-widget,.article-tools,.article-rail,.reading-progress,.back-to-top,.partner-box,.detail_partner,.channel-guides{display:none!important}
 .article-layout{display:block;max-width:none}
 .detail{font-size:12pt;color:#000}
 body{background:#fff}
}
/* Admin console polish (staff pages only) */
body.staff-console .console-home .brand-logo-img{height:38px!important;max-height:38px!important;width:auto!important}
body.staff-console .stat{border-left:3px solid var(--gold);background:#fff;border-radius:10px}
body.staff-console .admin-sidebar a.active{background:var(--pine);color:#fff;border-radius:8px}
body.staff-console .admin-content table tbody tr:hover{background:#FAFAF8}
.health-card{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff;margin:14px 0}
.health-card h2{margin:0 0 8px;font-size:17px;color:var(--pine)}
.health-card .ops-grid{margin:8px 0}
.quick-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 4px}
.quick-actions a{border:1px solid var(--pine);color:var(--pine);border-radius:999px;padding:5px 14px;font-size:13px;text-decoration:none;font-weight:600}
.quick-actions a:hover{background:var(--pine);color:#fff}

/* ---------- V8.8.0 article page grand pass ---------- */
.detail h1{font-size:clamp(28px,3.2vw,40px);line-height:1.3;letter-spacing:.01em;color:var(--pine3)}
.detail .lead{font-size:17px;line-height:1.85}
.detail .meta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:13px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 0;margin:14px 0 18px}
.detail .meta strong{color:var(--pine);font-weight:700}
.detail-body h2{font-size:21px;color:var(--pine);margin:26px 0 10px;padding-left:12px;border-left:4px solid var(--gold);line-height:1.45}
.detail figure{margin:6px 0 18px}
.detail figure img{border-radius:12px;width:100%;height:auto}
.detail figcaption{color:var(--muted);font-size:12.5px;margin-top:7px;text-align:center}
.detail.has-dropcap .detail-body>p:first-of-type::first-letter{font-size:52px;line-height:1;font-weight:700;color:var(--pine);float:left;padding:4px 10px 0 0;font-family:Georgia,"Songti SC",serif}
/* In-article sponsor image+text card */
.partner-box--article-card{margin:22px 0}
.partner-card{display:flex;gap:0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;box-shadow:0 6px 18px rgba(14,47,40,.06)}
.partner-card:hover{box-shadow:0 10px 26px rgba(14,47,40,.12)}
.partner-card__img{flex:0 0 38%;display:block}
.partner-card__img img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3}
.partner-card__copy{flex:1;display:flex;flex-direction:column;gap:7px;padding:16px 18px;min-width:0}
.partner-card__brand{color:var(--gold);font-size:11.5px;font-weight:700;letter-spacing:.08em}
.partner-card__copy strong{color:var(--pine3);font-size:19px;line-height:1.45}
.partner-card__desc{color:var(--muted);font-size:13.5px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.partner-card__cta{margin-top:auto;align-self:flex-start;background:var(--pine);color:#fff;font-size:12.5px;font-weight:700;border-radius:999px;padding:5px 14px}
@media(max-width:640px){.partner-card{flex-direction:column}.partner-card__img{flex:none}.partner-card__img img{aspect-ratio:16/9}}
/* End-of-article related reading */
.article-related{margin:26px 0 6px}
.article-related h2{font-size:20px;color:var(--pine);border-bottom:2px solid var(--gold);padding-bottom:8px;margin:0 0 14px}
.article-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.related-card{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none}
.related-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.related-card strong{display:block;padding:10px 12px 2px;color:var(--ink);font-size:14.5px;line-height:1.55}
.related-card small{display:block;padding:0 12px 10px;color:var(--muted)}
@media(max-width:760px){.article-related-grid{grid-template-columns:1fr 1fr}}

/* V8.8.0 fix: sponsor card links must not inherit the body-link underline. */
.detail a.partner-card,.detail a.partner-card *{text-decoration:none}

/* ---------- V8.8.1 dual sponsor strip ---------- */
.partner-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.partner-card--compact .partner-card__img{flex:0 0 34%}
.partner-card--compact .partner-card__img img{aspect-ratio:1/1}
.partner-card--compact .partner-card__copy{padding:10px 12px;gap:4px}
.partner-card--compact .partner-card__copy strong{font-size:15.5px;line-height:1.45}
.partner-card--compact .partner-card__desc{font-size:12px;line-height:1.55;-webkit-line-clamp:2}
.partner-card--compact .partner-card__cta{padding:3px 10px;font-size:11.5px}
.detail a.partner-card--compact{text-decoration:none}
@media(max-width:680px){.partner-cards{grid-template-columns:1fr}}

/* ---------- V8.8.2 long-and-thin sponsor cards ----------
   Per owner direction: landscape (long) photos, slimmer strip. */
.partner-card--compact .partner-card__img{flex:0 0 30%}
.partner-card--compact .partner-card__img img{aspect-ratio:16/10;height:100%}
.partner-card--compact .partner-card__copy{padding:8px 12px;gap:3px}
.partner-card--compact .partner-card__copy strong{font-size:15px}
.partner-card--compact .partner-card__desc{-webkit-line-clamp:1}
.partner-box--article-pair{margin:16px 0}

/* ---------- V8.9.0 premium pass: no stacked/clashing text, calmer luxury ----------
   1) Anti-stacking kit: every card title can shrink, wrap safely and clamp;
      ad tile copy gets its own scrim band and a fixed rhythm so the meta row
      lines up across tiles no matter how long the title is. */
.partner-cell__copy{height:100%;justify-content:flex-end;gap:5px;padding:12px 14px 11px;background:linear-gradient(180deg,rgba(9,35,29,0) 34%,rgba(9,35,29,.62) 68%,rgba(9,35,29,.93));min-width:0}
.partner-cell__copy>*{min-width:0;overflow-wrap:anywhere}
.partner-cell__brand{letter-spacing:.09em}
.partner-cell .partner-cell__meta{margin-top:2px;white-space:nowrap}
.partner-cell--wide .partner-cell__copy strong{min-height:calc(1.45em * 2)}
.partner-cell:not(.partner-cell--wide) .partner-cell__copy strong{font-size:13px;line-height:1.5;min-height:calc(1.5em * 2)}
.article-row strong,.feed-copy strong,.related-card strong,.city-feature-story strong,.home-photo-news strong{overflow-wrap:anywhere;min-width:0}
.article-row,.feed-row,.listing-card,.related-card{min-width:0}
.partner-cell img,.related-card img,.article-row img{display:block}
/* 2) Premium detailing: serif display titles, hairline borders, soft warm
      shadows, more air between sections, gold used only as an accent rule. */
.section-title-row h2,.article-related h2,.rail-hot h2,.home-right-box .right-box-head,.detail h1{font-family:Georgia,"Songti SC","STSong","SimSun",serif;letter-spacing:.015em}
.section-title-row{margin-bottom:16px}
.section-title-row h2{font-size:23px}
.home-visual-section,.city-editions,.partner-box--home_mid,.partner-box--section_footer{margin-top:40px}
.article-row,.listing-card,.related-card,.home-right-box,.rail-hot{border-color:#e7e2d2;box-shadow:0 1px 2px rgba(26,35,32,.04)}
.article-row:hover,.listing-card:hover{box-shadow:0 10px 26px rgba(26,35,32,.09)}
.reading-progress span{background:var(--gold)}
.btn,.button,.quick-chip{box-shadow:none}
.photo-cat,.lead-tag{letter-spacing:.06em}
.partner-cell.partner-cell{aspect-ratio:3/1;height:auto;border:none}
.partner-cell .partner-cell__copy strong{font-size:14.5px;min-height:0}
@media(max-width:760px){.partner-cell.partner-cell{aspect-ratio:4/3}.partner-cell .partner-cell__copy{padding:9px 10px}.partner-cell .partner-cell__copy strong{font-size:12.5px}}
/* V8.9.0 ribbon self-contained overlay recipe (tile rules elsewhere in the
   cascade resolve to the static card generation outside .partner-row). */
.partner-ribbon .partner-cell.partner-cell{position:relative;display:block;aspect-ratio:3/1;height:auto;overflow:hidden;border-radius:10px;background:var(--pine3)}
.partner-ribbon .partner-cell__img{position:absolute;inset:0;height:auto;flex:none}
.partner-ribbon .partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block}
.partner-ribbon .partner-cell__copy{position:absolute;left:0;right:0;bottom:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:10px 12px;background:linear-gradient(180deg,rgba(9,35,29,0) 30%,rgba(9,35,29,.66) 66%,rgba(9,35,29,.94));color:#fff;min-width:0}
.partner-ribbon .partner-cell__brand{color:#e9cd8a;font-size:10.5px;font-weight:700;letter-spacing:.09em}
.partner-ribbon .partner-cell__copy strong{color:#fff;font-size:14.5px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.partner-ribbon .partner-cell__meta{color:rgba(255,255,255,.85);white-space:nowrap}
@media(max-width:760px){.partner-ribbon .partner-cell.partner-cell{aspect-ratio:4/3}.partner-ribbon .partner-cell__copy strong{font-size:12.5px}}

/* ---------- V9.0.0 palette migration: vermilion editorial ----------
   Owner directive: no black/blue/green "AI colors" as the primary tone.
   Primary is now Chinese vermilion on warm rice paper with antique gold;
   every var-driven surface (buttons, nav, frames, scrims) follows. */
:root{--pine:#8f2d26;--pine2:#a63d31;--pine3:#571c16;--gold:#b08d46;--cream:#faf6ed;--portal-paper:#faf6ed;--ink:#2a2521;--muted:#6e6259;--line:#e7dfce;--soft:#f3eddf;--red:#c23b2a;--focus-ring:#8f2d26}
.partner-cell{background:var(--pine3)}
/* Warm photographic scrims replace the green-black ones. */
.home-lead-caption{background:linear-gradient(180deg,rgba(38,28,22,0) 24%,rgba(38,28,22,.52) 60%,rgba(28,19,15,.93))}
.partner-cell__copy{background:linear-gradient(180deg,rgba(38,28,22,0) 34%,rgba(38,28,22,.58) 68%,rgba(28,19,15,.93))}
.partner-ribbon .partner-cell__copy{background:linear-gradient(180deg,rgba(38,28,22,0) 30%,rgba(38,28,22,.6) 66%,rgba(28,19,15,.94))}
/* Audit fix: business/listing card copy was clipped mid-line (31px box for
   41px of text). Clamp on a line boundary instead; meta pins to the bottom. */
.item-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.6;max-height:calc(1.6em * 2);flex:none}
.item-card .item-meta{margin-top:auto}
/* V9.0.0 stragglers: legacy hardcoded greens on header chrome. */
.header-news-search button{background:var(--pine)}
.header-actions a.link-pill{background:var(--pine)!important;border-color:var(--pine)!important}
.home-news-tabs a[aria-current="page"]{background:var(--pine)}
.home-news-lead--v810{background:transparent}/* V10.57.0: headline card drops the dark red backdrop (white-site rule) */
.partner-box__cta:hover{background:var(--pine2)}
body.staff-console .admin-sidebar{background:#571c16!important}

/* ---------- V9.1.0 lead stack: news on top, ad below ---------- */
.home-lead-stack{display:flex;flex-direction:column;gap:14px;min-width:0}
.home-lead-stack .home-news-lead--v810{aspect-ratio:16/8.4}
.home-lead-spot .partner-box,.home-lead-spot .partner-box--article-card{margin:0}
@media(max-width:1100px){.home-lead-stack .home-news-lead--v810{aspect-ratio:16/9.6}}

/* ---------- V9.2.0: bilingual headings, forum boards, member hero ---------- */
.heading-en{margin:0 0 6px;font-size:11px;font-weight:800;letter-spacing:.32em;color:var(--gold)}
.forum-boards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 22px}
.forum-board{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--ink)}
.forum-board strong{display:block;font-size:15px}
.forum-board small{color:var(--muted);font-size:12px}
.forum-board:hover{border-color:var(--gold)}
.forum-board.on{border-color:var(--pine);box-shadow:inset 0 0 0 1px var(--pine)}
.forum-board.on strong{color:var(--pine)}
.member-hero{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin:0 0 22px}
.member-seal{width:58px;height:58px;border-radius:14px;background:var(--pine);color:#fff;display:grid;place-items:center;font-size:26px;font-weight:800;font-family:Georgia,"Songti SC",serif}
.member-hero-copy h2{margin:0;font-size:21px}
.member-hero-copy p{margin:3px 0 0;color:var(--muted);font-size:13px}
.member-stats{display:flex;gap:8px 26px;flex-wrap:wrap;margin-left:auto}
.member-stats span{display:grid;text-align:center;color:var(--muted);font-size:12px}
.member-stats strong{font-size:20px;color:var(--ink)}
.member-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:900px){.forum-boards{grid-template-columns:repeat(2,minmax(0,1fr))}.member-stats{margin-left:0}}

/* ---------- V9.3.0 life hub ---------- */
.life-banner{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;background:var(--pine);color:#fff;border-radius:14px;padding:16px 20px;margin:0 0 20px;text-decoration:none}
.life-banner strong{font-size:18px}
.life-banner span{opacity:.85;font-size:13px}
.life-hotlines{margin:0 0 30px}
.life-hotline-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0 8px}
.life-hotline{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:grid;gap:2px}
.life-hotline strong{color:var(--pine);font-size:17px}
.life-hotline span{font-size:13px;font-weight:700}
.life-hotline small{color:var(--muted)}
.life-section{margin:0 0 30px}
.life-section .section-title{align-items:baseline}
.life-en{font-size:11px;font-weight:800;letter-spacing:.24em;color:var(--gold)}
.life-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.life-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 16px}
.life-card h3{margin:0 0 6px;font-size:16px}
.life-card p{margin:0 0 8px;color:var(--muted);font-size:13.5px;line-height:1.65}
.life-card small{color:var(--pine);font-weight:700}
@media(max-width:1100px){.life-hotline-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.life-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.life-hotline-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.life-grid{grid-template-columns:1fr}}

.dm-unread{background:var(--red);color:#fff;border-radius:999px;padding:1px 8px;font-size:11px}
.dm-thread{display:grid;gap:10px;margin:0 0 18px}
.dm-bubble{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 14px;max-width:78%}
.dm-bubble p{margin:0 0 4px;line-height:1.65}
.dm-bubble small{color:var(--muted)}
.dm-bubble.mine{margin-left:auto;background:#fdf3f2;border-color:#ecd9d4}

/* ---------- V9.3.0 module polish: one card language ---------- */
.life-card,.forum-board,.life-hotline,.dm-bubble,.member-hero{box-shadow:0 1px 2px rgba(38,28,22,.04)}
.life-card,.forum-board{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.life-card:hover,.forum-board:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(38,28,22,.08)}
.life-hotline{border-top:2px solid var(--gold)}
.life-hotline strong{font-family:Georgia,"Songti SC",serif;letter-spacing:.02em}
.forum-board.on{border-top:2px solid var(--gold)}
.member-seal{box-shadow:inset 0 0 0 2px rgba(255,255,255,.25)}

/* ---------- V9.4.0 photographic grade & covers ---------- */
.partner-cell img,.partner-card__img img,.related-card img,.article-row-thumb,.home-headline-visual,.event-cover,.life-photo-band img{filter:saturate(.97) contrast(1.02)}
.event-card{padding-top:14px}
.event-cover{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:9px;margin:0 0 10px}
.life-photo-band{margin:0 0 26px;border-radius:16px;overflow:hidden}
.life-photo-band img{width:100%;height:230px;object-fit:cover;display:block}

/* ---------- V9.5.0 editorial type & rhythm ---------- */
.article-row h3,.home-article-row h3,.home-city-feature h3{font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;letter-spacing:0}
@media(min-width:900px){.article-row{grid-template-columns:176px 1fr}}

/* ---------- V9.6.0 newspaper flat: kill the template look ---------- */
:root{--ink:#1F1B17;--card:#FFFFFF}
body{background:#FAFAF8}
.item-card,.guide-card,.biz-card,.life-card,.forum-board,.related-card,.home-rank,.auth-card,.member-hero,.life-hotline{border-radius:5px!important;box-shadow:none!important;border:1px solid var(--line)}
.item-card:hover,.guide-card:hover,.biz-card:hover,.life-card:hover,.forum-board:hover{transform:none;box-shadow:none!important;border-color:#CBBFA4}
.article-row{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:16px 2px}
.news-tag,.item-kind{border-radius:2px}
.btn{border-radius:5px}
.site-header{border-bottom:4px double #1F1B17}
.section-title{border-top:3px solid #1F1B17;padding-top:12px}
.section-heading h1,.section-title h2{color:#1F1B17}
.partner-cell,.partner-ribbon__cell{border-radius:5px}
input,select,textarea{border-radius:5px}

/* ---------- V9.7.0 palette: persimmon dye ---------- */
:root{--pine:#B0491F;--pine2:#C05A28;--pine3:#6E2C10;--gold:#8a6828;--cream:#FFFFFF;--portal-paper:#FFFFFF;--ink:#292019;--muted:#6E5F4E;--line:#E4D9C3;--soft:#F1EADB;--red:#B3402A}
body{background:#FFFFFF}
body.staff-console .admin-sidebar{background:#4A2410!important}

/* ---------- V9.8.0 search, community home rails, video posters ---------- */
.search-big{display:flex;gap:10px;margin:6px 0 18px}
.search-big input[type=search]{flex:1;padding:13px 16px;border:1px solid var(--line);background:#fff;font-size:16px}
.home-community{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;margin-top:8px}
.biz-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.biz-mini-grid--search{grid-template-columns:repeat(3,1fr)}
.biz-mini{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line);border-radius:5px;padding:12px 14px;color:inherit}
.biz-mini strong{font-size:15px}
.biz-mini small{color:var(--muted)}
.biz-mini .item-kind{align-self:flex-start}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.video-card{display:flex;flex-direction:column;gap:7px;color:inherit}
.video-poster{position:relative;display:block;border-radius:5px;overflow:hidden}
.video-poster img{width:100%;height:auto;display:block}
.video-badge{position:absolute;left:10px;bottom:10px;background:rgba(41,32,25,.85);color:#fff;font-size:12px;padding:3px 9px;border-radius:2px;letter-spacing:.06em}
.video-card strong{font-family:var(--serif);font-size:17px;line-height:1.45}
.video-card small{color:var(--muted)}
@media (max-width:900px){.home-community{grid-template-columns:1fr}.video-grid{grid-template-columns:1fr 1fr}.biz-mini-grid--search{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.video-grid{grid-template-columns:1fr}.biz-mini-grid{grid-template-columns:1fr}}

/* ---------- V9.9.0 footer channels ---------- */
.footer-grid{grid-template-columns:1.5fr 1fr 1fr}
@media (max-width:760px){.footer-grid{grid-template-columns:1fr}}

.footer-grid>div:nth-child(2) a{display:block;margin:5px 0}

/* ---------- V10.1.0 chips + html sitemap ---------- */
.chips{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0 22px}
.chips a{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 15px;color:var(--ink);font-size:14px}
.chips a:hover{border-color:var(--pine);color:var(--pine)}
.sitemap-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.sitemap-cols h2{font-family:var(--serif);font-size:20px;border-top:3px solid var(--ink);padding-top:10px}
.sitemap-cols a{display:block;margin:6px 0;color:var(--ink)}
@media (max-width:760px){.sitemap-cols{grid-template-columns:1fr 1fr}}
/* ---------- V10.2.0 site-wide UI unification ----------
   Audit basis: 12+ competing border-radius values, 82 box-shadows, legacy
   green label colors, and gold eyebrow text at 3.82:1 contrast. This block
   aligns the legacy surfaces with the editorial system (V9.6-V9.7). */
:root{--gold-text:#7D6125}
.heading-en,.eyebrow{color:var(--gold-text)}
.item-card,.biz-card,.life-card,.forum-board,.related-card,.panel,.auth-card,.thread-row{border-radius:5px}
.item-card,.biz-card,.life-card,.forum-board,.panel{box-shadow:none}
.item-card:hover,.biz-card:hover,.life-card:hover{transform:none;border-color:var(--pine)}
.form-panel label,.panel label,.member-filters label{color:var(--ink)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--pine);outline-offset:2px}
::selection{background:#F0DCC8}
/* article prev / next pager */
.article-pager{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0 6px}
.pager-card{display:block;background:#fff;border:1px solid var(--line);border-radius:5px;padding:14px 16px;color:var(--ink)}
.pager-card small{display:block;color:var(--pine);font-weight:700;margin-bottom:5px}
.pager-card strong{font-family:var(--serif);font-size:16.5px;line-height:1.5}
.pager-next{text-align:right}
@media (max-width:640px){.article-pager{grid-template-columns:1fr}}
@media print{
 .site-header,.nav-line,.footer,.support-widget,.mobile-nav,.article-rail,.article-tools,.skip-link{display:none!important}
 body{background:#fff}.article-layout{display:block}.detail-body{font-size:12pt}
}
.item-card{min-height:0;padding:15px}
.section-heading{margin:20px 0 12px}
.rail-latest{margin-top:18px}
.more-list{margin-top:26px}
.more-list h2{font-family:var(--serif);font-size:21px;border-top:3px solid var(--ink);padding-top:12px}
.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 26px}
.more-grid a{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.more-grid a strong{font-weight:600;font-size:15px}
.more-grid a small{color:var(--muted);white-space:nowrap}
@media (max-width:760px){.more-grid{grid-template-columns:1fr}}
.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:8px 0 20px}
.service-card{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:5px;padding:15px 16px;color:var(--ink)}
.service-card strong{font-family:var(--serif);font-size:17px}
.service-card p{margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.65}
@media (max-width:760px){.service-cards{grid-template-columns:1fr}}
.faq-list{margin:6px 0 4px}
.faq-list dt{font-weight:700;margin-top:14px}
.faq-list dd{margin:4px 0 0;color:var(--muted);line-height:1.7}

.detail a.service-card{text-decoration:none}

/* ---------- V10.6.0 detail-page more blocks ---------- */
.detail-more{margin:26px 0 6px}
.detail-more>h2{font-family:var(--serif);font-size:21px;border-top:3px solid var(--ink);padding-top:12px;margin-bottom:14px}

/* ---------- V10.7.0 mobile pass (390px audit) ---------- */
@media (max-width:760px){
 .partner-ribbon{grid-template-columns:1fr}
 .partner-cell .partner-cell__copy strong{font-size:16px}
 .detail{padding:20px 16px}
 .more-grid a{flex-wrap:wrap}
 .pager-card strong{font-size:15.5px}
 .header-news-search input{min-width:0}
}
/* V10.11.0 fill: image slots never render as white voids while loading */
.news-visual,.life-photo-band,.video-poster,.related-card,.city-tile,.event-card{background:#EFEEEB}
.news-visual img,.life-photo-band img,.video-poster img,.related-card img{background:#EFEEEB}
.item-cover,.event-cover{background:#EFEEEB}
.partner-link img{background:#F1F0EC}
.partner-box--house{background:#FAFAF8}
/* V10.12.0 ad geometry: sponsor tiles are low wide rectangles, never tall blocks */
.partner-box--strip .partner-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.partner-box--strip .partner-cell{flex-direction:row;min-height:106px}
.partner-box--strip .partner-cell__img{width:36%;height:auto;min-height:106px;flex:none}
.partner-box--strip .partner-cell__img img{width:100%;height:100%;object-fit:cover}
.partner-box--strip .partner-cell__copy{flex:1;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:10px 12px}
.partner-box--strip .partner-cell__copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.partner-ribbon .partner-cell.partner-cell{aspect-ratio:16/9}
/* V10.12.0 cities directory photo banner + search chips */
.department-photo{display:block;margin:-16px -16px 0;height:118px;overflow:hidden;border-radius:10px 10px 0 0;background:#EFEEEB}
.department-photo img{width:100%;height:100%;object-fit:cover;display:block}
.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 18px}
.chip-row .chip{border:1px solid var(--line);background:var(--white);border-radius:999px;padding:5px 13px;font-size:13px}
/* V10.13.0 creative paint guarantee: same-URL background under every ad photo */
.partner-link,.partner-cell__img,.partner-card__img{background-size:cover;background-position:center;background-repeat:no-repeat}
/* V10.14.0 city news: wide feature card + uniform photo mini-card grid */
.city-feature-wide{display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:0;background:var(--white);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:12px}
.city-feature-wide-photo{position:relative;display:block;min-height:190px}
.city-feature-wide-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.city-feature-wide-photo .city-chip,.city-mini-photo .city-chip{position:absolute;background:rgba(20,32,28,.85);color:#fff;font-size:12px;font-weight:700;padding:3px 10px;border-radius:4px;line-height:1.5}
.city-feature-wide-photo .city-chip{left:10px;top:10px}
.city-feature-wide-body{display:flex;flex-direction:column;gap:8px;padding:16px 18px;min-width:0}
.city-feature-wide-lead strong{display:block;font-size:20px;line-height:1.45;color:var(--ink)}
.city-feature-wide-lead span{display:block;margin-top:6px;font-size:13.5px;line-height:1.65;color:#6d675c}
.city-feature-wide-lead small{display:block;margin-top:6px;font-size:11.5px;color:#8a8578}
.city-feature-wide-second{font-size:13.5px;color:#385e4c;border-top:1px solid #f0ebe2;padding-top:8px}
.city-feature-wide-body .city-card-more{margin-top:auto}
.city-edition-grid2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.city-mini-card{background:var(--white);border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.city-mini-photo{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#EFEEEB}
.city-mini-photo img{width:100%;height:100%;object-fit:cover;display:block}
.city-mini-photo .city-chip{position:absolute;left:8px;top:8px}
.city-mini-body{display:flex;flex-direction:column;gap:5px;padding:10px 12px 12px;flex:1}
.city-mini-lead strong{font-size:14.5px;line-height:1.5;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.city-mini-body small{font-size:11px;color:#8a8578}
.city-mini-second{font-size:12.5px;color:#385e4c;border-top:1px solid #f0ebe2;padding-top:6px;margin-top:auto;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:1100px){.city-edition-grid2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){.city-feature-wide{grid-template-columns:1fr}.city-feature-wide-photo{min-height:170px}.city-edition-grid2{grid-template-columns:1fr}}
/* V10.16.0 wide banner cover: infeed/toprow images fill the frame */
.partner-box--infeed .partner-link img,.partner-box--toprow .partner-link img{width:100%!important;height:120px!important;max-height:120px!important;object-fit:cover!important;aspect-ratio:auto!important}
/* V10.18.0: user center profile grid — single panel spans full width */
.profile-grid>.panel:only-child{grid-column:1/-1}

/* ===== V10.20 全站审查修复：后台可读性 / 窄屏侧栏 / 聊天按钮 / 城市图兜底 ===== */
body.staff-console .admin-sidebar{color:#EBD9B4}
body.staff-console .admin-sidebar a{color:#F3E7CF!important}
body.staff-console .admin-sidebar a:hover{background:rgba(244,239,231,.16);color:#FFFFFF!important}
body.staff-console .admin-sidebar a.active{color:#FFFFFF!important}
body.staff-console .console-topbar{color:#DCE9DE}
body.staff-console .console-links a{color:#A9D6BE!important}
body.staff-console .support-widget{display:none!important}
.chat-send button{white-space:nowrap;flex:0 0 auto;padding:0 22px}
.city-mini-photo{background-size:cover;background-position:center;background-color:#D9C8A6}
@media (max-width:920px){
 body.staff-console .admin-layout{grid-template-columns:1fr!important}
 body.staff-console .admin-sidebar{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:6px;max-height:none}
 body.staff-console .admin-sidebar a{white-space:nowrap;flex:0 0 auto}
}
body.staff-console .admin-sidebar h3{color:#EBD9B4!important}
body.staff-console .console-topbar .console-title b{color:#F4EFE7!important}
body.staff-console .console-topbar .console-title small{color:#B9CDBB!important}
body.staff-console .console-links span{color:#DCE9DE!important}
@media (max-width:920px){
 body.staff-console .admin-sidebar{flex-direction:row!important;align-items:center;position:static!important}
 body.staff-console .admin-sidebar h3{flex:0 0 auto;margin:0 6px 0 2px}
}

/* ===== V10.20.1 断行纪律 + 暖色调 ===== */
/* 标题均衡断行：任何标题不让一两个字孤占一行 */
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
/* 暖色令牌：灰绿系改暖砂系，纸色更暖 */
:root{
 --muted:#77685A;
 --soft:#F7EFE0;
 --line:#E8DCC8;
 --cream:#FFFFFF;
 --support-pine:#8A4A24;
 --support-ink:#4A3220;
 --brand-950:#2A1A10;
 --brand-900:#3A2413;
 --brand-800:#54331A;
 --brand-700:#74471F;
 --brand-600:#96602C;
 --paper:#FFFFFF;
}
/* 登录/注册左侧面板：冷墨绿改暖柿棕渐变 */
.auth-benefits{background:linear-gradient(146deg,#4A2410,#8A4A24 78%)}
/* 页脚：冷灰绿改暖米色 */
.footer{background:#FFFFFF}
/* 客服悬浮件描边随暖色 */
.support-widget summary{border-color:#6E3A1C}
/* 后台顶栏：与侧栏同走暖棕，不再墨绿压顶 */
body.staff-console .console-topbar{background:#33231A}
/* 卡片与列表标题多为链接文本：同样均衡断行，杜绝单字落行 */
a{text-wrap:balance}

/* ===== V10.20.2 广告长段降高 + 暖色罩层 ===== */
.partner-ribbon .partner-cell.partner-cell{aspect-ratio:21/9}
.partner-box--strip .partner-cell{min-height:84px}
.partner-box--strip .partner-cell__img{min-height:84px}
.partner-box--strip .partner-row{padding:8px;gap:8px}
.partner-box--house .partner-link img{height:76px!important}
.partner-cell{background:#2B211A}
.partner-cell::after{background:linear-gradient(180deg,rgba(43,26,16,0) 42%,rgba(43,26,16,.55) 74%,rgba(43,26,16,.87))}
.partner-box--strip .partner-cell__copy{gap:2px;padding:7px 12px}
.partner-box--strip .partner-cell__copy strong{line-height:1.3}
.partner-box--strip .partner-cell__meta{font-size:11px;line-height:1.25}
.partner-box--strip .partner-cell__brand{line-height:1.3}
.partner-box--strip .partner-cell__meta{display:flex;flex-wrap:nowrap;align-items:center;gap:8px}
.partner-box--strip .partner-cell__brand{white-space:nowrap}
.partner-box--strip .partner-cell__img{position:relative;overflow:hidden}
.partner-box--strip .partner-cell__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.partner-box--strip .partner-cell__copy{color:#E9DFCE}
.partner-box--strip .partner-cell__copy strong{color:#F7F1E3}

/* ===== V10.20.3 视觉精修 ===== */
@media(max-width:760px){
 .partner-cell.partner-cell{aspect-ratio:16/9}
 .detail .meta{font-size:12.5px;line-height:1.65}
}

/* ===== V10.20.4 手机广告降高：赞助带改扁长方形 ===== */
@media(max-width:760px){
 .partner-ribbon.partner-cell.partner-cell{height:104px;aspect-ratio:auto}
 .partner-ribbon .partner-cell__copy{padding:8px 12px}
 .partner-ribbon .partner-cell__copy strong{font-size:14px}
}
@media(max-width:760px){
 .partner-ribbon .partner-cell.partner-cell{height:104px;aspect-ratio:auto}
}

/* V10.23.0: page banners, ad showcase, auth side photo */
.page-topfig{margin:14px 0 18px;border-radius:14px;overflow:hidden}
.page-topfig img{display:block;width:100%;height:250px;object-fit:cover}
.page-topfig--slim img{aspect-ratio:auto;height:92px}
.showcase{margin:22px 0}
.showcase figure{margin:0}
.showcase img{display:block;width:100%;border-radius:12px;object-fit:cover}
.showcase-wide img{aspect-ratio:21/9}
.showcase-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.showcase-grid img{aspect-ratio:3/2}
.showcase figcaption{margin-top:6px;font-size:12.5px;color:var(--muted)}
.auth-benefits{background-image:linear-gradient(146deg,rgba(74,36,16,.94),rgba(138,74,36,.90) 78%),url('/assets/brand/city_los-angeles.webp');background-size:cover;background-position:center}
@media (max-width:760px){.page-topfig img{aspect-ratio:16/10}.page-topfig--slim img{aspect-ratio:auto;height:64px}.showcase-grid{grid-template-columns:1fr}}

/* ===== V10.24.0 white base (user directive: no cream/yellow backgrounds) ===== */
:root{--cream:#FFFFFF;--portal-paper:#FFFFFF;--paper:#FFFFFF;--soft:#F6F6F4;--line:#E3DED4}
body{background:#FFFFFF}
.footer{background:#FFFFFF}
.ad{background:#FFFFFF}
.partner-link img{background:#F1F0EC}

/* ===== V10.24.0 in-article text ad ===== */
.partner-note{border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px 18px;margin:22px 0}
.partner-note__line{margin:8px 0 4px;font-size:15px;line-height:1.75}
.partner-note__brand{display:block;font-size:11px;letter-spacing:1.5px;font-weight:750;color:#7D6125;margin-bottom:2px}
.partner-note__title{color:#292019;font-size:17px;text-decoration:none}
.partner-note__title:hover{color:#B0491F;text-decoration:underline}
.partner-note__desc{display:block;color:#6E5F4E;font-size:13.5px;margin-top:2px}
.partner-note__cta{display:inline-block;margin-top:6px;font-weight:700;color:#B0491F;font-size:13.5px}
.partner-note .partner-box__foot{margin:6px 0 0}

/* ===== V10.24.1 page-bottom upgrade ===== */
.site-explore{border-top:1px solid var(--line);background:#FAFAF8;padding:28px 0 10px;margin-top:48px}
.explore-group{margin:0 0 18px}
.explore-group h2{font-size:15px;margin:0 0 10px;color:#292019}
.explore-chips{display:flex;flex-wrap:wrap;gap:8px}
.explore-chip{display:inline-block;padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#4A3B2A;font-size:13px;line-height:1.5}
.explore-chip:hover{border-color:#B0491F;color:#B0491F}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:30px}
.footer-col h3{font-size:14px;margin:2px 0 10px;color:#292019}
.footer-col a{display:block;padding:3.5px 0}
.footer-mail{margin-top:10px}
.footer-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:30px;padding:16px 0 24px;font-size:12.5px;color:#6E5F4E}
.footer-bar .to-top{font-weight:650;color:#B0491F}
@media(max-width:820px){.footer-grid{grid-template-columns:1fr 1fr}}
.partner-cell{background:#292019}
.partner-cell__img{background-color:#292019}
.partner-link{background-color:#EFEEEB}

/* ===== V10.25.0 article body design: figures + keypoints ===== */
.news-figure{margin:24px 0}
.news-figure img{width:100%;height:auto;display:block;border-radius:12px;background:#EFEEEB}
.news-figure figcaption{font-size:12.5px;color:#6E5F4E;margin-top:6px}
.news-keypoints{border:1px solid var(--line);background:#FAFAF8;border-radius:12px;padding:14px 18px;margin:24px 0}
.news-keypoints__title{display:block;font-size:14px;letter-spacing:1px;color:#B0491F;margin-bottom:6px}
.news-keypoints p{margin:0}
.news-rich-body h2{font-size:20px;line-height:1.5}

/* ===== V10.25.0 asylum channel ===== */
.asylum-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:6px 0 8px}
.asylum-step{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff}
.asylum-step strong{display:block;font-size:15px;color:#B0491F;margin-bottom:6px}
.asylum-step p{margin:0;font-size:13.5px;color:#5A4E40;line-height:1.65}
.official-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.official-link{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff;text-decoration:none;display:block}
.official-link strong{display:block;color:#7A2E12;font-size:15.5px}
.official-link span{font-size:13px;color:#6E5F4E}
.official-link:hover{border-color:#B0491F}
.faq-list{display:grid;gap:10px}
.faq-item{border:1px solid var(--line);border-radius:12px;padding:12px 16px;background:#fff}
.faq-item summary{cursor:pointer;font-weight:600;font-size:15.5px}
.faq-item p{margin:8px 0 2px;color:#4A4034;line-height:1.75}
@media (max-width:900px){.asylum-steps{grid-template-columns:1fr 1fr}.official-links{grid-template-columns:1fr}}

/* V10.29.0: section_mid hub band spacing (matches section_footer rhythm). */
.partner-box--section_mid{margin:40px 0 10px}

/* V10.30.0: on mobile the back-to-top button stacked exactly on the support
   pill (both right-anchored, overlapping bands). Lift it above the pill. */
@media(max-width:760px){.back-to-top{bottom:140px;right:12px}}

/* V10.35.0 ticket threads */
.ticket-thread{display:grid;gap:10px}
.ticket-msg{border:1px solid var(--line,#E3DED4);border-radius:12px;padding:10px 14px;max-width:88%}
.ticket-msg p{margin:4px 0 2px}
.ticket-msg small{color:#8a8378}
.ticket-msg.is-user{justify-self:end;background:#FBF7EF}
.ticket-msg.is-admin{justify-self:start;background:#fff}
.ticket-msg.is-auto{justify-self:start;background:#F7F3E8;border-style:dashed}
.ticket-thread-admin{margin-top:8px;border-top:1px dashed var(--line,#E3DED4);padding-top:6px}
.ticket-thread-admin p{margin:6px 0}

/* ===== V10.42.0 广告标识与手机端可读性（用户 2026-10-24 令） =====
   1) 广告标识条不再被压成细条：全端加高、字号放大。
   2) 手机端所有广告分开放：一条一条单列排列，图片按 1200/340
      原比例整幅显示不裁切，标题与正文字号放大到清楚可读。 */
.partner-box__head{min-height:0!important;padding:9px 14px!important}
.partner-box__label{font-size:12.5px!important;line-height:1.5!important}
.partner-box__kind{font-size:11.5px!important;line-height:1.5!important}
@media(max-width:760px){
 .partner-row{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;padding:12px!important;overflow:visible!important}
 .partner-cell{flex:none!important;min-height:0!important}
 .partner-box--strip .partner-cell__img{height:auto!important;min-height:0!important;aspect-ratio:1200/340}
 .partner-cell__img img{height:100%!important;object-fit:cover!important}
 .partner-box--strip .partner-cell__copy{padding:12px 14px 13px!important;gap:5px!important}
 .partner-cell__brand{font-size:11px!important;line-height:1.5!important}
 .partner-cell__copy strong{font-size:17px!important;line-height:1.5!important;-webkit-line-clamp:3!important}
 .partner-box--strip .partner-cell__meta{font-size:12px!important;line-height:1.5!important;flex-wrap:wrap!important}
 .partner-box--house .partner-link img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:1200/340!important;object-fit:cover!important}
 .partner-box--infeed .partner-link img,.partner-box--toprow .partner-link img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:1200/340!important;object-fit:cover!important}
 .partner-ribbon .partner-cell.partner-cell{position:static!important;aspect-ratio:auto!important;display:flex!important;flex-direction:column!important;background:#fff!important;border:1px solid #e9e6da!important}
 .partner-ribbon .partner-cell__img{position:static!important;height:auto!important;aspect-ratio:1200/340;flex:none}
 .partner-ribbon .partner-cell__copy{position:static!important;height:auto!important;background:#fff!important;color:var(--ink)!important;padding:12px 14px 13px!important;justify-content:flex-start;gap:5px}
 .partner-ribbon .partner-cell__brand{color:#8f5f24!important;font-size:11px!important}
 .partner-ribbon .partner-cell__copy strong{color:var(--ink)!important;font-size:17px!important;line-height:1.5!important;-webkit-line-clamp:3!important}
 .partner-ribbon .partner-cell__meta{color:#8a938c!important;font-size:12px!important;line-height:1.5!important;white-space:normal!important}
 .partner-card__img img{aspect-ratio:1200/340!important}
 .partner-card__copy{padding:14px 16px!important;gap:8px!important}
 .partner-card__copy strong{font-size:18px!important;line-height:1.5!important}
 .partner-card__desc{font-size:14.5px!important;line-height:1.7!important;-webkit-line-clamp:3!important}
 .partner-card__cta{font-size:13.5px!important;padding:7px 16px!important}
 .partner-note{padding:16px!important}
 .partner-note__title{font-size:18px!important}
 .partner-note__desc{font-size:14.5px!important;line-height:1.7!important}
 .partner-note__cta{font-size:14.5px!important}
 .partner-box__foot,.partner-box__note{font-size:11.5px!important;line-height:1.6!important}
 .campaign-card strong{font-size:18px!important}
 .campaign-card span{font-size:14.5px!important;line-height:1.7!important}
}

/* ===== V10.42.1 首页赞助带磁贴高度修复 =====
   磁贴被旧规则的固定宽高比锁死高度、溢出隐藏把文字区整段裁掉；
   本段强制自然高度、可见溢出，文字回到照片下方完整显示。 */
@media(max-width:760px){
 .partner-ribbon .partner-cell.partner-cell{height:auto!important;min-height:0!important;aspect-ratio:auto!important;overflow:visible!important}
 .partner-ribbon .partner-cell__img{width:100%;flex:none!important}
 .partner-ribbon .partner-cell__copy{flex:none!important;width:100%;box-sizing:border-box}
}

/* ===== V10.42.2 手机广告不连放＋间距收紧（用户 2026-10-24 令） =====
   手机端每处广告位只留一条（赞助带留第一条、广告条最多两条、
   双卡留一张），其余手机端不展示；图与文之间的空位收紧。 */
@media(max-width:760px){
 .partner-ribbon .partner-cell:nth-child(n+2){display:none!important}
 .partner-box--strip .partner-row .partner-cell:nth-child(n+3){display:none!important}
 .partner-box--article-pair .partner-cards .partner-card:nth-child(2){display:none!important}
 .partner-ribbon .partner-cell__copy{padding:9px 12px 10px!important;gap:2px!important;justify-content:flex-start!important}
 .partner-box--strip .partner-cell__copy{padding:9px 12px 10px!important;gap:2px!important}
 .partner-card__copy{padding:10px 12px!important;gap:5px!important}
 .partner-cell__meta{margin-top:3px!important}
 .partner-card__cta{margin-top:6px!important}
}

/* ===== V10.43.0 赞助带全站覆盖 + 手机端穿插（用户 2026-10-24 令） =====
   首页赞助带（四条自营广告）推广到全站前台内容页：桌面端各页顶部横排，
   与首页完全一致。手机端缎带只留第一条（V10.42.2 既有规则），其余三条
   由 .feed-partner 逐条穿插进新闻与内容流，一处一条、绝不相邻。
   桌面端 .feed-partner 整体不显示，桌面版式零变化。
   穿插磁贴脱离了 .partner-ribbon 的作用域，必须显式套用与缎带
   相同的已验证卡片规则（静态文案在照片下方、自然高度、溢出可见），
   严防旧规则的固定高度 + overflow:hidden 再次把文字整段裁掉。 */
.feed-partner{display:none}
@media(max-width:760px){
 .feed-partner{display:block;grid-column:1/-1;margin:16px 0}
 .feed-partner .partner-cell.partner-cell{position:static!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;overflow:visible!important;display:flex!important;flex-direction:column!important;background:#fff!important;border:1px solid #e9e6da!important;border-radius:6px}
 .feed-partner .partner-cell__img{position:static!important;width:100%;height:auto!important;aspect-ratio:1200/340;flex:none!important;background-size:cover;background-position:center}
 .feed-partner .partner-cell__img img{display:block;width:100%;height:100%!important;object-fit:cover!important}
 .feed-partner .partner-cell__copy{position:static!important;height:auto!important;width:100%;box-sizing:border-box;background:#fff!important;color:var(--ink)!important;display:flex;flex-direction:column;padding:9px 12px 10px!important;gap:2px!important;justify-content:flex-start!important}
 .feed-partner .partner-cell__brand{color:#8f5f24!important;font-size:11px!important;line-height:1.5!important}
 .feed-partner .partner-cell__copy strong{color:var(--ink)!important;font-size:17px!important;line-height:1.5!important}
 .feed-partner .partner-cell__meta{color:#8a938c!important;font-size:12px!important;line-height:1.5!important;white-space:normal!important;margin-top:3px!important}
}

/* ===== V10.44.0 网站底部广告（用户 2026-10-24 令） =====
   内容页底部（页脚之前）再放一组赞助广告，与顶部缎带同款：
   桌面四条横排，手机按既有规则只留第一条、不连放。 */
.partner-ribbon--bottom{margin:30px 0 6px}

/* ===== V10.44.1 桌面广告改扁长＋文字可读（用户 2026-10-24 令） =====
   桌面赞助磁贴由 21/9 改 16/5 扁长；罩层整体加深，品牌行与标题
   加投影提亮，保证压在图片上的文字看得清。手机端维持既有版式。 */
@media(min-width:761px){
 .partner-ribbon .partner-cell.partner-cell{aspect-ratio:16/5}
 .partner-ribbon .partner-cell__copy{background:linear-gradient(180deg,rgba(26,17,10,.45) 0%,rgba(26,17,10,.6) 46%,rgba(24,15,8,.9) 80%,rgba(20,12,6,.97) 100%);padding:9px 14px;gap:2px}
 .partner-ribbon .partner-cell__brand{color:#f2da9a;font-size:11px;text-shadow:0 1px 3px rgba(0,0,0,.65)}
 .partner-ribbon .partner-cell .partner-cell__copy strong{font-size:15px;line-height:1.4;min-height:0;-webkit-line-clamp:1;text-shadow:0 1px 3px rgba(0,0,0,.65)}
 .partner-ribbon .partner-cell__meta{color:rgba(255,255,255,.94);text-shadow:0 1px 2px rgba(0,0,0,.55)}
 .partner-ribbon .partner-cell__label{color:#ffb59d;border-color:rgba(255,181,157,.65)}
}

/* ===== V10.45.0 注册/登录页左右铺开＋广告位（用户 2026-10-24 令） =====
   桌面端：卡片占满容器宽度，表单改双列，一屏内填完不用滚动；
   左栏底部空地放一条赞助广告。手机端维持单列堆叠。 */
@media(min-width:1051px){
 .auth-layout{max-width:none;grid-template-columns:minmax(0,.92fr) minmax(0,1.45fr)}
 .auth-card-refresh form[data-auth-form]{display:grid;grid-template-columns:1fr 1fr;column-gap:20px;align-items:start}
 .auth-card-refresh form[data-auth-form]>label:not(.honeypot){margin:7px 0}
 .auth-card-refresh form[data-auth-form]>.password-strength,
 .auth-card-refresh form[data-auth-form]>.agreement,
 .auth-card-refresh form[data-auth-form]>div,
 .auth-card-refresh form[data-auth-form]>button{grid-column:1/-1}
}
.side-rail__cell{margin-top:auto;padding-top:28px}
.side-rail__cell .partner-cell.partner-cell{position:relative!important;display:block!important;aspect-ratio:21/8;height:auto!important;min-height:0!important;overflow:hidden;border:0;border-radius:10px}
.side-rail__cell .partner-cell__img{position:absolute!important;inset:0;height:auto!important;flex:none!important}
.side-rail__cell .partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block}
.side-rail__cell .partner-cell__copy{position:absolute!important;left:0;right:0;bottom:0;top:auto;height:auto!important;width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;padding:26px 12px 9px;background:linear-gradient(180deg,rgba(26,17,10,0) 0%,rgba(26,17,10,.72) 45%,rgba(20,12,6,.95) 100%);color:#fff}
.side-rail__cell .partner-cell__brand{color:#f2da9a;font-size:11px;font-weight:700;letter-spacing:.09em;text-shadow:0 1px 3px rgba(0,0,0,.65)}
.side-rail__cell .partner-cell__copy strong{color:#fff;font-size:15px;line-height:1.4;min-height:0;text-shadow:0 1px 3px rgba(0,0,0,.65)}
.side-rail__cell .partner-cell__meta{color:rgba(255,255,255,.94);font-size:11px;white-space:normal}
.side-rail__cell .partner-cell__label{color:#ffb59d;border:1px solid rgba(255,181,157,.65);border-radius:4px;padding:0 4px}

/* V10.45.0 追加：注册/登录输入框改小（用户 2026-10-24 令） */
.auth-card-refresh input[type=email],.auth-card-refresh input[type=text],.auth-card-refresh input[type=password]{min-height:40px;padding:8px 12px}
.auth-card-refresh .password-entry input{min-height:40px;padding:8px 12px}

/* V10.45.0 补丁：双列时标签提示统一落到标题下（两列输入框对齐），
   密码框给「显示」按钮留出右侧内边距，提示文字不再被压住。 */
@media(min-width:1051px){
 .auth-card-refresh form[data-auth-form]>label>small{float:none;display:block;margin-top:1px}
}
.auth-card-refresh .password-entry input{padding-right:64px}

/* V10.45.0 补丁二：editorial_v770 的 .auth-card{max-width:440px} 压过了
   refresh 的 max-width:none，表单一直被锁在 440 宽内——在布局内解除。 */
.auth-layout .auth-card-refresh{max-width:none}

/* ===== V10.45.1 注册/登录页修净（用户 2026-10-24 令） =====
   右侧空位加竖排广告栏；桌面输入框与文字再缩小一号。 */
.side-rail{display:none}
@media(min-width:1200px){
 .auth-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr) minmax(0,.6fr)}
 .side-rail{display:flex;flex-direction:column;gap:14px;padding:39px 30px 39px 2px}
 .side-rail .side-rail__cell{margin-top:0;padding-top:0}
 .side-rail .side-rail__cell .partner-cell.partner-cell{aspect-ratio:16/10}
}
@media(min-width:761px){
 .auth-card-refresh h2{font-size:24px}
 .auth-card-refresh .auth-subtitle{font-size:12.5px}
 .auth-card-refresh form>label:not(.honeypot):not(.agreement){font-size:12.5px}
 .auth-card-refresh input{font-size:15px!important}
 .auth-card-refresh input[type=email],.auth-card-refresh input[type=text],.auth-card-refresh input[type=password]{min-height:38px;padding:7px 11px}
 .auth-card-refresh .password-entry input{min-height:38px}
 .auth-card-refresh .password-entry button{min-height:38px;padding:6px 13px}
 .auth-card-refresh .auth-submit{min-height:46px}
}

/* ===== V10.46.0 首页栏目补广告位＋视频频道（用户 2026-10-24 令） =====
   栏目网格最后一行空位用赞助磁贴填满；手机只留第一条。 */
.department-ad{padding:10px}
.department-ad .partner-cell.partner-cell{position:relative!important;display:block!important;width:100%;height:100%;min-height:148px;aspect-ratio:auto!important;overflow:hidden;border:0;border-radius:8px}
.department-ad .partner-cell__img{position:absolute!important;inset:0;height:auto!important;flex:none!important}
.department-ad .partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block}
.department-ad .partner-cell__copy{position:absolute!important;left:0;right:0;bottom:0;top:auto;height:auto!important;width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;padding:26px 12px 9px;background:linear-gradient(180deg,rgba(26,17,10,0) 0%,rgba(26,17,10,.72) 45%,rgba(20,12,6,.95) 100%);color:#fff}
.department-ad .partner-cell__brand{color:#f2da9a;font-size:11px;font-weight:700;letter-spacing:.09em;text-shadow:0 1px 3px rgba(0,0,0,.65)}
.department-ad .partner-cell__copy strong{color:#fff;font-size:15px;line-height:1.4;min-height:0;text-shadow:0 1px 3px rgba(0,0,0,.65)}
.department-ad .partner-cell__meta{color:rgba(255,255,255,.94);font-size:11px;white-space:normal}
.department-ad .partner-cell__label{color:#ffb59d;border:1px solid rgba(255,181,157,.65);border-radius:4px;padding:0 4px}
@media(max-width:760px){.department-ad ~ .department-ad{display:none}}
/* 视频频道：频道头与卡片标题收束 */
.video-channel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 20px;margin-bottom:20px}
.video-channel-head strong{font-size:19px;display:block}
.video-channel-head span{color:var(--muted);font-size:13px}
.video-card strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ===== V10.46.1 注册页三栏上下对齐（用户 2026-10-24 令「左边太高，和中间右边上下对齐」） =====
   左栏纵向节奏收紧（返回链 55px 大间距、45px 内边距、清单 19px 间隔为主要高度来源）；
   中栏尾链与右栏磁贴改底对齐，三栏同高收尾。 */
@media(min-width:1051px){
 .auth-benefits{padding:34px 38px 30px}
 .auth-back{margin-bottom:24px}
 .auth-benefits h1{font-size:clamp(28px,2.6vw,34px);margin:10px 0 10px}
 .auth-benefits>p{line-height:1.75}
 .auth-benefit-list{gap:13px;margin-top:18px}
 .auth-footnote{padding-top:16px}
 .auth-card-refresh{display:flex;flex-direction:column}
 .auth-card-refresh .auth-guest{margin-top:auto}
 .side-rail{justify-content:space-between}
}
.hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}
.hub-card{display:flex;flex-direction:column;gap:5px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;color:inherit}
.hub-card:hover{border-color:#B0491F}
.hub-card strong{font-size:17.5px}
.hub-card span{color:var(--muted);font-size:13.5px;line-height:1.55}
.hub-card small{color:#B0491F;font-size:12.5px;margin-top:auto}
.member-strip{margin:22px 0}
.hub-grid--mini{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-grid--mini{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.hub-grid,.hub-grid--mini{grid-template-columns:1fr}}
.exam-opt.is-right{background:#E7F4EA;border-color:#2E7D32}
.exam-opt.is-wrong{background:#FBEAEA;border-color:#B3261E}
.fee-table tr.is-best td{font-weight:700;color:#B0491F}
.game-cell.is-hit{background:#2E7D32;border-color:#2E7D32;color:#fff}
.game-cell.is-near{background:#D9A404;border-color:#D9A404;color:#fff}
.game-cell.is-miss{background:#B9B0A6;border-color:#B9B0A6;color:#fff}
@media print{
 body.printing-resume header,body.printing-resume footer,body.printing-resume nav,body.printing-resume .resume-form,body.printing-resume .resume-actions,body.printing-resume .freebar,body.printing-resume .support-widget,body.printing-resume .section-title,
 body.printing-tpl header,body.printing-tpl footer,body.printing-tpl nav,body.printing-tpl .resume-actions,body.printing-tpl .freebar,body.printing-tpl .support-widget,body.printing-tpl .notice,body.printing-tpl .section-title{display:none!important}
 body.printing-resume .resume-wrap{display:block}
 body.printing-resume .rs-sheet,body.printing-tpl .tpl-sheet{border:0;box-shadow:none;padding:6px}
}

/* ===== V10.47.1 首页最新新闻卡左图（用户 2026-10-24 令「只有文字没有图片」） ===== */
.home-latest-item{flex-direction:row;gap:13px;align-items:stretch}
.home-latest-thumb{flex:0 0 112px;border-radius:7px;overflow:hidden;background:#EFEEEB}
.home-latest-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.home-latest-text{display:flex;flex-direction:column;gap:5px;min-width:0}
.home-latest-text strong{line-height:1.5}
.home-latest-text small{margin-top:auto}
@media(max-width:560px){.home-latest-thumb{flex-basis:96px}}

/* ===== V10.48.0 庇护协助咨询表单 + 会员专区带广告格 ===== */
.asylum-consult{max-width:860px}
.asylum-consult .consult-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media(max-width:640px){.asylum-consult .consult-grid{grid-template-columns:1fr}}
.hub-partner{padding:0;overflow:hidden;position:relative;min-height:118px}
.hub-partner .partner-cell{position:absolute;inset:0;height:100%;aspect-ratio:auto;border-radius:0}
.hub-partner .partner-cell img{height:100%}

/* V10.53.0: list infeed strip — mobile keeps first tile only (standing mobile rule) */
@media (max-width:760px){.partner-box--list_infeed .partner-cell:nth-child(n+2){display:none}}

/* V10.53.1: list infeed strip — one row of six flat tiles (user spec 2026-10-24) */
@media (min-width:761px){
.partner-box--strip.partner-box--list_infeed .partner-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:8px}
.partner-box--strip.partner-box--list_infeed .partner-cell{display:flex;flex-direction:column;min-height:0;height:120px}
.partner-box--strip.partner-box--list_infeed .partner-cell__img{display:block;flex:0 0 56px;width:100%;height:56px;min-height:0;overflow:hidden}
.partner-box--strip.partner-box--list_infeed .partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block}
.partner-box--strip.partner-box--list_infeed .partner-cell__copy{flex:1;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:6px 9px;min-width:0}
.partner-box--strip.partner-box--list_infeed .partner-cell__brand{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.partner-box--strip.partner-box--list_infeed .partner-cell__copy strong{font-size:12.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.partner-box--strip.partner-box--list_infeed .partner-cell__meta{display:none}
}
/* V10.54.0: 404 page helpers */
.search-line{display:flex;gap:10px;max-width:560px;margin:18px 0}
.search-line input{flex:1;min-height:44px}
.nf-links{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 26px}
/* V10.57.1: the services-box ad stays visible on small screens (global sidebar ads remain hidden there) */
@media(max-width:850px){.home-services .partner-box--sidebar{display:block!important}}

/* V10.58.0: photo grid's empty small-screen cell carries an ad (desktop keeps six news cards) */
/* V10.58.x: lead photo spans the full card width on the site background (no inset frame) */
.home-news-lead--v810{padding:0!important}
.home-news-lead--v810 .home-headline-visual{border-radius:0}

/* V10.59.0: services box + photo-grid cell carry text cards, not image-only placements */
.home-services .partner-box{margin-top:10px}
.home-photo-cell{display:none}
@media(max-width:760px){.home-photo-cell{display:block}.home-photo-cell .partner-cards{display:flex;flex-direction:column;gap:8px}.home-photo-cell .partner-card{flex-direction:row}.home-photo-cell .partner-card__img{flex:0 0 64px}.home-photo-cell .partner-card__img img{aspect-ratio:1/1;height:100%}.home-photo-cell .partner-card__copy{padding:8px 10px;gap:2px}.home-photo-cell .partner-card__desc,.home-photo-cell .partner-card__cta{display:none}}

/* V10.60.0: three rows INSIDE the lead column (hot news / hot news / two ads) */
.home-lead-stack--rows{display:flex;flex-direction:column;gap:12px;height:100%}
.home-lead-stack--rows .home-news-lead--row{flex:1 1 0;min-height:180px;aspect-ratio:auto;width:100%}
.home-lead-stack--rows .home-news-lead--row .home-headline-visual{position:absolute;inset:0;width:100%;height:100%;min-height:0;flex:none;border-radius:0}
.home-lead-stack--rows .lead-row-title{display:block;font-size:21px;line-height:1.45;font-weight:800;color:#fff}
.home-lead-stack--rows .home-lead-spot{flex:0 0 auto;margin-top:0}
@media(max-width:760px){.home-lead-stack--rows .home-news-lead--row{min-height:160px}.home-lead-stack--rows .lead-row-title{font-size:19px}}

/* ===== USC-FIX 20261025b（用户 16:15 令）：首页顶部交错序 + 头条行移动端塌陷修复 + 认证表单紧凑 ===== */
/* 头条行塌陷根因：旧层 .home-news-lead{min-height:0!important}（≤930/620）压垮 rows 的 flex 设计，
   而行内图片/标题为绝对定位、内容零贡献，行高只剩 2px 边框。以下列规则恢复比例高度。 */
@media (max-width:760px){
.home-lead-stack--rows{height:auto!important}
.home-lead-stack--rows .home-news-lead--row{flex:none!important;min-height:0!important;height:auto!important;aspect-ratio:16/9.6!important}
}
/* 交错/信息流赞助卡统一卡面（图上文下），与 ribbon 现行卡面一致；图高封顶防桌面全宽过大 */
.home-lead-partner{min-width:0}
.home-lead-partner .partner-cell,.feed-partner .partner-cell{position:static!important;display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;overflow:hidden!important;background:#fff!important;border:1px solid #e9e6da!important;border-radius:10px!important}
.home-lead-partner .partner-cell__img,.feed-partner .partner-cell__img{position:static!important;height:auto!important;max-height:210px;aspect-ratio:1200/340;flex:none!important;display:block;overflow:hidden}
.home-lead-partner .partner-cell__img img,.feed-partner .partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block}
.home-lead-partner .partner-cell__copy,.feed-partner .partner-cell__copy{position:static!important;height:auto!important;background:#fff!important;color:var(--ink)!important;display:flex!important;flex-direction:column!important;gap:2px!important;padding:9px 12px 10px!important;justify-content:flex-start!important}
.home-lead-partner .partner-cell__brand,.feed-partner .partner-cell__brand{color:#8f5f24!important;font-size:11px!important}
.home-lead-partner .partner-cell__copy strong,.feed-partner .partner-cell__copy strong{color:var(--ink)!important;font-size:15px!important;line-height:1.4!important;-webkit-line-clamp:1!important}
.home-lead-partner .partner-cell__meta,.feed-partner .partner-cell__meta{color:#8a938c!important;font-size:12px!important;white-space:normal!important}
/* 认证四页紧凑标准：输入高约 43px、字号 16px、内边距 10×12、字段间距 ≤12px、标题约 27px */
.auth-card-refresh{padding:26px 28px!important}
.auth-card-refresh h2{font-size:27px!important;margin:10px 0 5px!important}
.auth-card .auth-subtitle{margin-bottom:12px!important}
.auth-card-refresh form>label:not(.honeypot):not(.agreement){margin:11px 0 0!important}
.auth-card-refresh form>label>input,.auth-card-refresh .password-entry{margin-top:5px!important}
.auth-card input{min-height:43px!important;height:43px;padding:10px 12px!important;font-size:16px}
.auth-card input[type="checkbox"],.auth-card input[type="radio"]{min-height:0!important;height:auto!important;width:auto!important;padding:0!important}
.auth-card .password-entry input{padding:10px 12px!important;height:41px!important;min-height:41px!important}
.form-panel:has(> form .cf-turnstile):not(:has(> form textarea)){max-width:560px;margin-inline:auto}
.auth-card .cf-turnstile{margin:10px 0 4px}
.auth-card .btn,.auth-card button{min-height:43px;padding-top:10px;padding-bottom:10px}
.auth-card .auth-submit{margin-top:12px!important}
.form-panel form label{margin:11px 0 0}
.form-panel form input{min-height:43px;padding:10px 12px;font-size:16px}
.form-panel form input[type="checkbox"],.form-panel form input[type="radio"]{min-height:0;width:auto;padding:0}
.form-panel form .cf-turnstile{margin:10px 0 4px}
.form-panel form .btn{min-height:43px;padding-top:10px;padding-bottom:10px}
@media (max-width:700px){.auth-card-refresh{padding:20px!important}}

/* ===== USC-FIX 20261025c（用户 16:55/16:59 定版）：桌面头条区配平——压紧凑、总高变小，禁拉伸配平 =====
   左栏 = 头条 200px ×2 + 间隔 12×2 + 赞助双卡行 100px = 524px；右栏 = feed 四条 ×131px = 524px。
   aside 移出头条区（consumer 结构调整）作其下通栏条，内容全保留。图片均为绝对填充 + object-fit:cover 等比裁切。 */
@media (min-width:1151px){
.home-lead-composition--v810{grid-template-columns:minmax(0,6fr) minmax(0,3fr)!important;align-items:start!important}
.home-lead-stack--rows{height:auto!important;gap:12px!important}
.home-lead-stack--rows .home-news-lead--row{flex:none!important;height:200px!important;min-height:0!important;aspect-ratio:auto!important}
.home-news-feed--v810{height:auto!important}
.home-news-feed--v810>a{flex:none!important;height:131px!important;overflow:hidden}
.home-lead-partner{display:grid!important;grid-template-columns:1fr 1fr;gap:12px}
.home-lead-partner .partner-cell{position:relative!important;display:block!important;height:100px!important;min-height:0!important;aspect-ratio:auto!important;overflow:hidden!important;border-radius:10px!important;border:1px solid #e1dfd6!important}
.home-lead-partner .partner-cell__img{position:absolute!important;inset:0;height:100%!important;max-height:none!important;aspect-ratio:auto!important}
.home-lead-partner .partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block}
.home-lead-partner .partner-cell__copy{position:absolute!important;left:0;right:0;bottom:0;height:100%!important;background:linear-gradient(180deg,rgba(26,17,10,.45) 0%,rgba(26,17,10,.6) 46%,rgba(24,15,8,.9) 80%,rgba(20,12,6,.97) 100%)!important;color:#fff!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;gap:2px!important;padding:9px 14px!important}
.home-lead-partner .partner-cell__brand{color:#f2da9a!important;font-size:11px!important}
.home-lead-partner .partner-cell__copy strong{color:#fff!important;font-size:15px!important;line-height:1.4!important;-webkit-line-clamp:1!important}
.home-lead-partner .partner-cell__meta{color:rgba(255,255,255,.94)!important;font-size:12px!important;white-space:nowrap!important}
.home-aside-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start;margin-top:14px}
.home-aside-strip>*{min-width:0}
}
@media (max-width:1150px) and (min-width:761px){
.home-lead-partner{display:grid;grid-template-columns:1fr 1fr;gap:12px}
}
@media (max-width:760px){
.home-lead-partner .partner-cell:nth-child(2){display:none!important}
.home-aside-strip{display:block;margin-top:12px}
}

/* ===== USC-FIX 20261025d（用户 17:10–17:19 P0 定版）=====
   1) 顶部单磁贴缎带改全幅扁长横幅：卡必须填满位宽，不许小卡靠左留白（全站通规）。
   2) 头条区再配平：左栏图高再砍（186×2＋间隔 10×2＋双卡行 96＝488），右栏图文条
      按内容自然高、日期紧跟标题（撤销 feed-copy 固定 110px 与日期 margin-top:auto），
      其下续排纯文字标题条（consumer 输出 .feed-text-row）以内容填实；总高较 526 变小。
   3) 中段恢复全幅纵排：aside 条改纵向堆叠（快讯→热门城市→分类信息→栏广告全幅），
      撤销 4 列并排挤压；各盒内部按全幅重排。
   4) 广告位填满通规：条内磁贴/栏广告图一律位宽 100%，图高受约束、品牌+标题+标签齐全。 */
/* --- 1) 顶部横幅全幅（≥761px；手机沿现行整幅卡） --- */
@media (min-width:761px){
.partner-ribbon--single{display:block!important}
.partner-ribbon--single .partner-cell.partner-cell{position:relative!important;display:block!important;width:100%!important;height:118px!important;min-height:0!important;aspect-ratio:auto!important;overflow:hidden!important;border:1px solid #e1dfd6!important;border-radius:10px!important;background:#2B211A!important}
.partner-ribbon--single .partner-cell__img{position:absolute!important;inset:0;height:100%!important;max-height:none!important;aspect-ratio:auto!important}
.partner-ribbon--single .partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block}
.partner-ribbon--single .partner-cell__copy{position:absolute!important;left:0;right:0;bottom:0;height:100%!important;background:linear-gradient(90deg,rgba(26,17,10,.88) 0%,rgba(26,17,10,.62) 46%,rgba(26,17,10,.12) 78%)!important;color:#fff!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;padding:12px 18px!important}
.partner-ribbon--single .partner-cell__brand{color:#f2da9a!important;font-size:11.5px!important}
.partner-ribbon--single .partner-cell__copy strong{color:#fff!important;font-size:18px!important;line-height:1.4!important;-webkit-line-clamp:1!important}
.partner-ribbon--single .partner-cell__meta{color:rgba(255,255,255,.94)!important;font-size:12px!important;white-space:nowrap!important}
}
/* --- 2) 头条区配平与右栏自然高（≥1151px） --- */
@media (min-width:1151px){
.home-lead-stack--rows{gap:10px!important}
.home-lead-stack--rows .home-news-lead--row{height:186px!important}
.home-lead-partner .partner-cell{height:96px!important}
.home-lead-composition--v810 .home-news-feed--v810{height:auto!important}
.home-lead-composition--v810 .home-news-feed--v810>a{flex:none!important;height:auto!important;min-height:0!important;align-items:center!important;padding:8px 2px!important;overflow:visible!important}
.home-lead-composition--v810 .home-news-feed--v810>a img{width:100px!important;height:70px!important;align-self:center!important}
.home-lead-composition--v810 .home-news-feed--v810 .feed-copy{height:auto!important;gap:3px!important}
.home-lead-composition--v810 .home-news-feed--v810 .feed-copy small{margin-top:0!important}
.home-news-feed--v810 .feed-text-row{display:flex!important;align-items:baseline;gap:10px;padding:7px 2px!important;border-bottom:1px solid #eee7d8}
.home-news-feed--v810 .feed-text-row .feed-cat{flex:none}
.home-news-feed--v810 .feed-text-row strong{flex:1;min-width:0;font-size:14px!important;line-height:1.4!important;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.home-news-feed--v810 .feed-text-row small{flex:none;font-size:11.5px;color:#84907f;margin-top:0!important}
}
/* 文字条在窄屏同样式（右栏堆叠于左栏之下，保持一族样式） */
@media (max-width:1150px){
.home-news-feed--v810 .feed-text-row{display:flex;align-items:baseline;gap:10px;padding:8px 2px;border-bottom:1px solid #eee7d8;text-decoration:none;color:inherit}
.home-news-feed--v810 .feed-text-row .feed-cat{flex:none;font-size:12px;font-weight:700;color:#c2512c}
.home-news-feed--v810 .feed-text-row strong{flex:1;min-width:0;font-size:14px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.home-news-feed--v810 .feed-text-row small{flex:none;font-size:11.5px;color:#84907f}
}
/* --- 3) 中段全幅纵排（≥1151px） --- */
@media (min-width:1151px){
.home-aside-strip{display:flex!important;flex-direction:column!important;gap:14px!important;margin-top:16px!important}
.home-aside-strip>*{width:100%!important;min-width:0}
.home-aside-strip .quick-news-links{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}
.home-aside-strip .home-city-tiles--v810{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.home-aside-strip .home-city-tiles--v810 img{height:84px!important}
.home-aside-strip .partner-card{max-width:none}
.home-aside-strip .partner-card__img{flex:0 0 300px!important}
.home-aside-strip .partner-box--sidebar .partner-link{display:block}
.home-aside-strip .partner-box--sidebar .partner-link img{width:100%!important;height:110px!important;object-fit:cover!important;display:block}
}
/* 平板（761–1150）：aside 两列网格沿旧规，栏广告跨满整行不再孤悬窄列 */
@media (max-width:1150px) and (min-width:761px){
.home-aside-strip .partner-box--sidebar{grid-column:1/-1}
.home-aside-strip .partner-box--sidebar .partner-link img{width:100%!important;height:110px!important;object-fit:cover!important;display:block}
}
/* --- 4) 广告位填满通规：house 栏广告图位宽 100%（全站） --- */
.partner-box--sidebar .partner-link img{max-width:100%}
/* --- 2b) 中宽桌面（1151–1650）头条区配平微调：摘要单行省略、文字条略收，
       使右栏自然高与左栏 488 对齐（差 ≤10px） --- */
@media (min-width:1151px) and (max-width:1650px){
.home-lead-composition--v810 .home-news-feed--v810 .feed-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-news-feed--v810 .feed-text-row{padding-top:5px!important;padding-bottom:5px!important}
}

/* ===== USC-FIX 20261025e（用户 17:33 定版）：头条区横向三排 =====
   合并块（原左大图+中列）内部三排：①大图新闻 224px ②紧凑新闻条 2×2
   ③双广告并排 96px；排间 10px，合并块总高约 496（与原区 ~495–512 同档，
   不加高、不拉伸、无内部空段）。右侧快讯+城市栏照参考图回位（300px 列）。
   分类信息与栏广告仍在其下通栏（20261025d 纵排不变）。 */
.home-lead-composition--v820{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start;min-width:0}
.home-lead-rows{display:flex;flex-direction:column;gap:10px;min-width:0}
.home-news-lead--hero{height:224px!important;aspect-ratio:auto!important}
.home-news-lead--hero .home-lead-caption h1{font-size:23px}
.home-news-lead--hero .lead-summary{-webkit-line-clamp:1}
.home-row2-news{display:grid;grid-template-columns:1fr 1fr;gap:2px 18px;min-width:0}
.row2-item{display:flex;gap:9px;align-items:center;padding:7px 0;border-bottom:1px solid #eee7d8;text-decoration:none;color:inherit;min-width:0}
.row2-item img{width:84px;height:56px;object-fit:cover;border-radius:5px;flex:none;display:block}
.row2-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.row2-copy .feed-cat{font-size:11.5px;font-weight:700;color:#c2512c}
.row2-copy strong{font-size:13.5px;line-height:1.4;font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.row2-copy small{font-size:11px;color:#84907f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-lead-composition--v820 .home-editorial-aside{display:flex;flex-direction:column;gap:14px;min-width:0}
@media (max-width:1150px) and (min-width:761px){
.home-lead-composition--v820{grid-template-columns:1fr}
.home-lead-composition--v820 .home-editorial-aside{display:grid;grid-template-columns:1fr 1fr;gap:10px}
}
/* 通栏分类卡图文等高：图宽 240（高 180）与补回描述后的文案自然高对齐，卡内无空段 */
@media (min-width:1151px){
.home-aside-strip .partner-card__img{flex:0 0 240px!important}
.home-aside-strip .partner-card__copy{padding:13px 16px!important}
}

/* ===== USC-FIX 20261025f（用户 17:45 范围纠正）：三排只作用于大图块本身 =====
   构图照参考图恢复三列：大图块（约 49%）＋中栏四条＋右栏 300px。
   大图块整体尺寸不变（高 495＝右栏高），块内三排：大图头条 314＋紧凑条 65
   ＋双广告 96＋排间 10×2＝495，靠压缩配平、不加高、不留空段。
   中栏四条照原样：内容高、栏内均匀分布、日期紧跟标题（撤销日期沉底）。 */
@media (min-width:1151px){
.home-lead-composition--v830{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr) 300px;gap:18px;align-items:start;min-width:0}
.home-bigblock{display:flex;flex-direction:column;gap:10px;min-width:0}
.home-bigblock .home-news-lead--hero{height:312px!important}
.home-bigblock-row2 .row2-item{padding:4px 0}
.home-lead-composition--v830 .home-news-feed--v810{height:495px!important;justify-content:space-between}
.home-lead-composition--v830 .home-news-feed--v810 > a{flex-direction:row!important;height:auto!important;align-items:flex-start}
.home-lead-composition--v830 .home-news-feed--v810 > a{padding:12px 2px!important}
.home-lead-composition--v830 .home-news-feed--v810 img{width:118px!important;height:84px!important}
.home-lead-composition--v830 .home-news-feed--v810 .feed-copy strong{font-size:16px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-lead-composition--v830 .home-news-feed--v810 .feed-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-lead-composition--v830 .home-news-feed--v810 .feed-copy small{margin-top:0!important}
.home-lead-composition--v830 .home-editorial-aside{display:flex;flex-direction:column;gap:14px;min-width:0}
}
@media (max-width:1150px) and (min-width:761px){
.home-lead-composition--v830{grid-template-columns:1fr}
.home-lead-composition--v830 .home-editorial-aside{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-bigblock{display:flex;flex-direction:column;gap:10px;min-width:0}
}
@media (max-width:760px){
.home-lead-composition--v830{grid-template-columns:1fr;gap:10px}
.home-bigblock{display:flex;flex-direction:column;gap:10px;min-width:0}
.home-bigblock .home-lead-partner{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
.home-bigblock .home-lead-partner .partner-cell:nth-child(2){display:flex!important}
.home-bigblock .home-lead-partner .partner-cell__copy strong{font-size:12.5px!important}
.home-bigblock .home-lead-partner .partner-cell__img{aspect-ratio:1200/340}
}
@media (max-width:760px){
.home-lead-composition--v820{grid-template-columns:1fr;gap:10px}
.home-news-lead--hero{height:auto!important;aspect-ratio:16/9.6!important}
.home-news-lead--hero .home-lead-caption h1{font-size:19px}
.home-row2-news{grid-template-columns:1fr}
.home-lead-rows .home-lead-partner{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
.home-lead-rows .home-lead-partner .partner-cell:nth-child(2){display:flex!important}
.home-lead-rows .home-lead-partner .partner-cell__copy strong{font-size:12.5px!important}
.home-lead-rows .home-lead-partner .partner-cell__img{aspect-ratio:1200/340}
}

/* ===== USC-FIX 20261025h（用户 2026-10-25 18:17 定版）＋20261025j（18:36/18:37 高度补令）：
   全幅横幅型广告位统一等分 5 格，整盒高度统一 H＝171px——基准＝生产首页 home_rail
   全幅横幅盒（标头行＋扁图条＋免责行）渲染总高实测（1440 档）。aside 型位格高＝171−77
   固定开销＝94px、横排扁卡（图左 36%＋品牌行＋标题＋赞助标，无描述/按钮）；缎带格高＝171。
   桌面 5 格一排；手机同排横滑、同高、不堆叠不减条。素材缺失不渲染（渲染器守卫既有）。 */
@media (min-width:761px){
.partner-ribbon{grid-template-columns:repeat(5,minmax(0,1fr))}
.partner-ribbon .partner-cell.partner-cell{height:171px!important;aspect-ratio:auto!important}
.partner-ribbon.partner-ribbon--top .partner-cell.partner-cell{height:171px!important;aspect-ratio:auto!important}
}
.partner-box--strip .partner-row--n5{grid-template-columns:repeat(5,minmax(0,1fr))}
.partner-box--strip .partner-row--n5 .partner-cell{flex-direction:row;height:94px;min-height:0}
.partner-box--strip .partner-row--n5 .partner-cell__img{width:36%;height:100%;min-height:0;flex:none}
.partner-box--strip .partner-row--n5 .partner-cell__copy{flex:1;justify-content:center}
.partner-box--strip.partner-box--list_infeed .partner-row--n5{grid-template-columns:repeat(5,minmax(0,1fr))}
.partner-box--strip.partner-box--list_infeed .partner-row--n5 .partner-cell{flex-direction:row;height:94px}
.partner-box--strip.partner-box--list_infeed .partner-row--n5 .partner-cell__img{height:100%}
@media (max-width:760px){
.partner-ribbon{display:flex!important;overflow-x:auto!important;overflow-y:hidden!important;gap:8px!important}
.partner-ribbon .partner-cell{flex:0 0 76%!important;height:171px!important;position:relative!important}
.partner-ribbon .partner-cell__img{position:absolute!important;inset:0!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important}
.partner-box--strip .partner-row{display:flex!important;overflow-x:auto!important;overflow-y:hidden!important}
.partner-box--strip .partner-row--n5 .partner-cell{flex:0 0 72%!important;flex-direction:row!important;height:94px!important;min-height:0!important}
.partner-box--strip .partner-row--n5 .partner-cell__img{width:34%!important;height:100%!important;min-height:0!important;aspect-ratio:auto!important}
.partner-box--strip.partner-box--list_infeed .partner-row--n5 .partner-cell{display:flex!important;flex:0 0 46%!important;flex-direction:row!important;height:94px!important}
.partner-box--strip.partner-box--list_infeed .partner-row--n5 .partner-cell__img{width:34%!important;height:100%!important}
}
/* ===== USC-FIX 20261025i（用户 2026-10-25 18:20 令）：手机端中栏新闻条改左图右文横排 =====
   首页中栏四条（.home-news-feed--v810）手机端原为图上文下竖排、右半空置；
   改横排：图固定 116×84 左置 cover 不变形，栏目/标题/日期在右，条目按内容高。桌面不动。 */
@media (max-width:760px){
.home-news-feed--v810{height:auto!important}
.home-news-feed--v810 > a{flex-direction:row!important;height:auto!important;align-items:flex-start!important;gap:10px!important;padding:10px 2px!important}
.home-news-feed--v810 > a img{width:116px!important;height:84px!important;flex:none!important;object-fit:cover!important}
.home-news-feed--v810 .feed-copy{flex:1;min-width:0}
}

/* ===== USC-FIX 20261025j（用户 2026-10-25 18:36/18:37 令）：5 格位整盒统一高度 H＝171 =====
   基准：生产首页 home_rail 全幅横幅盒（标头行＋扁图条＋免责行）渲染总高 171px（1440 档实测）。
   aside 型位整盒钉 171（flex 纵列、条体弹性填充、格随之伸缩，全端同高）；
   缎带格钉 171（(0,3,0)+!important 对齐 V10.42 手机层）。单/双卡盒已由渲染器改走 house_strip。 */
.partner-box--strip{display:flex;flex-direction:column;height:171px}
.partner-box--strip .partner-row{flex:1;min-height:0}
.partner-box--strip .partner-row--n5 .partner-cell{height:auto}
@media (max-width:760px){
.partner-ribbon .partner-cell.partner-cell{flex:0 0 76%!important;height:171px!important;position:relative!important}
.partner-ribbon .partner-cell .partner-cell__img{position:absolute!important;inset:0!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important}
.partner-box--strip{height:171px}
.partner-box--strip .partner-row--n5 .partner-cell{height:auto!important}
.partner-box--strip.partner-box--list_infeed .partner-row--n5 .partner-cell{height:auto!important}
}

/* ===== USC-FIX 20261025k：条位在窄容器（文章文内/照片格）内不得撑宽页面（20261025j 验收发现） ===== */
.partner-box--strip{max-width:100%;min-width:0}
.partner-box--strip .partner-row{min-width:0;max-width:100%}
.partner-box--strip .partner-cell{min-width:0}
.home-photo-cell{min-width:0}

/* === USC-FIX 20261025l+m（用户 19:07-19:31 连令）：整图化（广告位只放 a+img 整图、
   品牌/标题/角标已合成进图）＋手机独立模板（每排 2 卡、尾格通栏、格高 145）
   ＋手机页眉 logo 居中放大＋底栏 SVG 图标尺寸。桌面 dv 默认显、mv 默认藏。 === */
.partner-box--mv,.partner-ribbon--mv{display:none}
.partner-box--strip .partner-cell__img{display:block;height:100%}
.partner-box--strip .partner-cell__img img{width:100%;height:100%;object-fit:cover}
.partner-note__img{display:block}
.partner-note__img img{width:100%;height:auto;display:block;border-radius:10px}
@media (max-width:760px){
.partner-box--dv,.partner-ribbon--dv{display:none!important}
.partner-box--mv{display:block}
.partner-ribbon--mv{display:block}
.partner-mgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.partner-mcell{display:block;height:145px;border-radius:12px;overflow:hidden;background:#fff}
.partner-mcell--full{grid-column:1/-1}
.partner-mcell__img{display:block;width:100%;height:100%}
.partner-mcell__img img{width:100%;height:100%;object-fit:cover;display:block}
.home-photo-cell{grid-column:1/-1}
.home-lead-partner{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.home-lead-partner .partner-cell{display:block;height:145px;border-radius:12px;overflow:hidden}
.home-lead-partner .partner-cell:only-child{grid-column:1/-1}
.home-lead-partner .partner-cell__img{display:block;width:100%;height:100%}
.home-lead-partner .partner-cell__img img{width:100%;height:100%;object-fit:cover;display:block}
.site-header .brand{flex:1 1 100%;order:-1;text-align:center}
.site-header .brand-logo-img{width:188px;height:auto;margin:0 auto}
.site-header .header-main{row-gap:6px}
.site-header .header-actions{margin-left:auto}
.site-header .header-actions a{font-size:13px;padding:4px 10px}
.mobile-nav a svg{width:22px;height:22px;display:block;margin:0 auto 1px}
}

/* === USC-FIX 20261025n（总单第一条）：文章页手机版式定罪修复——.article-layout
   两栏网格在移动端收叠为 1fr 后，轨道自动最小宽被正文大图 min-content 撑至
   960px（.route-article .detail max-width:960px + 正文图无 max-width 上限），
   整页横溢至 985。此层以 minmax(0,1fr) 斩断撑爆链，并给全页型媒体元素上安全网。 === */
@media (max-width:760px){
.article-layout{grid-template-columns:minmax(0,1fr)!important}
.article-main{min-width:0!important}
.route-article .detail,.article-layout .detail{max-width:100%!important}
.detail img,.detail-body img{max-width:100%!important;height:auto!important}
.detail figure,.detail-body figure{max-width:100%!important}
.detail .lead{overflow-wrap:anywhere}
main img,main video,main iframe,main table,main pre{max-width:100%}
}

/* === USC-FIX 20261025o（验收回修）：条 mv 盒高解钉（旧 j 层 height:171 压住
   三排网格）、footer_brand 的 mv 解存量隐藏、页眉 logo 居中放大（旧层以
   height:42px!important 控图，须以高度口径回压：60px→宽约 181px）、头条 twin
   格高回压至 145（旧层 96px!important 与图 aspect 规则叠加塌至 48）。 === */
@media (max-width:760px){
.partner-box--strip.partner-box--mv{height:auto!important}
.partner-box--footer_brand.partner-box--mv{display:block!important}
.site-header .header-main{flex-wrap:wrap}
.site-header .brand{display:block;text-align:center}
.site-header .brand-lockup{display:flex;justify-content:center}
.site-header .brand-lockup .brand-logo-img{height:60px!important;max-height:60px!important;width:auto!important}
.home-bigblock .home-lead-partner .partner-cell,.home-lead-partner .partner-cell{height:145px!important}
.home-lead-partner .partner-cell__img{position:static!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important}
.home-lead-partner .partner-cell__img img{width:100%!important;height:100%!important;object-fit:cover!important}
}

/* === USC-FIX 20261025p（终验回修二处）：①手机页眉 logo 真居中——.brand 原为
   flex:0 0 auto 的 181px 子项、与 .header-actions 同排，o 层的 text-align/
   justify 居中对它无从生效（探针实测 centerOff=-93）；改 brand 占满整行并
   居中、actions 绝对定位收小置于 logo 行右侧。②首页 photo_grid 的 mv 尾格
   被存量规则 .home-photo-news a:nth-child(n+4)/(n+5){display:none} 误伤
   （格本身是 <a> 且为第 4/5 子元素，CDP matched styles 定罪），以更高
   特异性 + !important 放行。 === */
@media (max-width:760px){
.site-header .header-main{position:relative}
.site-header .brand{flex:1 1 100%!important;justify-content:center!important}
.site-header .header-actions{position:absolute;right:0;top:10px;margin-left:0!important}
.site-header .header-actions a{padding:4px 8px!important;font-size:12px!important;line-height:1.5!important}
}
.home-photo-news .partner-box--home_photo_grid .partner-mcell{display:block!important}

/* === USC-FIX 20261025q（R4）：①/asylum 咨询表单移入页首图位——.asylum-hero
   占横幅位全宽（form-panel 原 max-width:850px 在此解除），桌面紧凑：四字段
   一排（consult-grid 4 列）、简述框高收紧；移动端沿 consult-grid 单列堆叠。
   ②庇护协助推广块 .site-service：白底细框＋柿棕左界，标签 chip＋标题＋口径
   句＋按钮；移动端纵排、按钮通栏。 === */
.asylum-hero{scroll-margin-top:84px}
.asylum-hero .section-title{margin-bottom:8px}
.asylum-hero__panel{max-width:none!important;margin-top:0}
@media(min-width:761px){
.asylum-hero__panel .consult-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.asylum-hero__panel textarea{height:96px}
}
.site-service{display:flex;gap:16px;align-items:center;border:1px solid #e5ded2;border-left:4px solid #B0491F;background:#fffdf9;border-radius:12px;padding:16px 18px;margin:18px 0}
.site-service__tag{display:inline-block;font-size:11px;letter-spacing:.08em;color:#B0491F;border:1px solid #B0491F;border-radius:999px;padding:1px 8px;line-height:1.6}
.site-service h3{margin:6px 0;font-size:19px}
.site-service__body p{margin:0 0 4px}
.site-service__note{color:#657168;font-size:12.5px}
.site-service__cta{flex:0 0 auto;white-space:nowrap}
@media(max-width:760px){
.site-service{flex-direction:column;align-items:stretch}
.site-service__cta{text-align:center}
}

/* === USC-FIX 20261025r（页眉 duo-3 对称环绕＋手机密度收口）：仅 ≤760px。
   页眉：header-main 改三列 grid——左钮/居中 logo/右钮，搜索整行第二排；
   .header-actions 以 display:contents 让两钮直接入格。访客态左＝描边 pill
   （登录）、右＝棕红 pill（注册），各 58×30、与 logo 等距 18px；登录态
   （Worker 页 .header-actions--user）两钮等宽 76px 承「我的账号/私信」。
   覆盖 p 层 actions 绝对定位与 brand 占满整行两条（居中改由 grid 保证）。
   密度：mv 条/缎带已于真源侧只出 2 格（一排），本层无高度钉子，盒高随
   单排自然收至约 171。 === */
@media (max-width:760px){
.site-header .header-main{display:grid!important;grid-template-columns:1fr auto 1fr;grid-template-areas:"left brand right" "search search search";align-items:center;row-gap:2px}
.site-header .brand{grid-area:brand;flex:none!important;justify-self:center}
.site-header .header-news-search{grid-area:search}
.site-header .header-actions{display:contents!important;position:static!important}
.site-header .header-actions a{display:flex!important;align-items:center;justify-content:center;height:30px;width:58px;padding:0!important;border-radius:15px;font-size:13.5px!important;line-height:1;white-space:nowrap;text-decoration:none}
.site-header .header-actions a:first-child{grid-area:left;justify-self:end;margin-right:18px;border:1.5px solid #d9d0c8!important;background:#fff!important;color:#333!important}
.site-header .header-actions a:last-child{grid-area:right;justify-self:start;margin-left:18px;background:#B0491F!important;color:#fff!important;border:1.5px solid #B0491F!important}
.site-header .header-actions--user a{width:76px}
}

/* === USC-FIX 20261025s（页眉第二排定版「快讯条」，用户 20:30 选 alt-2）：
   浅米带 #faf4e8 高 40 圆角 9——左棕红小标「即时快讯」、中最新标题单行
   截断（3 条时纯 CSS 纵向轻轮播 12s）、右「更多 →」；整带为新闻列表链。
   仅 ≤760px 显示并占 grid 的 search 区；手机端原搜索框撤下（/search 页与
   桌面搜索不动——桌面 .header-ticker 恒隐藏、搜索框恒显）。 === */
.header-ticker{display:none}
@media (max-width:760px){
.site-header .header-news-search{display:none!important}
.site-header .header-ticker{grid-area:search;display:flex;align-items:center;background:#faf4e8;border-radius:9px;height:40px;padding:0 12px;text-decoration:none;margin-top:2px}
.header-ticker__tag{flex:none;background:#B0491F;color:#fff;font-size:12px;padding:3px 8px;border-radius:4px;letter-spacing:.5px;line-height:1.35}
.header-ticker__track{flex:1;margin-left:10px;overflow:hidden;height:20px;min-width:0}
.header-ticker__roll{display:block}
.header-ticker__item{display:block;font-size:13.5px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:20px;height:20px}
.header-ticker--roll .header-ticker__roll{animation:uscTicker 12s ease-in-out infinite}
.header-ticker__more{flex:none;margin-left:8px;font-size:12.5px;color:#B0491F;white-space:nowrap}
@keyframes uscTicker{0%,28%{transform:translateY(0)}36%,61%{transform:translateY(-20px)}69%,94%{transform:translateY(-40px)}100%{transform:translateY(0)}}
}

/* === USC-FIX 20261026w（手机底栏案1「同款直用」，用户 2026-10-26 01:40 改定，
   覆盖 20261025v 的案3「放大图菜单」——案3 太大）：栏高 66px；四格图标收至
   30px（48 viewBox 案1成套彩图·柔和色版）、标签 11px 常规字重（未选 #5A5A5A、
   选中 #B0491F/600）；中央发布＝52px 棕红圆盘（白环 3px＋棕红影）凸出栏面
   17px（390 实测），盘内嵌 44px 白色相机插图＋右下白圆棕加号徽，无文字标签。仅 ≤760px。 === */
@media (max-width:760px){
.mobile-nav{height:66px;padding:0 5px max(7px,env(safe-area-inset-bottom))!important;align-items:stretch!important}
.mobile-nav a{min-height:0!important}
.mobile-nav a .mnav-ic{width:30px!important;height:30px!important;margin:0 auto!important}
.mobile-nav a small{font-size:11px!important;color:#5A5A5A!important;font-weight:400;margin-top:3px;line-height:1.2}
.mobile-nav a.on small{color:#B0491F!important;font-weight:600}
.mobile-nav a.new{position:relative}
.mnav-fab__circle{position:absolute;left:50%;top:-18px;transform:translateX(-50%);width:52px;height:52px;border-radius:50%;background:#B0491F;box-shadow:0 6px 15px rgba(176,73,31,.38),0 0 0 3px #fff;display:flex;align-items:center;justify-content:center}
.mnav-fab__circle .mnav-fab__cam{width:44px!important;height:44px!important;display:block}
}
/* === USC-FIX 20261025u 收尾三修：网格空半格根治（撤销新闻卡 n+4 隐藏＋两列网格奇数末条通栏）·正文断行收口（anywhere→break-word、数字单位 .nb 保护、段距/行高/首字下沉收敛、标题 balance）·列表卡 .article-row 左图右文网格重构（chip 归右列、图 116 跨行、无图帖列 :has 隔离） === */
@media (max-width:760px){
.home-photo-news a:nth-child(n+4){display:block!important}
.home-photo-news a:nth-child(n+5){display:block!important}
.home-photo-news>a:last-of-type:nth-child(odd),.city-editions-grid--v810>:last-child:nth-child(odd),.article-related-grid>:last-child:nth-child(odd){grid-column:1/-1}
.article-row:has(.article-row-thumb){display:grid;grid-template-columns:116px minmax(0,1fr);grid-template-areas:"img tag" "img copy";column-gap:10px;row-gap:3px}
.article-row:has(.article-row-thumb) .article-row-thumb{grid-area:img;width:116px;height:84px;object-fit:cover;margin:0;align-self:start}
.article-row:has(.article-row-thumb) .news-tag{grid-area:tag;justify-self:start;align-self:start}
.article-row:has(.article-row-thumb) .article-row-copy{grid-area:copy;min-width:0;align-self:start}
.article-row:has(.article-row-thumb) .article-row-copy p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.article-row:has(.article-row-thumb) .arrow{display:none}
}
.news-rich-body,.detail-body,.detail .lead,.detail .meta{overflow-wrap:break-word!important;word-break:normal!important}
.route-article .news-rich-body p,.detail .news-rich-body p{margin-bottom:12px!important}
.detail h1{text-wrap:balance}
.nb{white-space:nowrap}
@media (max-width:760px){
.route-article .news-rich-body p,.detail .news-rich-body p{line-height:1.8!important}
.detail.has-dropcap .detail-body>p:first-of-type::first-letter,.detail.has-dropcap .news-rich-body>p:first-of-type::first-letter{font-size:40px!important;line-height:1.05!important;padding:3px 8px 0 0!important}
}
/* ============================================================
   v 层 · 全站文字背景统一（用户 2026-10-25 21:55 令）
   原则：带文字的内容面板一律纯白底 #fff、深色字；
   柿棕 #B0491F 只作标题/图标/边线点缀。结构、文案、功能不动。
   合并方式：追加到 build/assets/site_v1052.css 末尾（u 层之后）。
   审计与证据：audit/文字背景统一交账-20261025.md
   ============================================================ */

/* --- A1 注册/登录侧栏 .auth-benefits：去土黄渐变＋照片罩，白底深字 ---
   原终态：background-image 棕渐变 rgba(74,36,16,.94)→rgba(138,74,36,.90)
   叠城市照片、color:#fff；eyebrow #f8d69f、正文 #d6e7de、返回链 #c8e1d2、
   卖点图标底 #ffffff1e/字 #ffe1a5、小字 #d3e1d9 —— 浅色字随底一并改深。 */
.auth-benefits{background:#fff;background-image:none;color:var(--ink);border-right:1px solid var(--line)}
.auth-benefits:after{border-color:rgba(176,73,31,.08)}
.auth-back{color:#2a453a}
.auth-back:hover{color:#B0491F}
.auth-benefits .eyebrow{color:#B0491F}
.auth-benefits>p{color:#5a4e40}
.auth-benefit-list>div>span{background:#fdf0ec;color:#B0491F}
.auth-benefit-list small{color:#6e6156}
@media (max-width:750px){.auth-benefits{border-right:0;border-bottom:1px solid var(--line)}}

/* --- A2 会员中心欢迎头 .welcome-header：深绿渐变 → 白底 ---
   原终态：linear-gradient(120deg,#143f37,#2a6654)、color:#fff、
   eyebrow #f6d29a、正文 #d5e8de。 */
.welcome-header{background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}
.welcome-header .eyebrow{color:#B0491F}
.welcome-header p{color:#5a4e40}

/* --- B1 文章摘要盒 .lead：米底 → 白底（金色左边线保留作点缀） ---
   原终态：.detail .lead #f7f1e6；.route-article .detail .lead #f6f0e5。 */
.detail .lead,.route-article .detail .lead{background:#fff}

/* --- B2 通知/空状态 .notice/.empty：米底 → 白底 ---
   原终态：#f6f0e6（边框 1px #e8dcc9 保留，盒形不丢）；
   good/bad 变体保留其语义边框色与字色，仅去底色。 */
.notice,.empty{background:#fff}
.notice.good{background:#fff}
.notice.bad{background:#fff}

/* --- B3 商家/房源详情联系方式盒 .contact-box：米底 → 白底 ---
   原终态：#f5efe3（前层 #f1f5ef）。 */
.contact-box{background:#fff}

/* --- B4 文章来源卡 .news-source-card：米底 → 白底（边框保留） ---
   原终态：#f7f3ec、border #e7ddcf。 */
.news-source-card{background:#fff}

/* --- B5 页眉快讯条 .header-ticker：米带 → 白带 ---
   注：#faf4e8 米带系 2026-10-25 20:30 用户亲选 alt-2 的配色部分；
   本条按 21:55「所有文字背景用网站统一」新令覆盖配色，结构、
   柿棕标与轮播不动。如需保留米带，删本节即可，不影响其余各条。
   【2026-10-25 22:11 用户点定更新】「快讯条也改纯白」——本节保留
   执行、合并时不得删节；上句删节口径与 20:30 米带选择一并作废。 */
.site-header .header-ticker{background:#fff}

/* --- B6 首页分类信息栏 .market-compact-bar：米底 → 白底 ---
   原终态：#f3ede2（上下边线保留）。 */
.market-compact-bar{background:#fff}

/* --- B7 近白归一：#fffdf8/#fffdf9 → 纯白（差 1–2 色阶，无视觉变化） --- */
.site-service,.detail,.mobile-nav{background:#fff}
.form-panel.asylum-consult{background:#fff}

/* ============================================================
   E 类 · 员工后台深底文字面板（body.staff-console / .staff-auth）
   追加依据：用户 2026-10-25 22:12 令「整个网站统一白底」，
   前单登记未改的 E 类就此纳入。结构、功能、文案不动。
   真源定位（staged build CSS 字节偏移，级联核对）：
   - 侧栏终态 @229057 body.staff-console .admin-sidebar
     background:#4A2410!important（土棕），字 #EBD9B4、
     链接 #F3E7CF!important、hover 浅色罩 rgba(244,239,231,.16)、
     active 底 var(--pine) 深绿＋白字；
   - 顶栏终态 @100539 .console-topbar background:var(--brand-950)!important
     （--brand-950 终值 @241343＝#2A1A10 深棕），标题 b #F4EFE7!important、
     small #B9CDBB!important、链接 #A9D6BE!important、span #DCE9DE!important；
   - 后台页底 @151684 .staff-console background:#f8f5ef；
     内容面板群 #fffefa、表头 th #f3ecdf、种子台 .editorial-seed-console #f8f3e8；
   - 员工登录 @181483 .staff-auth background:#faf8f3!important、
     .staff-login #fffdf9。
   本地无后台页面 HTML（标记由 VPS Worker 生成，同 A2 情形），
   本节以规则级核对为准，未做模拟；部署后须登录态复验。
   ============================================================ */
body.staff-console{background:#fff}
body.staff-console .admin-sidebar{background:#fff!important;color:var(--ink);border-color:var(--line)}
body.staff-console .admin-sidebar h3{color:#B0491F!important}
body.staff-console .admin-sidebar a{color:#465950!important}
body.staff-console .admin-sidebar a:hover{background:#fdf0ec;color:#B0491F!important}
body.staff-console .admin-sidebar a.active{background:#fdf0ec;color:#B0491F!important}
body.staff-console .console-topbar{background:#fff!important;color:var(--ink)}
body.staff-console .console-topbar .console-title b{color:var(--ink)!important}
body.staff-console .console-topbar .console-title small{color:#6e6156!important}
body.staff-console .console-links a{color:#2a453a!important}
body.staff-console .console-links a:hover{color:#B0491F!important}
body.staff-console .console-links span{color:#5a4e40!important}
body.staff-console :is(.panel,.form-panel,.admin-record,.stat,.ops-card,.command-hero,.command-alert){background:#fff}
body.staff-console th{background:#fff}
.editorial-seed-console{background:#fff}
.staff-auth{background:#fff!important}
.staff-auth .staff-login{background:#fff}

/* 10.74.8 补强（部署复验抓出）：.route-article .detail 终态 #fffefb!important，fix_v B7 无 !important 未压过，补 !important 归一纯白 */
.route-article .detail{background:#fff!important}

/* === USC-FIX 20261026x（10.74.11 小批，用户连令）：①删手机漂浮客服（01:37 令「手机上太占地方占视线」）——.support-widget 仅 ≤760px 隐藏，标记不删、桌面端原样；②列表卡 .article-row 图文等高对齐（02:00 令「右边的所有文字上下要和左边的图对齐」）——带图行改两列等高：图跨行拉满右列总高 cover 填满，右列（chip/标题/摘要/署名）flex 纵列、署名行 margin-top:auto 沉底与图底齐平，标题/摘要各至多 2 行省略截断，文字禁流出图下；无图帖列不带 .article-row-thumb、:has 天然隔离不受影响。手机与桌面同口径。 === */
@media(max-width:760px){.support-widget{display:none!important}}
.article-row:has(.article-row-thumb){grid-template-rows:auto 1fr;align-items:stretch}
.article-row:has(.article-row-thumb) .article-row-thumb{align-self:stretch;height:100%;min-height:84px}
.article-row:has(.article-row-thumb) .article-row-copy{align-self:stretch;height:100%;display:flex;flex-direction:column}
.article-row:has(.article-row-thumb) .article-row-copy h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.article-row:has(.article-row-thumb) .article-row-copy small{margin-top:auto}

/* === USC-FIX 20261026y（10.74.12 广告黑屏热修）：桌面 strip 广告格整图满幅。病灶：strip 标记整图化后只剩 a+img，旧「左图右文」CSS 把 .partner-cell__img 钉在 36% 左列、余约 64% 透出格底 #292019 成黑块。本层套缎带已验满幅配方：格 position:relative;display:block、格底改浅色 #f5f0e6 兜底；__img 绝对填满整格、img 维持 cover；显式覆盖 --list_infeed 套 .partner-row--n5 的同病 36% 规则。缎带规则、手机 mv 规则、strip 盒高 171px 一律不动。 === */
.partner-box--strip .partner-cell{position:relative;display:block;background:#f5f0e6}
.partner-box--strip .partner-cell__img{position:absolute;inset:0;width:100%;height:100%}
.partner-box--strip .partner-row--n5 .partner-cell__img{position:absolute;inset:0;width:100%;height:100%}

/* === 20261026y (10.74.13) 甲1 手机广告分轨接线：首页头条双格改用 _mcard 手机整图、会员通栏改用 _mstrip 手机整图；桌面 dv 标记与图源零改动，≤760 以 :has 守门互斥显隐（mv 变体缺失时 dv 照常显示） === */
.lead-partner-mv{display:none}
.hub-partner .partner-cell--mvstrip{display:none}
.hub-partner .partner-cell--mvstrip .partner-cell__img{display:block;width:100%;height:100%}
.hub-partner .partner-cell--mvstrip img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:760px){
.home-lead-partner:has(.lead-partner-mv)>.partner-cell:nth-child(n),.home-bigblock .home-lead-partner:has(.lead-partner-mv)>.partner-cell:nth-child(n),.home-lead-rows .home-lead-partner:has(.lead-partner-mv)>.partner-cell:nth-child(n){display:none!important}
.home-lead-partner .lead-partner-mv{display:grid;grid-column:1/-1}
.hub-partner:has(.partner-cell--mvstrip) .partner-cell:not(.partner-cell--mvstrip){display:none!important}
.hub-partner .partner-cell--mvstrip{display:block}
}

/* === 20261026z (10.74.14) 甲2：全站排版守卫层并入（源 audit/typo-audit-20261026/typo-guard-20261026.css，Tier A 零权重兜底＋Tier B 定向锁定 B1/B2/B3；追加位置后于全部既有层） === */
/* ---------- Tier A · 零权重兜底（防回归） ---------- */
:where(h1, h2, h3, h4, h5, p, li, dt, dd, blockquote, figcaption,
.lead,.eyebrow,.detail-body,.news-rich-body,
.article-row p,.item-card p,.auth-benefits > p) {
text-align: start;
}
:where(h1, h2, h3) {
text-wrap: balance;
}
:where(p, li, dd, blockquote, figcaption) {
overflow-wrap: break-word;
word-break: normal;
}
:where(.article-row) {
align-items: flex-start;
}
/* ---------- Tier B · 定向锁定（审计实证点位） ---------- */
/* B1 文章标题断行锁定：基础层 .detail h1 的 anywhere 已同步在真源改 break-word，本条 !important 双保险 */
.detail h1 {
overflow-wrap: break-word!important;
word-break: normal!important;
}
/* B2 阅读面文字对齐锁定（现行计算值均为 start，锁定防未来层误改） */
.detail-body,.news-rich-body,.auth-benefits > p,.auth-benefits h1 {
text-align: start!important;
}
/* B3 眉题字距收敛（非 !important：同权重后写胜出，本层位于全文件末尾；
原守卫稿选择器 .auth-benefits.eyebrow 为同元素复合，与实际 DOM（.auth-benefits 后代 .eyebrow）不符，接线时已改后代选择器） */
.auth-benefits .eyebrow,.eyebrow {
letter-spacing:.06em;
}

/* ===== 20261026zz (10.74.15) 甲3 · 阅读字号夺回层（源 audit/toolbar-fix-20261026/reader-font-fix-layer.css，原样追加） =====
   根因：@media(max-width:680px) 内 .route-article .news-rich-body p{font-size:16px!important}
   把无 !important 的字号切换规则整体压死——手机上点四档只有选中态变化、正文恒 16px。
   本层与锁定规则同特异性 (0,2,1)、同带 !important、居文件末尾，靠次序夺回；
   桌面端原靠次序险胜，本层一并钉死，防后续层再翻盘。数值沿用原设计刻度。 */
.detail[data-font="s"] p,.detail[data-font="s"] li{font-size:15.5px!important}
.detail[data-font="l"] p,.detail[data-font="l"] li{font-size:18.5px!important;line-height:1.92}
.detail[data-font="xl"] p,.detail[data-font="xl"] li{font-size:20px!important;line-height:1.95}

/* === 20261026zz2 (10.74.17) 乙批4：文章页庇护服务块标题改 h2（治 B3 跳级），样式与原 h3 同 === */
.site-service h2{margin:6px 0;font-size:19px}

/* === 20261026zz3 (10.74.20)：会员专区第二广告格 .hub-partner--dvonly 仅桌面出。
   member_strip 追加第二格与第一格并排满行（桌面 4 列/2 列均整除）；手机 ≤760
   整格隐藏，mv 维持第一格 _mstrip 通栏现行形态，第一格既有规则零改动。 === */
@media (max-width:760px){
.hub-partner--dvonly{display:none!important}
}

/* === 20261026zz4 (10.74.21)：新闻列表（article_cards）手机两列卡片网格。
   仅 ≤760 生效、仅作用于带 --cards 的 article-list（/news/ 总览·栏目·城市
   列表与 /asylum 列表共用组件）；桌面与其他 .article-list（论坛/首页社区）
   零改动。卡片纵式：图在上（cover 不拉伸）、chip 自适应宽、标题 2 行截断、
   摘要 2 行、日期沉底；通栏子元素（广告条/服务块）跨两列；奇偶收口的
   --wide 末卡以经典横排通栏呈现（consumer 侧标类），网格永不留空半格。 === */
@media (max-width:760px){
.article-list.article-list--cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.article-list.article-list--cards>.article-row{display:flex;flex-direction:column;align-items:stretch;gap:7px;padding:10px}
.article-list.article-list--cards>.article-row .article-row-thumb{order:-1;width:100%;height:96px;min-height:0;align-self:auto;object-fit:cover;border-radius:8px}
.article-list.article-list--cards>.article-row .news-tag{align-self:flex-start}
.article-list.article-list--cards>.article-row .article-row-copy{flex:1;display:flex;flex-direction:column;height:auto;align-self:stretch;min-width:0}
.article-list.article-list--cards>.article-row .article-row-copy p{-webkit-line-clamp:2}
.article-list.article-list--cards>.article-row .article-row-copy small{font-size:11px}
.article-list.article-list--cards>.article-row .arrow{display:none}
.article-list.article-list--cards>.partner-box,.article-list.article-list--cards>.site-service{grid-column:1/-1}
.article-list.article-list--cards>.article-row--wide{grid-column:1/-1;flex-direction:row;align-items:center;gap:11px}
.article-list.article-list--cards>.article-row--wide .article-row-thumb{order:0;width:116px;height:84px;flex:none;align-self:center}
.article-list.article-list--cards>.article-row--wide .news-tag{align-self:center}
.article-list.article-list--cards>.article-row--wide .article-row-copy{height:100%}
}

/* === USC-FIX 20261026zz5（10.74.25 · 广告文字遮挡治理批1：条带角标＋缎带比例）===
   普查定罪（audit/ad-text-crop-20261026，VPS CDP 探针 1440/390＋768–1920 宽度扫描）：
   ① 桌面条带 strip 格恒 3.0:1 装 _wide（1.75）中心 cover，可见窗源行 [133,507]，
      「赞助商广告」角标（源行 18–64）整段被裁——全站条带 440/440 无一幸免；
   ② 缎带 dv 格高钉死 171px 而宽随容器 130–273px，比 0.76–1.60，仅 1440 附近安全：
      窄宽横裁角标与品牌行左端（768 宽角标整段出画），≥1680 纵裁标题第二行下沿。
   解（不动创意像素）：① strip 图顶对齐——可见窗变源行 [0,373]，完整覆盖 _wide
   文字全域（角标 18–64／品牌行 178–212／标题至 368，下余 5）；
   ② 缎带 dv 格改 aspect-ratio:3/2（＝_rib 原生比 960×640）、高随宽缩放，全宽度零裁切。
   作用域核对：strip 选择器只命中 .partner-box--strip 内 .partner-cell__img 的 img
   （手机格为 .partner-mcell__img 不受影响；hub 格无 strip 祖先不受影响）；
   缎带规则只命中 .partner-ribbon--dv（手机缎带为 --mv 不受影响）。 */
.partner-box--strip .partner-cell__img img{object-position:50% 0}
.partner-ribbon--dv .partner-cell.partner-cell{height:auto!important;aspect-ratio:3/2!important}

/* === USC-FIX 20261026zz6（10.74.26 · 广告文字遮挡治理批2：宽扁格换图＋顶缎带补修）===
   ① 顶缎带补修：批1 复测发现 .partner-ribbon--top 仍钉 171px——其专属规则
      .partner-ribbon.partner-ribbon--top .partner-cell.partner-cell
      {height:171px!important;aspect-ratio:auto!important}（特异性 0,4,0）
      胜过 zz5 的 0,3,0。本层以同特异性＋更晚顺序覆盖，顶缎带同按 3/2 缩放。
   ② 头条双格（.home-lead-partner）：consumer 已改出 _mstrip 磁贴
      （.partner-cell--strip），但格比约 3.53 仍大于 _mstrip 原生 2.857，
      中心裁切窗（源行约 [33,317]）装不下文字带跨度（行 16–312）。
      按解③只调广告格自身：格改按创意原生比 1000/350 定高（1440 下
      307px 宽 → 高约 107px，原 94px），文字带全幅入窗。
      hub/栏目补位格比（2.70/2.75）与 _mstrip 相符，仅换图、不动格盒。 */
.partner-ribbon.partner-ribbon--top .partner-cell.partner-cell{height:auto!important;aspect-ratio:3/2!important}
.home-lead-partner .partner-cell--strip{height:auto!important;aspect-ratio:1000/350!important}

/* === USC-FIX 20261026zz7（10.74.27 · 广告文字遮挡治理批3：头条双格中宽补修）===
   批2 复测（768–1920 宽度扫描）发现：≤1024 时头条双格改由旧层
   .home-lead-partner .partner-cell__img{aspect-ratio:1200/340} 接管格比
   （恒 3.53），zz6 的格级 aspect-ratio 不及该形态，_mstrip 角标上裁 17、
   标题下裁 7–9。本层把 strip 磁贴图框比改回创意原生 1000/350；
   ≥1280 时图框为绝对满幅、aspect 不生效，无副作用。 */
.home-lead-partner .partner-cell--strip .partner-cell__img{aspect-ratio:1000/350!important}

/* === USC-FIX 20261026zz8（10.74.28 · 广告平板带 A 案根治）===
   hub/dept 两族平板带（761–1439px）专用变体 _tstrip 经 consumer
   sponsor_tile_strip_tab_html 以 <picture> 接线：图框内 picture 须满幅
   承接 img 的 cover 盒，否则 img 的 height:100% 链断裂、图框塌陷。
   作用域仅 .partner-cell--tstrip（hub/dept 两族磁贴），其他位族无
   picture 元素，零影响；≥1440/≤760 时 picture 内仍出 _mstrip，
   形态与既有合格形态一致。 */
.partner-cell--tstrip .partner-cell__img picture{display:block;width:100%;height:100%}
/* 黄页类目导航（20261026 类目落地页批）：度量镜像 .forum-boards/.forum-board，
   专用类名 .biz-cats/.biz-cat，避免与论坛样式跨节耦合。 */
.biz-cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 22px}
.biz-cat{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--ink);box-shadow:0 1px 2px rgba(38,28,22,.04);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.biz-cat strong{display:block;font-size:15px}
.biz-cat small{color:var(--muted);font-size:12px}
.biz-cat:hover{border-color:var(--gold)}
.biz-cat.on{border-color:var(--pine);box-shadow:inset 0 0 0 1px var(--pine)}
.biz-cat.on strong{color:var(--pine)}
@media(max-width:900px){.biz-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* === USC-FIX 20261026zz9（10.74.30 · 头条第二排双条并列，用户 2026-10-26 15:22 点定方案一）===
   consumer 头条序列第 2、3 条入 row2（feed 顺延补位），本层只管 row2 容器形态：
   ≥761px 两列等宽并列，第二条以左边框＋内距分隔；仅一条时通栏（:only-child）。
   ≤760px 不设并列——.row2-item 为块级 flex，天然上下堆叠、两条全显。
   并列可读阈值实测（改前几何）：每条 ≥240px 即可（标题 13.5px 两行截断＋日期单行）；
   1440 档 bigblock 631px→每条 ≈307px、1280 档 536px→≈260px、1024 档单列构图
   bigblock 934px→≈459px，全桌面/平板带均达标，堆叠阈值即手机界 760px。
   日期来源行在并列窄列内禁换行（省略号收尾），避免两条不等高撑破行高口径。 */
@media (min-width:761px){
.home-bigblock-row2{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.home-bigblock-row2 .row2-item + .row2-item{border-left:1px solid #eee7d8;padding-left:16px}
.home-bigblock-row2 .row2-item:only-child{grid-column:1/-1}
.home-bigblock-row2 .row2-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}

/* === USC-FIX 20261026zz10（10.74.31 · 中列新闻流 4→5 条，用户 2026-10-26 15:29 追加）===
   consumer feed 取头条序列第 4–8 条共 5 条；feed 列钉高 495 不变（zz 前 v830 口径），
   5 条以等分槽位装入：≥1151px 槽高 99＝内容 86＋上下 padding 6×2＋底边框 1；
   内容 86 的构成＝图 76 与文列取大——文列实测 85.5（10.74.31 首验：栏目＋题 2 行＋
   日期），经 feed-copy gap 收 1px、题行高 1.38 收至 ≈83，留 ≈3px 余量；
   第 5 条底边由 flex 等分构造性落回列底——不溢出、无滚动（容器 overflow:hidden 既有）。
   flex 必须带 !important：2407 行旧层有 .home-news-feed--v810>a{flex:none!important}
   （≥1151 档生效），无 !important 的 flex 简写会被它顶掉（10.74.31 首验实测）。
   图微调 108×76（原 118×84，比例 1.42≈原 1.40），标题字号不缩、仍 2 行钳制。
   901–1150px 单列带：条高由现行 186 收为 150，5 条总高 ≈750 与改前 4 条 746 同口径，
   不放大版面；≤900px 与手机端维持自然堆叠（feed 高 auto、5 条全显、间距照现行）。 */
@media (min-width:1151px){
.home-lead-composition--v830 .home-news-feed--v810 > a{flex:1 1 0!important;min-height:0;padding:6px 2px!important}
.home-lead-composition--v830 .home-news-feed--v810 > a img{width:108px!important;height:76px!important}
.home-lead-composition--v830 .home-news-feed--v810 .feed-copy{gap:1px}
.home-lead-composition--v830 .home-news-feed--v810 .feed-copy strong{line-height:1.38}
}
@media (min-width:901px) and (max-width:1150px){
.home-news-feed--v810 > a{height:150px}
}

/* === USC-FIX 20261026zz11（桌面条带盒高收口 · 甲案）===
   病灶：条带盒高 171px 系旧三段式（标头行＋扁图条＋免责行）标定，整图化后盒内
   只剩一行格，格被 aspect-ratio:3/1 钉为宽÷3（83–94px），每盒死白 39–46%、
   首页 8 条合计真死白 518.5px；infeed 变体遗留 height:94px!important 使格宽
   经宽高比反推 282px 溢出 255.4px 轨道（相邻互覆约 18.6px、末格右缘被裁）。
   修法（CSS 收口层，不动渲染器/素材/格几何）：条带盒 height:auto、行 flex:none
   按格高自适应、infeed 格高以同特异度（0,4,0）后置 height:auto!important 归一。
   素材 3:1 可见窗口与顶对齐裁切一字不动，广告文字带断言口径不受影响。
   预期：8 条带盒高 171→约 101–103px、死白 518.5px 消除、首页总高净降约 545px。
   作用域仅 ≥761px；手机层同名钉高规则不在本层内，手机行为零变化。 */
@media (min-width:761px){
.partner-box--strip{height:auto}
.partner-box--strip .partner-row{flex:none}
.partner-box--strip.partner-box--list_infeed .partner-row--n5 .partner-cell{height:auto!important}
}
/* zz12：中列 feed 六条（495/6 装填）＋快讯 7 条行距压缩＋901-1150 带 feed 横排修复（10.74.33）。文列实测 83（cat 19.8＋gap 1＋标题 44.2＋gap 1＋meta 17），收至约 72：标题 15px/1.34（40.2）、cat 与 meta 行高 1.3、图 96×68、padding 4px；槽内容预算 82.5−8−1＝73.5。快讯行距：padding 6→4（行距 33.25→29.25），7 条盒增量仅约 +5px，右栏总高 1440≈500/1280≈505 均不顶构图高（526/510）。901-1150：旧层 flex-direction:column 致图/文竖叠溢出（实测内容 212>槽 150、第 5 条 meta 被列底裁切），本层改横排 112px。 */
@media(min-width:1151px){
.home-news-feed--v810>a{flex:1 1 0!important;padding:4px 2px!important}
.home-news-feed--v810>a>img{width:96px!important;height:68px!important}
.home-news-feed--v810 .feed-copy{gap:1px!important}
.home-news-feed--v810 .feed-cat{line-height:1.3!important}
.home-news-feed--v810>a strong{font-size:15px!important;line-height:1.34!important}
.home-news-feed--v810>a small{line-height:1.3!important}
.home-quick-news .quick-news-links a{padding-top:4px;padding-bottom:4px}
}
@media(min-width:901px) and (max-width:1150px){
.home-news-feed--v810>a{flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;height:112px!important;padding:8px 2px!important}
.home-news-feed--v810>a>img{width:104px!important;height:76px!important}
.home-news-feed--v810 .feed-copy{height:auto!important}
}
/* zz13：zz12 的图高/padding 被 zz10 的 composition 前缀选择器以特异度 (0,2,1)>(0,1,1) 压住（实测 pad 6/img 76 未变，scrollHeight 88>clientHeight 81，溢出来源＝图 76＋padding 12）。本层同前缀同特异度后置覆盖：padding 3px、图 96×68；文列 72.7 不变，槽内容预算 82.5−6−1＝75.5，scrollHeight 收至约 79≤81（10.74.34）。 */
@media(min-width:1151px){
.home-lead-composition--v830 .home-news-feed--v810 > a{padding:3px 2px!important}
.home-lead-composition--v830 .home-news-feed--v810 > a img{width:96px!important;height:68px!important}
}

/* === USC-FIX 20261026zz11b（条带收口补丁 · zz11 回归修复）===
   zz11 落盘回归实测（2026-10-26 19:1x PDT，VPS CDP 探针三态对照 A/B/C）：
   首页 home_rail 条带在 761–1150 带盒高 226.4——其父 .home-editorial-aside
   为 flex 容器，条带 align-self:auto 被拉伸（stretch）至 flex 行高，
   zz11 的 height:auto 反而令其高于旧钉高 171（行高仅 72、死白约 153）。
   对照：B 态（回钉 171）死白约 97；C 态（本层）盒高 74＝行高 72＋边框 2，
   且 1440 下与现行逐值一致（103.1）、其余条带各宽零变化。
   修法：条带在 ≥761 时 align-self:flex-start，不再被 flex 父拉伸；
   block 父下 align-self 不生效、无副作用。作用域与 zz11 同为 ≥761px。 */
@media (min-width:761px){
.partner-box--strip{align-self:flex-start}
}

/* === USC-FIX 20261026zz14（文章页 KINGAI 服务提示软植入 · 渲染层模块）===
   骨架复用 .site-service 族（边框/标签/间距/≤760 纵排均已定义），本层只补
   两处差异：模块位于 </article> 之外、相关阅读之前，外距与上下邻居对齐；
   句内链接按正文链接口径着色下划线。落盘时先回读最新真源尾部再追加。 */
.site-service--kingai{margin:20px 0 6px}
.site-service--kingai p a{color:#B0491F;text-decoration:underline}

/* === USC-FIX 20261026zz12（home_services 平板带轨道塌缩修复）===
   定因（2026-10-26 19:5x PDT，VPS CDP 探针 svc_diag 四宽实测）：
   `.home-aside-strip` 与头条右栏共用类 `.home-editorial-aside`，在
   761–1150 带被其 @media(max-width:1150px) 规则置为 flex-direction:row；
   同带 `.home-right-box{flex:1}`（1 1 0%）与栏条带 flex:0 1 auto（内容
   基线约整行）同行竞争——services section 被压至 30px（＝边框 2＋内距
   28、内容宽 0），其内条带仅剩 2px、格 0、行 16（纯内距）。1280/1440
   同素材同结构正常（格 3:1），故主因＝flex 轨道分配，非格宽、非素材比。
   修法（作用域仅限该带该容器，与两端形态对齐：≥1151 为 flex 纵排、
   ≤760 为 block 纵排）：带内改纵排、子项满宽。模拟实测（svc_sim）：
   条带 2×18 → 四宽 1024.4×83／904×74.9／785.4×67／652.5×58.2、格
   194.9×65／170.8×56.9／147.1×49／120.5×40.2（皆 3:1），rail 随之归
   满宽与同宽其余条带逐值一致，1440/1280/390 零变化、feed 高不变。 */
@media (min-width:761px) and (max-width:1150px){
.home-aside-strip{flex-direction:column}
.home-aside-strip>*{width:100%}
}

/* AI 摘要/标签批配套样式（10.74.40）：.article-tags 为文章页正文末尾的标签 chip 行
   （consumer ai_tags_html 输出）；无此层时 chip 退化为普通行内链接，不破版。
   配色沿站内柿棕点缀口径。 */
.article-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:18px 0 6px;padding-top:14px;border-top:1px solid #eee}
.article-tags>span{font-size:12px;color:#8a7f76;letter-spacing:.08em}
.article-tags a{font-size:12.5px;line-height:1;padding:6px 11px;border:1px solid #e3d9cf;border-radius:999px;color:#8a4b2a;background:#fdf9f4;text-decoration:none}
.article-tags a:hover{border-color:#B0491F;color:#B0491F}

/* === USC-FIX 20261027zz15（陛下 2026-10-27 00:11 令：头条左列大图调低、三排总高与右侧对齐）===
   定因（VPS CDP 探针 lead_measure_before，≥1151 三列带实测）：列1 三排
   ＝hero 312＋排间 10＋row2 86＋排间 10＋partner 108.3＝526.2（底边 893.3）；
   列2 feed 钉高 495（底边 862）；列3 右栏 499.8（底边 866.8，快讯 279.8
   ＋间 14＋城市 206，宽 300 固定、全带恒定）。取舍：以列3 底边为准绳
   ——右栏即 20261025f 设计锚「块高 495＝右栏高」的现行实值（499.8），
   列2 钉高 495 与其仅差 4.8；列1 需削 26.4，全数由 hero 承担（312→285.6），
   row2 与 partner 条带一字不动。
   partner 条带高随列宽线性变（格 aspect 恒定：1440 列宽 630.6→条 108.3、
   1280 列宽 536.5→条 91.8、1920 列宽 679.6→条 116.8），单一 hero 钉高
   无法全带对齐，故三档锚点对齐：1151–1359 档 302（1280 实测列1 509.8、
   需削 10.0）、1360–1679 档 285.6（1440 锚）、≥1680 档 277（1920 实测
   列1 534.8、需削 35.0）；档界取相邻锚误差交叉点，带内残差 ≤约 8px
   （修复前 10–35px）。作用域仅 ≥1151 三列带；≤1150 纵排、≤760 手机
   形态零波及。cover 裁切口径不变、图片不变形。 */
@media (min-width:1151px) and (max-width:1359px){
.home-bigblock .home-news-lead--hero{height:302px!important}
}
@media (min-width:1360px) and (max-width:1679px){
.home-bigblock .home-news-lead--hero{height:285.6px!important}
}
@media (min-width:1680px){
.home-bigblock .home-news-lead--hero{height:277px!important}
}

/* === USC-FIX 20261027zz16（新闻列表桌面两列 · 陛下 2026-10-27 00:15 令「所有此类新闻列表，电脑版一排两个」）===
   作用域：≥761px；.article-list--cards（render_news 新闻总览/栏目归档/城市新闻、
   render_asylum 指南列表共用的文章列表组件）与 .route-search 搜索结果页各 .article-list。
   容器转两列网格，逐行等高（网格行拉齐＋10.74.11 署名沉底口径不变）；列表内通栏
   元素跨两列：.partner-box 走既有无条件 1/-1 规则、.site-service 本层补、奇数收口
   .article-row--wide（consumer ff21 标记逻辑不变）本层补桌面通栏。窄桌面带
   761–1150 缩图 116→100px。≤760 手机形态零波及（zz4 两列卡口径原样）；论坛话题
   列表、首页社区块、私信等 plain .article-list 不在本层作用域。 */
@media (min-width:761px){
.article-list--cards{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;row-gap:12px}
.article-list--cards>.site-service{grid-column:1/-1}
.article-list--cards>.article-row--wide{grid-column:1/-1}
.route-search .article-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;row-gap:12px}
}
@media (min-width:761px) and (max-width:1150px){
.article-list--cards>.article-row:has(.article-row-thumb),.route-search .article-list>.article-row:has(.article-row-thumb){grid-template-columns:100px minmax(0,1fr)}
.article-list--cards>.article-row:has(.article-row-thumb) .article-row-thumb,.route-search .article-list>.article-row:has(.article-row-thumb) .article-row-thumb{width:100px}
}

/* === USC-FIX 20261027zz17（10.74.43 · 条带减半批，陛下 2026-10-27 00:16 令
   「全站所有此类广告都减半高度」）===
   范围＝全站条带型 house 广告（strip/ribbon 类）；卡片型（_card/_mcard
   方卡，含 strip-mv 与 ribbon-mv 手机卡轨）不在本令内、一字不动。
   减半基准＝各槽位现行展示高（基线探针 half_base.json 全站实测），实现＝
   重出半高整图变体（consumer 同批接线：缎带 _ribh 960x320、strip-dv
   _wideh 1120x186、赞助条 _mstriph 1000x175、平板带 _tstriph 1000x175，
   文字按新格窗重排、生成器逐格断言全入窗，audit/home-strip-half-20261027）
   ＋本层把格高口径同步减半：
   ① 缎带 dv：zz5/zz6 的 aspect 3/2 → 3/1（格高随宽减半，171.6→85.8@1440）；
      选择器特异性 0,4,0 与 zz6 顶缎带规则同级、后置胜出。
   ② strip-dv（.partner-box--strip 桌面格，基线格比恒 3:1）：格与图框
      aspect 3/1 → 6/1（85.1→42.6@1440 等，全带同律减半）。
   ③ 头条双格 lead：zz6/zz7 的 1000/350 → 1000/175（108.3→54.2@1440、
      161.3→80.7@1024 等）。
   ④ hub 会员区格：min-height 118 → 59（全宽生效——手机端同容器出
      _mstriph 通栏格，随之 116→约 58）。
   ⑤ dept 栏目补位：格 min-height 148 → 74 且固定高 74（原 height:100%
      随网格行拉伸的实例一并归到标称半高），卡片 align-self:start 抱合，
      不再被同行高卡撑高。
   作用域：①②③⑤ 仅 ≥761px（手机各有独立标记/变体轨）；④全宽（hub 容器
   双端共用）。头条三列构图（zz15）、feed 钉高、快讯与城市块不在作用域。 */
@media (min-width:761px){
.partner-ribbon.partner-ribbon--dv .partner-cell.partner-cell{height:auto!important;aspect-ratio:3/1!important}
.partner-box--strip .partner-cell.partner-cell{aspect-ratio:6/1!important}
.partner-box--strip .partner-cell.partner-cell .partner-cell__img{aspect-ratio:6/1!important}
.home-lead-partner .partner-cell--strip{height:auto!important;aspect-ratio:1000/175!important}
.home-lead-partner .partner-cell--strip .partner-cell__img{aspect-ratio:1000/175!important}
.department-ad{align-self:start}
.department-ad .partner-cell.partner-cell{height:74px;min-height:74px}
}
.hub-partner{min-height:59px}

/* === USC-FIX 20261027zz18（10.74.44 · 新闻列表单条通栏修复，陛下 2026-10-27 00:47 令）===
   定因：consumer ff21（10.74.21）为手机两列网格奇偶收口，给每个插入点
   （infeed i=6/14、sponsor_feed i=3/9/17）之前奇数段的末卡标
   .article-row--wide，原口径仅 ≤760 有样式（zz4 通栏横排）、桌面零变化；
   zz16（10.74.42）桌面两列化时「补桌面通栏」给 --wide 加了
   grid-column:1/-1，桌面自此每段末卡整行通栏（/news/ 实测 25 卡中 5 卡
   通栏、与 --wide 标记逐一对应，两列行与单条通栏交替即此）。
   解：≥761 撤销 --wide 的桌面通栏，回归普通单格——每排恰两条，奇数段
   末卡保持半宽不拉满；通栏只留 infeed 广告条与 .site-service 服务块。
   ≤760 一字不动（zz4 手机收口形态原样）。选择器与 zz16 同特异度
   (0,2,0)，后置胜出；consumer 标记逻辑不变。 */
@media (min-width:761px){
.article-list--cards>.article-row--wide{grid-column:auto}
}

/* === USC-FIX 20261027zz19（10.74.45 · 全站宽屏填满批，陛下 2026-10-27 00:20 令
   「全站都是宽屏设计，为什么很多页面不是——全站检查调整，并填合理满内容」）===
   审计与规格：audit/widescreen-fill-20261027/审计与规格.md。病灶：.wrap 于
   1460px 触顶（CSS 第 1146 行 !important 规则），2560 视口内容占比仅 55%；
   多页型内嵌固定宽块（文章 layout 1240／related 1000／detail 900／
   gate-hero 720@member_v1051.css）同页忽宽忽窄；固定栅格孤儿行数处。
   本层（全部 ≥1680 作用域，≤1679 与 ≤760 手机带零波及）：
   S1 容器阶梯：≥1680 外框 1780／≥2200 外框 2060（body:not(.staff-console)
      避让后台页壳；!important 对位第 1146 行规则）；
   S2 同页同宽：article-layout、related-reading（通用 1080＋文章页 1000 上限）、
      thread/business/listing 的 .detail、gate-hero（对 member 样式 !important
      归一）一律放开至容器宽；
   S3 栅格配平：related 3 列（3/6 条排满）；城市页 department-grid 5 列
      （15 城＝5×3、格内条带恰在整行界、通栏成行；首页同名栅格有 consumer
      mod-3 填充机制、本就排满，不动）；guide-link 5 列（15 条排满）；
      biz-cats 5 列（10 类排满）；
   S4 正文量测封顶 1180px（≈73 字/行 @16px、≈69 @17px，守 ≤75 字可读上限）；
   S5（原 form-panel 放宽）经注入实测撤销：表单面板随页境走、强加帽反致
      新的同页宽度差，见交账；
   S6 头条 hero 锚点重解：zz17 条带减半后列1 全带短 45.9–58.4（zz15 锚失效），
      且容器放宽再变列1宽——按「列1 总高＝列3 高 499.8」以新条带高
      （(列1宽−12)×0.0875）逐档重解、注入模拟实测定值，row2/feed/右栏不动。 */
@media (min-width:1680px){
body:not(.staff-console) .wrap{width:min(1780px,calc(100% - 56px))!important;max-width:1780px!important}
.article-layout{max-width:none}
.related-reading{max-width:none}
.route-article .related-reading{max-width:none}
.related-reading-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.route-thread .detail,.route-business .detail,.route-listing .detail{max-width:none!important}
.gate-hero{max-width:none!important}
.route-article .news-rich-body{max-width:1180px}
.route-thread .detail-body,.route-business .detail-body,.route-listing .detail-body{max-width:1180px}
.route-cities .department-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.route-cities .department-grid>.partner-box{grid-column:1/-1}
.guide-link-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.biz-cats{grid-template-columns:repeat(5,minmax(0,1fr))}
.content-layout{grid-template-columns:minmax(0,1fr) 320px}
}
@media (min-width:2200px){
body:not(.staff-console) .wrap{width:min(2060px,calc(100% - 72px))!important;max-width:2060px!important}
}
@media (min-width:1151px) and (max-width:1214px){
.home-bigblock .home-news-lead--hero{height:354px!important}
}
@media (min-width:1215px) and (max-width:1359px){
.home-bigblock .home-news-lead--hero{height:348px!important}
}
@media (min-width:1360px) and (max-width:1679px){
.home-bigblock .home-news-lead--hero{height:340px!important}
}
@media (min-width:1680px) and (max-width:1759px){
.home-bigblock .home-news-lead--hero{height:326px!important}
}
@media (min-width:1760px) and (max-width:1835px){
.home-bigblock .home-news-lead--hero{height:321px!important}
}
@media (min-width:1836px) and (max-width:2199px){
.home-bigblock .home-news-lead--hero{height:317px!important}
}
@media (min-width:2200px){
.home-bigblock .home-news-lead--hero{height:302px!important}
}

/* === USC-FIX 20261027zz20（10.74.46 · 条带减半批 v2：追加令①槽位适配与
   可读性、②首页条带高度统一）===
   ⑴ hub 图框根治：基线 .partner-cell__img{height:118px} 无覆盖地作用于
   hub 格——zz17 只缩了卡高、图框仍 118，图在矮卡内被 overflow 裁掉底部
   标题（回归普查＋CDP 实证）。改图框 height:100% 填满格位（picture 链
   同步），桌面 hub 卡高钉 59（zz17 min-height 的定版半高）。
   ⑵ 首页条带高度统一（陛下 00:47 令）：统一目标高＝首页主条带（赞助
   缎带）现行高减半曲线分带取整 --hstrip（761–832:45 / 833–960:53.5 /
   961–1087:61.5 / 1088–1215:69.5 / 1216–1400:79 / 1401–1680:86 /
   ≥1681:91）；首页内缎带/strip/头条双格/hub/dept 五族条带格高一律
   var(--hstrip)，带内全等。图随槽：consumer 同批接线 _wideu（strip）/
   _leadu（头条双格）/_tstriph（hub/dept 双档）。首页外维持 zz17 口径。 */
.hub-partner .partner-cell__img{height:100%}
.hub-partner .partner-cell__img picture{display:block;height:100%}
@media (min-width:761px){
.hub-partner{height:59px}
.route-home{--hstrip:79px}
.route-home .partner-ribbon--dv .partner-cell.partner-cell{height:var(--hstrip)!important}
.route-home .partner-box--strip .partner-cell.partner-cell{height:var(--hstrip)!important}
.route-home .partner-box--strip .partner-cell.partner-cell .partner-cell__img{aspect-ratio:auto!important;height:100%}
.route-home .home-lead-partner .partner-cell--strip{height:var(--hstrip)!important}
.route-home .home-lead-partner .partner-cell--strip .partner-cell__img{aspect-ratio:auto!important;height:100%}
.route-home .hub-partner{height:var(--hstrip);min-height:var(--hstrip)}
.route-home .department-ad .partner-cell.partner-cell{height:var(--hstrip)!important;min-height:var(--hstrip)}
.route-home .department-ad .partner-cell__img{height:100%}
}
@media (min-width:761px) and (max-width:832px){.route-home{--hstrip:45px}}
@media (min-width:833px) and (max-width:960px){.route-home{--hstrip:53.5px}}
@media (min-width:961px) and (max-width:1087px){.route-home{--hstrip:61.5px}}
@media (min-width:1088px) and (max-width:1215px){.route-home{--hstrip:69.5px}}
@media (min-width:1216px) and (max-width:1400px){.route-home{--hstrip:79px}}
@media (min-width:1401px) and (max-width:1680px){.route-home{--hstrip:86px}}
@media (min-width:1681px){.route-home{--hstrip:91px}}
/* USC-FIX 20261027 city-news（10.74.47 · 城市新闻增容批）：卡图高与同档特稿图
   对齐（≥1101:204／681–1100:233／≤680:170，cover 不变形）；多次条续排；
   <1400 藏第 3 条起次条（每卡显主标题＋2 次条＝3 条）；特稿标题/摘要各
   2 行封顶，使其图高恒定 ≈204、对齐不随每日内容漂移 */
.city-mini-photo{aspect-ratio:auto;height:204px}
.city-mini-body a.city-mini-second ~ a.city-mini-second{margin-top:0;border-top:0;padding-top:5px}
.city-feature-wide-lead strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.city-feature-wide-lead span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:1399px){
.city-mini-body a.city-mini-second ~ a.city-mini-second ~ a.city-mini-second{display:none}
}
@media (max-width:1100px) and (min-width:681px){.city-mini-photo{height:233px}}
@media (max-width:680px){.city-mini-photo{height:170px}}
/* USC-FIX 20261027 city-news6（10.74.48）：每卡条数定版 6 条（渲染随
   CITY_NEWS_PER_CITY）；卡图高改单一参数——三档值集中声明于此，图高切换
   只改本块三个变量值（现值 204/233/170 与上层同值、视觉不变） */
.city-editions--v810{--cmp-h-wide:102px;--cmp-h-mid:116.5px;--cmp-h-small:85px}
.city-mini-photo{height:var(--cmp-h-wide)}
@media (max-width:1100px) and (min-width:681px){.city-mini-photo{height:var(--cmp-h-mid)}}
@media (max-width:680px){.city-mini-photo{height:var(--cmp-h-small)}}

/* === USC-FIX 20261027zz21（10.74.47 · 首页「最新新闻报道」九宫格紧凑化，陛下 2026-10-27 00:55 令「中间空位太多，调紧凑一点」）===
   定因（1440 CDP 逐卡量测＋克隆离流二分，证据 audit/home-latest-compact-20261027/）：
   ① 卡内恒定死白约 26px：卡片本体为内层 grid（v780 定 grid-template-rows:auto auto auto、
      缩略图 grid-row:1/4），现行标记已把 topic/strong/small 包进 .home-latest-text 单个
      grid 项（仅占第 1 行），第 2/3 行恒空（实测行高 82.6/0/0），而 V10.47.1 的 gap:13px
      把行距顶至 13px——两条空行缝 2×13＝26px 恒定计入每卡高。克隆离流量测逐值吻合：
      内容 82.6＋内距 16＋边框 2＋空行缝 26＝126.6＝实测卡高；改 flex-row 实验即回 100.6。
   ② 外层网格 stretch 拉齐同行卡高：标题仅 1 行的卡被同行 2 行卡拉高（#7 内容自高
      约 85.6 被拉至 126.6、卡内空白 40px 为全场最大），中列尤显（陛下截图所指）。
   本层（仅 ≥761px）：卡片内层 row-gap 归零（幻影行缝消除）＋网格 align-items:start
   （卡贴合自身内容高、同行底边参差不填充凑齐）＋网格间距收紧（行 6→4px、列 6→5px）。
   视觉元素（86px 图、栏目色标、标题 13px/1.36 与现行截断、日期行）与 3 列结构不动；
   ≤760 手机端不在作用域（现形态原样）。注入模拟先验（10.74.45 基线）：1440 网格总高
   408.2→326.2（−82）、逐卡空白 27–40→1px。 */
@media (min-width:761px){
.home-latest-grid{align-items:start;gap:4px 5px}
.home-latest-item{row-gap:0}
}

/* === USC-FIX 20261027zz22（10.74.49 · 庇护服务块案二「上下两行」半高版，陛下 2026-10-27 点定）===
   设计与量测见 audit/asylum-block-design-20261027（方案.md 第四、六节＋施工交账.md）。
   结构：.svc2 纵排——行1（.svc2-r1：标签+标题+说明+免责微文，桌面 30px）＋行2 内嵌迷你
   表单（.svc2-form：称呼/邮箱/简述/提交，直提 /asylum-consult，Worker JSON 模式原地反馈）。
   基座 .site-service 的白底/边框/柿棕左界/外距沿用，本层只改内部排布与控件尺寸。
   Turnstile 挂载槽 .svc2-tsw 为浮层（absolute，零静态高），首次聚焦才由块内脚本渲染。
   短信钮待号码点定后另行补入行1（.svc2-sms 预留），本批不渲染、不留空位。
   桌面目标块高 ≈90（mock 90，容差 ±5%）；手机（≤760）文章页口径再压缩目标 ≈138：
   控件 28px、内距 6px、行距收紧，说明与免责各用一独立行（.svc2-desc-m/.svc2-note-m）。 */
.svc2{flex-direction:column;align-items:stretch;gap:6px;padding:9px 16px}
.svc2-r1{display:flex;align-items:center;gap:9px;height:30px;min-width:0}
.svc2 .svc2-ttl{margin:0;font-size:17px;line-height:30px;white-space:nowrap}
.svc2-desc{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.svc2-desc-m{display:none}
.svc2-note{font-size:11px;color:#657168;white-space:nowrap}
.svc2-note-m{display:none}
.svc2-form{display:flex;gap:6px;align-items:flex-start;position:relative;margin:0}
/* 控件选择器须压过全站 input:not([type]) 规则（特异性 0,2,1）与 v57 密度层，故三段类名起手 */
.svc2 .svc2-form input{width:auto;min-height:0;height:34px;padding:5px 10px;font-size:13px;border-radius:8px}
.svc2 .svc2-form .svc2-name{flex:0 0 138px;min-width:0}
.svc2 .svc2-form .svc2-mail{flex:0 0 198px;min-width:0}
.svc2 .svc2-form .svc2-detail{flex:1 1 auto;min-width:0}
.svc2 .svc2-form .svc2-btn{flex:0 0 auto;height:34px;min-height:0;padding:0 20px;font-size:14px;background:#B0491F;border-radius:9px;white-space:nowrap}
.svc2 .svc2-form .svc2-btn:hover{background:#96401B}
.svc2 .svc2-form .svc2-btn:disabled{opacity:.65}
.svc2-tsw{position:absolute;left:0;top:40px;z-index:9;display:block}
.svc2-err{margin:2px 0 0;font-size:12.5px;color:#A6372C}
.svc2-err[hidden]{display:none}
.svc2-done p{margin:0;font-size:13.5px}
.svc2-done[hidden]{display:none}
.svc2-done a{color:#B0491F;font-weight:700;white-space:nowrap}
@media (max-width:1150px){
.svc2-note{display:none}
}
@media (max-width:760px){
.svc2{padding:6px 12px;gap:4px}
.svc2-r1{height:auto;flex-wrap:wrap;gap:3px 8px}
.svc2 .svc2-ttl{font-size:16px;line-height:22px}
.svc2-desc{display:none}
.svc2-desc-m{display:block;flex:1 1 100%;font-size:12px;line-height:16px}
.svc2-form{flex-wrap:wrap;gap:5px}
.svc2 .svc2-form input{height:28px;padding:4px 8px;font-size:12.5px}
.svc2 .svc2-form .svc2-name{flex:1 1 100px}
.svc2 .svc2-form .svc2-mail{flex:1 1 100px}
.svc2 .svc2-form .svc2-detail{flex:1 1 140px}
.svc2 .svc2-form .svc2-btn{flex:0 0 92px;height:28px;padding:0 8px;font-size:13px}
.svc2-tsw{top:66px}
.svc2-note-m{display:block;margin:0;font-size:11px;line-height:14px;color:#657168}
}
/* USC-FIX 20261027 city-final（10.74.49 · 城市新闻终规格收口）：特稿图盒改
   3:2（宽随 42% 列宽、cover 中心裁切不变形；align-self:start 使盒高由比值
   决定、不再被右栏内容撑高）＋卡图半高已由上层变量 --cmp-h-* 定版 */
.city-feature-wide-photo{aspect-ratio:3/2;align-self:start;width:100%}

/* === USC-FIX 20261027zz23（10.74.50 · 首页全线条带宽屏望远镜错位根治，
   陛下 2026-10-27 01:13/01:15 截图报障）===
   定因（宽屏六档逐槽实测）：zz20 给首页 strip 格与头条双格格位钉
   height:var(--hstrip) 时，zz17 在同格上的 aspect-ratio !important
   （strip 格 6/1、双格 1000/175）未解除——格高与格比同时钉死后，网格
   格位宽被「高×比」反推：strip 格 91×6=546px、双格 91×5.71=520px，
   远超各自 1fr 轨道（strip 393px@2560/337px@2048、双格 436px@2048），
   格位向右溢出压住相邻格，呈望远镜式叠压、整图被裁只剩角标（≥1920
   最显，1440/1280/1150 同理：宽=高×比恒成立）。缎带格宽=3×高为其卡式
   设计且截图正常、hub/dept 无格比冲突，均不在此列。
   解：首页两族格位 aspect-ratio 置 auto——宽回归轨道均分（格宽两两
   等分）、高维持 --hstrip 等高口径；图仍 cover 入格：strip 图 _wideu
   顶对齐（object-position 50% 0px）、文字带在源图顶部 140px 内，格比
   域 [2.84,4.32] 全部可见窗均含文字带；双格 _leadu 交集安全区不变。
   等高靠格高统一达成，不靠裁图/拉伸。 */
@media (min-width:761px){
.route-home .partner-box--strip .partner-cell.partner-cell{aspect-ratio:auto!important}
.route-home .home-lead-partner .partner-cell--strip{aspect-ratio:auto!important}
}

/* === USC-FIX 20261027zz24（10.74.51 · 首页论坛热议＋新入驻商家双栏收口，陛下 2026-10-27 01:16 令）===
   左栏紧凑：行上下内距 9→6（原密度层以 !important 钉 9px，本层同级 !important 仅在本区作用域内收）、
   标题下距 3→1、列表行距 7→5（字号/条数/排序不动）；
   右栏同行等高明示 stretch；两栏底边收口：≥1751 档仅收网格行距，761–1750 档
   另收卡内距/卡内行距/类目标签内距/名称与描述行高（等高靠卡高统一与内排版吸收，不截断文本）。 */
@media (min-width:761px){
.home-community .article-list{gap:5px}
.home-community .article-row{padding-top:6px!important;padding-bottom:6px!important}
.home-community .article-row h3{margin-bottom:1px}
.home-community .biz-mini-grid{align-items:stretch}
}
@media (min-width:1751px){
.home-community .biz-mini-grid{gap:7px}
}
@media (min-width:761px) and (max-width:1750px){
.home-community .biz-mini-grid{gap:7px}
.home-community .biz-mini{padding-top:7px;padding-bottom:7px;gap:3px}
.home-community .biz-mini .item-kind{padding-top:1px;padding-bottom:1px}
.home-community .biz-mini strong{line-height:1.4}
.home-community .biz-mini small{line-height:1.45}
}

/* === USC-FIX 20261027zz25（10.74.51 · 纽约特稿纠正批，陛下 01:18/01:21 令）===
   特稿图改与下方城市卡图一样大小：高＝同档卡图高（--cmp-h-* 单点参数，随卡图
   同步）、宽＝一卡宽（按同档卡栅格口径 calc）；cover 不变形。撤销 zz-city 层
   的 3:2 盒。特稿次条 6 条两列排（.city-feature-wide-seconds），「该城新闻 →」
   仍在文案区末尾。9 卡冻结不动，本层不含任何卡侧规则。 */
.city-feature-wide{grid-template-columns:calc((100% - 24px)/3) minmax(0,1fr)}
.city-feature-wide-photo{aspect-ratio:auto;align-self:start;width:auto;min-height:0;height:var(--cmp-h-wide)}
.city-feature-wide-seconds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;border-top:1px solid #f0ebe2;padding-top:8px}
.city-feature-wide-seconds .city-feature-wide-second{border-top:none;padding-top:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:1100px){.city-feature-wide{grid-template-columns:calc((100% - 12px)/2) minmax(0,1fr)}.city-feature-wide-photo{height:var(--cmp-h-mid)}}
@media (max-width:680px){.city-feature-wide{grid-template-columns:1fr}.city-feature-wide-photo{height:var(--cmp-h-small);min-height:0}}

/* === USC-FIX 20261027zz26（10.74.52 · 纽约特稿图与右侧文案区上下对齐，陛下 2026-10-27 01:31 令）===
   zz25 把特稿图钉为卡图高（102/116.5），图列内图下方留白实测 134–171px。本层仅
   ≥681 把图盒改为随行拉伸：图盒顶/底边与文案区顶/底边齐（grid 同行 stretch），
   图宽仍一卡宽（zz25 栅格列宽不变）、img absolute inset:0＋cover 不变形；文案区
   内容与排版一字不动；≤680 为上下堆叠、无左右对位关系，图高仍 85（zz25），
   本层不覆盖。9 卡冻结，本层不含任何卡侧规则。 */
@media (min-width:681px){
.city-feature-wide-photo{align-self:stretch;height:auto}
}

/* === USC-FIX 20261027zz27（10.74.53 · 头条锚点重解——zz20 条带统一高使宽屏批
   头条锚点偏移：Δ＝左列 .home-bigblock 底 − 右栏即时快讯底，实测 1151 +29.7／
   1215 +23.7／1280 +33.2／1400 +25.2／1440 +32.2／1920 +14.2／2048 +14.2／
   2560 −0.8。重解值经宽屏批逐档验算、残差 ≤1：1151–1215→324；1216–1400→315；
   1401–1680→308；≥1681→303。本层仅重钉 hero 高，条带与图一字不动）=== */
@media (min-width:1151px) and (max-width:1215px){
.home-bigblock .home-news-lead--hero{height:324px!important}
}
@media (min-width:1216px) and (max-width:1400px){
.home-bigblock .home-news-lead--hero{height:315px!important}
}
@media (min-width:1401px) and (max-width:1680px){
.home-bigblock .home-news-lead--hero{height:308px!important}
}
@media (min-width:1681px){
.home-bigblock .home-news-lead--hero{height:303px!important}
}

/* === USC-FIX 20261027zz28（10.74.55 · 文章页宽屏空位案二三栏化，陛下 2026-10-27 01:52 点定）===
   ≥1920 文章页三栏：正文卡 960（基础层帽值不变、正文段落行宽帽不动）／中栏 1fr
   （2560 档 692、1920 档 412）／右栏 300，gap 26 沿用基础层。中栏 .article-mid
   由 consumer render_article 恒出（本文导读＋同栏目相关报道），本层仅 ≥1920
   显示并启三栏网格；<1920 中栏 display:none、网格与版式逐值不变。两块内容皆
   空的文章整栏不出 DOM，:has 兜底不启三栏。中栏与右栏定位区隔：右栏仍全站
   热门/最新，本栏只放本文导读与同栏目报道。 */
.article-mid{display:none}
@media (min-width:1920px){
body.route-article .article-layout:has(> .article-mid){grid-template-columns:minmax(0,960px) minmax(0,1fr) 300px}
.article-mid{display:flex;flex-direction:column;gap:16px;min-width:0}
.mid-box{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px 20px}
.mid-box h3{margin:0 0 10px;font-size:19px;color:var(--accent,#B0491F);font-weight:700}
.mid-box p{margin:0 0 8px;font-size:15px;line-height:1.75;color:#3d3831}
.mid-box ul{margin:6px 0 0;padding-left:18px;font-size:14.5px;line-height:1.8;color:#3d3831}
.mid-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mid-card{display:block;text-decoration:none;color:#241f19}
.mid-card img{width:100%;height:150px;object-fit:cover;border-radius:10px;display:block}
.mid-card span{display:block;margin-top:7px;font-size:14.5px;line-height:1.5;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mid-more{display:block;margin-top:12px;font-size:14.5px;color:var(--accent,#B0491F);text-decoration:none;font-weight:600}
}

/* === USC-FIX 20261027zz29（10.74.56 · 全站排版错位总巡检收口，陛下 2026-10-27 01:27 总令）===
   /cities/ 城市卡 .department-photo 负边距脱钩：卡内距经后续层收至 10px/12px（边框 1px）后，
   图仍按旧口径 margin:-16px，七档宽实测左右各外溢 3px、顶外溢 5px。按原设计几何（图与卡
   边框内缘齐平）改 margin 为 -10px -12px 0；图顶圆角对齐卡内角（卡圆角 9px－边框 1px＝8px）。 */
.department-photo{margin:-10px -12px 0;border-radius:8px 8px 0 0}

/* === USC-FIX 20261027zz29nav（10.74.57 · 桌面导航图标化正式施工，陛下 2026-10-27 02:00 点定甲案）===
   14 项全图标＋文字（图标＝手机底栏同套 SVG 系统，consumer render_header 内联 .dnav-ic，
   图源 audit/nav-icon-build-20261026/mock_c.html 阶段一 定版）；A ≥1401／B 1280–1400／
   C 1150–1279 三档单行、图标统一 16px，装填参数与阶段一 定版逐项一致（实测余量
   +39/+19/+9.3、页眉高 150.4 不变）；D 1025–1149 改两行版、图标 24px（两行版页眉高
   基线 188.4）；E 761–1024 沿用横滚、图标 16px；≤760 图标隐藏、手机端零波及。 */
.dnav-ic{width:16px;height:16px;vertical-align:-3px}
@media (max-width:760px){.dnav-ic{display:none}}
@media (min-width:1401px){
.nav-inner>a:not(.nav-publish){font-size:13px!important;padding:9px 5px!important}
.dnav-ic{width:16px;height:16px;margin-right:3px}
.nav-inner .city-picker{flex:0 0 132px!important;width:132px!important;min-width:0!important;max-width:132px!important;margin:0 8px 0 auto!important}
}
@media (min-width:1280px) and (max-width:1400px){
.nav-inner>a:not(.nav-publish){font-size:12px!important;padding:9px 3px!important}
.dnav-ic{width:16px;height:16px;margin-right:2px}
.nav-inner .city-picker{flex:0 0 124px!important;width:124px!important;min-width:0!important;max-width:124px!important;margin:0 8px 0 auto!important}
}
@media (min-width:1150px) and (max-width:1279px){
.nav-inner{padding-left:8px!important;padding-right:8px!important}
.nav-inner>a:not(.nav-publish){font-size:12px!important;padding:9px 3px!important;letter-spacing:-0.5px!important}
.dnav-ic{width:16px;height:16px;margin-right:2px}
.nav-inner .city-picker{flex:0 0 88px!important;width:88px!important;min-width:0!important;max-width:88px!important;margin:0 0 0 auto!important}
.nav-inner .nav-publish{font-size:12px!important;padding:8px 9px!important}
}
@media (min-width:1025px) and (max-width:1149px){
.nav-inner{flex-wrap:wrap!important;overflow:visible!important;height:auto!important}
.nav-inner>a:not(.nav-publish){font-size:12px!important;padding:9px 7px!important}
.dnav-ic{width:24px;height:24px;margin-right:4px}
.nav-inner .city-picker{display:block!important;flex:0 0 155px!important;width:155px!important;min-width:0!important;max-width:155px!important;margin:0 8px 0 auto!important}
}
@media (min-width:761px) and (max-width:1024px){
.nav-inner>a:not(.nav-publish){font-size:12px!important;padding:9px 5px!important}
.dnav-ic{width:16px;height:16px;margin-right:3px}
}

/* === USC-FIX 20261027zz30（10.74.58 · 列表栅格中段空位修复，陛下 2026-10-27 01:26 令「网站改宽版后很多新闻有空位，检查所有页面并修复」）===
   成因：列表构建（article_cards／listing_cards 及商家·活动内联循环）在单一栅格内以
   通栏条带与服务块切段，栅格默认稀疏流向（grid-auto-flow: row）在通栏元素前留下
   未配满的半行。实测（生产 10.74.55，CDP 逐页型×六宽）：新闻总览／栏目／城市新闻
   各 5 空、庇护主列表 3 空＋推荐列表 1 空、分类信息 5 空、商家总览 2 空、商家类目
   2 空、活动 2 空；论坛单列与生活栅格无此病；城市页 department 栅格经逐子项坐标
   核验为单格缎带占位、无空位，不在本层范围；手机 390 全页型 0 空。
   修法：两栅格改 dense 流向——通栏元素之后的首张卡回填其前空位，视觉顺序仍逐张
   连续；条带仍整行通栏、位置与条高逐值不动；整表末尾奇数收尾无后续卡可回填，
   保持半宽不拉满（既定口径）。仅改列表栅格流向，不动任何广告槽 CSS。
   作用域 ≥761（桌面）；≤760 手机收口（--wide 通栏）机制一字不动。 */
@media (min-width:761px){
.article-list--cards,.listing-grid{grid-auto-flow:dense}
}
/* zz31 20261027 创意按槽重做配套（gen3 变体）：①条带图锚点改左上，与变体
   左上安全区对齐——格宽格高冻结不动，仅 object-position；通栏 mvstrip 左锚。
   ②遗留静态页 .home-sponsor-ribbon 作用域样式（仅 /video/、/about/ 两页有此
   标记）：照片＋HTML 文案的旧式 tile 按现行缎带规格成行成格。
   ③缎带右溢根治（巡检项①）：首页缎带格 height:var(--hstrip) 与 aspect-ratio:3/1
   双钉致宽被反推溢列（1280 溢 6.2/1150 溢 2.6）——首页格解除 aspect、高不变、
   宽回归 1fr 列宽；图格比 3.00→2.92 仅约 3% 边裁，ribh2 文字安全区断言覆盖。 */
.partner-box--strip.partner-box--dv .partner-cell__img img{object-position:0 0}
.hub-partner .partner-cell__img img,.dept-strip .partner-cell__img img{object-position:0 0}
.partner-cell--mvstrip .partner-cell__img img{object-position:0 50%}
.route-home .partner-ribbon--dv .partner-cell.partner-cell{aspect-ratio:auto!important}
.home-sponsor-ribbon{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}
.home-sponsor-ribbon .home-sponsor-tile{position:relative;display:block;border-radius:10px;overflow:hidden;aspect-ratio:30/11;background:#241d18}
.home-sponsor-ribbon .ad-tile-photo{position:absolute;inset:0}
.home-sponsor-ribbon .ad-tile-photo img{width:100%;height:100%;object-fit:cover;display:block}
.home-sponsor-ribbon .ad-strip-copy{position:absolute;left:0;right:0;bottom:0;display:block;padding:24px 10px 8px;background:linear-gradient(to top,rgba(12,9,7,.85),rgba(12,9,7,0));color:#fff}
.home-sponsor-ribbon .ad-strip-brand{display:block;font-size:11px;font-weight:700;letter-spacing:.02em;color:#ffceb2}
.home-sponsor-ribbon .ad-strip-copy strong{display:block;font-size:13.5px;line-height:1.3;margin-top:2px;color:#fff}
.home-sponsor-ribbon .ad-tile-meta{display:block;margin-top:4px}
.home-sponsor-ribbon .ad-tile-tag{display:inline-block;background:rgba(0,0,0,.55);color:#ffd9c4;font-size:10px;line-height:1.5;padding:0 6px;border-radius:99px}
@media (max-width:760px){.home-sponsor-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}.home-sponsor-ribbon .home-sponsor-tile{aspect-ratio:30/13}}
/* zz32 20261027 头条三列底边对齐（陛下 01:36 令）：中列 feed 钉高 495 在
   1440/1920/2560/2853 四档恒短左/右列 4.8-5.0px——改 500 后三列顶齐、底边
   差 <=0.2px（zz27 锚点定的左列不动）。feed 内 justify-content:space-between
   自行均摊 5px。 */
.home-lead-composition--v830 .home-news-feed--v810{height:500px!important}
/* === USC-FIX 20261027zz33（10.74.61 · 文章页 1280–1919 流式填充，陛下 2026-10-27 16:32 令「全量部署」）===
   判据按剩余空间（中栏实宽＝布局宽−正文 960−右栏 300−间隙 52），不用名义分辨率：
   ① 1680–1919 启中栏（consumer 恒出 DOM、与 zz28 同 markup，纯 CSS 分档）：
      实宽 240–399（视口 1680–1812）紧凑单列——导读＋相关报道小图 64px 标题列表；
      实宽 ≥400（视口 1813–1919）导读＋相关报道 2×2 图卡，与 ≥1920 现形态同构。
      正文 960／右栏 300 逐值不动。实宽 <240（视口 ≤1679）不启：该带布局封顶
      1240、无列空位，中栏无处安放（1500–1679 中栏实宽仅 118–236，不及格）。
   ② 1280–1499 正文放宽填充：布局帽 1240 解除（与 ≥1680 同口径）、正文卡帽
      960→1100、段落行宽帽→1000，三帽联动自平衡：列空位余栏距 26，段落满行
      ≤约 964（≈60 字/行 @16px，守 ≤75 字可读线）。
   ③ ≤1279 与 ≥1920 逐值不动（zz28 ≥1920 成果不回退）；无中栏 DOM 的文章
      经 :has 兜底不启三栏。 */
@media (min-width:1280px) and (max-width:1499px){
body.route-article .article-layout{max-width:none}
body.route-article .detail{width:min(100%,1100px)!important;max-width:1100px!important}
body.route-article .news-rich-body p{max-width:1000px!important}
}
@media (min-width:1680px) and (max-width:1812px){
body.route-article .article-layout:has(> .article-mid){grid-template-columns:minmax(0,960px) minmax(0,1fr) 300px}
.article-layout .article-mid{display:flex;flex-direction:column;gap:14px;min-width:0}
.mid-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 16px}
.mid-box h3{margin:0 0 9px;font-size:17px;line-height:1.35;color:var(--accent,#B0491F);font-weight:700}
.mid-box p{margin:0;font-size:13.5px;line-height:1.75;color:#3d3831}
.mid-box ul{margin:8px 0 0;padding-left:17px;font-size:13px;line-height:1.75;color:#3d3831}
.mid-grid{display:flex;flex-direction:column;gap:11px}
.mid-card{display:flex;gap:9px;align-items:flex-start;text-decoration:none;color:#241f19}
.mid-card img{width:64px;height:64px;object-fit:cover;border-radius:8px;flex:none}
.mid-card span{font-size:13.5px;line-height:1.5;font-weight:600;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mid-more{display:block;margin-top:11px;font-size:13.5px;font-weight:600;color:var(--accent,#B0491F);text-decoration:none}
}
@media (min-width:1813px) and (max-width:1919px){
body.route-article .article-layout:has(> .article-mid){grid-template-columns:minmax(0,960px) minmax(0,1fr) 300px}
.article-layout .article-mid{display:flex;flex-direction:column;gap:14px;min-width:0}
.mid-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 16px}
.mid-box h3{margin:0 0 9px;font-size:17px;line-height:1.35;color:var(--accent,#B0491F);font-weight:700}
.mid-box p{margin:0;font-size:14px;line-height:1.75;color:#3d3831}
.mid-box ul{margin:8px 0 0;padding-left:17px;font-size:13.5px;line-height:1.75;color:#3d3831}
.mid-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mid-card{display:block;text-decoration:none;color:#241f19}
.mid-card img{width:100%;height:96px;object-fit:cover;border-radius:10px;display:block}
.mid-card span{display:block;margin-top:6px;font-size:14px;line-height:1.5;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mid-more{display:block;margin-top:11px;font-size:14px;font-weight:600;color:var(--accent,#B0491F);text-decoration:none}
}

/* === USC-FIX 20261027zz34（10.74.63 · 页脚紧凑案A「四排紧凑」，陛下 2026-10-27 18:14 点定）===
   设计交账 audit/footer-compact-design-20261027（同口径总高 1920/1440：596/638→257；390：1184→724）。
   纯 CSS 覆盖，不动 render_footer 结构/文案/链接：① 组标题与 chips 同排，chips 小号
   （12.5px、内距 3×10、间距 6），城市/栏目桌面各 1 行；② 链接区改「品牌 400px＋三组
   横向单行链」网格（频道/服务/帮助与条款各占一行带）；③ 品牌 logo 36px、简介三段
   inline 同流、邮箱同行；④ 底栏内距收紧。≤760：explore 组恢复块级、链接区单列堆叠。
   回滚＝撤本段＋APP_VERSION 回退 10.74.62 后触发 FULL。 */
.site-explore{padding:14px 0 2px}
.explore-group{display:flex;align-items:flex-start;gap:16px;margin:0 0 8px}
.explore-group h2{font-size:14px;margin:0;padding-top:4px;flex:none}
.explore-chips{gap:6px}
.explore-chip{font-size:12.5px;line-height:1.4;padding:3px 10px}
.footer{padding:16px 0 20px}
.footer-grid{display:grid;grid-template-columns:400px 1fr;grid-template-areas:"brand nav1" "brand nav2" "brand nav3";column-gap:34px;row-gap:7px;padding-top:2px;padding-bottom:2px;align-items:start}
.footer-brand-col{grid-area:brand}
.footer-grid>nav:nth-child(2){grid-area:nav1}
.footer-grid>nav:nth-child(3){grid-area:nav2}
.footer-grid>nav:nth-child(4){grid-area:nav3}
.footer-brand{display:inline-block;margin-bottom:4px}
.footer-brand .brand-logo-img{height:36px!important;max-height:36px!important}
.footer-brand-col p{display:inline;font-size:11.5px;line-height:1.55;margin:0}
.footer-brand-col .footer-mail{display:inline;margin:0}
.footer-col{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:15px;row-gap:2px}
.footer-col h3{font-size:13px;margin:0 2px 0 0;flex:none}
.footer-col a{display:inline-block;padding:1px 0;font-size:12.5px}
.footer-bar{margin-top:14px;padding:10px 0 6px}
@media(max-width:760px){
.explore-group{display:block}
.explore-group h2{margin:0 0 6px;padding-top:0}
.footer-grid{grid-template-columns:1fr;grid-template-areas:"brand" "nav1" "nav2" "nav3";row-gap:12px}
}

/* === USC-FIX 20261027zz35-typography（10.74.65 · 全站文字排版填充 · 审计 audit/typography-layout-20261027；主线改序令 2026-10-27 18:56：本层先行落地、封顶填充续编 zz36 按本层生效后版面复测）===
   定因（VPS CDP 探针 audit.json＋probe2.json，六页型×八宽实测，2026-10-27）：
   ① 文章引言 p.lead 被通用段落帽 :is(.detail,.article-row,.item-card) p{max-width:76ch}
      钉死 633px（15px 字号下 76ch 实测 632.7px），全桌面档与 868–966px 正文列脱节，
      引言区右侧空白 27–35%——陛下 18:20 截图主诉；
   ② 文章正文段落同帽 76ch≈675px（16px 字号实测 674.9px）：≥1500 档正文列 910–960px
      只用约 70–74%，1025–1279 档列宽 868–900px 只用约 75–78%（zz33 的 1000px 行宽帽
      仅覆盖 1280–1499 档，该档实测行宽 49–57 字为全站最佳）；
   ③ 文章标题 .detail h1{max-width:34ch} 在 1025–1279 单栏档钉 633px（列宽 900px）；
   ④ 商家/信息 .detail-body 帽 72ch≈679px（≤1679）与 1180px（≥1680），与同卡兄弟块
      （contact-box/partner-box 实测 866–2004px）脱节，卡内右侧空白 22.7%（≤1440）至
      40.3%（2560）；
   ⑤ 论坛 .detail ≤1679 钉 900px 居中（同页兄弟块 1342px）、≥1680 被宽幅层放全幅
      1724–1970px，回复段落 76ch≈590px 在全幅卡内右侧空白约 66%；
   ⑥ 新闻/城市列表 .article-list--cards 两列网格在 761–1100 档未降列且行回横排：
      文字列仅 241px（1024，摘要行宽 17–21 字）／119px（768，摘要行宽 6–10 字）。
      ≤760 两列卡为 zz4（10.74.21）定版，本层不碰。
   解（纯 CSS 尾层追加，DOM 与 consumer 逻辑零改动）：
   A 文章：引言去帽与正文列同宽（行宽约 58–64 字）；正文 p/li 行宽帽 1000px 由
      zz33 的 1280–1499 扩至 ≥1024 全档（行宽约 52–60 字，守 ≤75 字/行线）；
      1025–1279 标题去 34ch 帽与列同宽。
   B 商家/信息：detail-body ≤1679 帽 679→1000px（实际受卡内容宽 866px 封顶即对齐）；
      ≥1680 改双栏 columns:2 流式平衡（单栏实宽约 701–974px、行宽约 41–57 字；
      不设 break-inside 并置 orphans/widows:1——夹具实测：break-inside 会把单段短文
      整段钉在左栏；默认 orphans/widows=2 又禁两行段落分栏，两者都致右栏仍空）。
   C 论坛：.detail 帽 900→1180px（≥1680 以 !important 收卡居中，仅 thread 路由覆盖
      宽幅层的 max-width:none）；正文与回复段落帽 1000px（回复行宽约 71 字，守线）。
   D 列表：761–1100 档 --cards 降单列（文字列 241→约 709px／119→约 453px，
      摘要行宽约 50／32 字）。
   兼容：zz28/zz33 三栏列宽零改动——本层只动列内文字帽；但文字变宽后段落行数减少、
   左栏（封顶线）随之变矮：封顶填充（zz36）按本层生效后版面复测校准（详见设计说明
   「与封顶批的衔接」）；纯白底、手机底栏、zz4 手机两列卡、首页零触碰；≤760 与 390
   全部规则不生效、零变化。
   回滚：删除本段（zz35-typography）即恢复本层施工前排版。 */
/* A1 引言与正文列同宽、正文行宽帽扩至 1024 档（≥1024） */
@media (min-width:1024px){
.route-article .lead{max-width:none}
.route-article .news-rich-body p,.route-article .news-rich-body li{max-width:1000px}
}
/* A2 B 商家正文对齐＋C 论坛收卡与段落帽（≥1025） */
@media (min-width:1025px){
.route-business .detail-body,.route-listing .detail-body{max-width:1000px}
.route-thread .detail{max-width:1180px}
.route-thread .detail-body{max-width:1000px}
.route-thread .reply p{max-width:1000px}
}
/* A3 标题去帽（1025–1279 单栏档） */
@media (min-width:1025px) and (max-width:1279px){
.route-article .detail h1{max-width:none}
}
/* B2 商家宽幅双栏＋C2 论坛宽幅收卡（≥1680） */
@media (min-width:1680px){
.route-business .detail-body,.route-listing .detail-body{max-width:none;columns:2;column-gap:56px;orphans:1;widows:1}
.route-thread .detail{max-width:1180px!important}
}
/* D 列表平板档降单列（761–1100） */
@media (min-width:761px) and (max-width:1100px){
.article-list.article-list--cards{grid-template-columns:minmax(0,1fr)}
}

/* ===== USC-FIX 20261027zz36（10.74.66 · 文章页中栏封顶填充，陛下 2026-10-27 18:19 点定；初版 zz35@10.74.64，主线改序后排版层 zz35-typography 先行、本层续编 zz36 并按新版面复测校准）=====
   固定件（同城商家）与可变件（同城图卡/论坛热议/最新资讯链/热门标签/广告 M1·M2）
   的 fill-* 样式，形态与设计夹具 build_fill5.js 定稿一致；裁剪显隐类 .fill-off
   由页内封顶脚本切换。中栏仅 ≥1680 显示（zz28/zz33 定版），本层不改分档。
   新版面校准（zz35-typography 使左栏变矮约 140px、余量 R 落入死区的实测处置）：
   商家卡内距微缩（padding 9→6、列表 gap 10→8、简介上距 4→2）＋简介截短
   30 字（consumer 侧）抬升 R；资讯链行单行省略使行高恒定、步长细化。 */
.fill-off{display:none!important}
.fill-box{margin:0}
.fill-bizlist{display:grid;gap:8px}
.fill-biz{display:block;color:inherit;text-decoration:none;border:1px solid #eee7dd;border-radius:10px;padding:6px 10px;background:#fff}
.fill-biz-top{display:flex;align-items:center;gap:8px}
.fill-biz strong{font-size:15px;color:#26221d;line-height:1.35}
.fill-biz em{font-style:normal;font-size:11.5px;color:#B0491F;background:#fbf3ec;border:1px solid #efd9c8;border-radius:999px;padding:1px 8px;white-space:nowrap}
.fill-biz p{margin:2px 0 0;font-size:13px;line-height:1.55;color:#5c564c}
.fill-threads{display:grid;gap:9px}
.fill-threads a{display:flex;gap:8px;align-items:baseline;color:#33302a;text-decoration:none;font-size:14px;line-height:1.45}
.fill-threads em{font-style:normal;font-size:11.5px;color:#B0491F;background:#fbf3ec;border:1px solid #efd9c8;border-radius:6px;padding:0 6px;white-space:nowrap}
.fill-threads a:hover span{text-decoration:underline}
.fill-ad{margin:0;background:#fff;border:1px solid #eee7dd;border-radius:12px;padding:8px}
.fill-ad a{display:block}
.fill-ad img{display:block;width:100%;height:auto;border-radius:8px}
.fill-citylist{display:grid}
.fill-citylist a{display:flex;justify-content:space-between;gap:10px;padding:8px 2px;border-bottom:1px dashed #e7dfd2;color:#33302a;text-decoration:none;font-size:14px;line-height:1.45}
.fill-citylist a:last-child{border-bottom:0}
.fill-citylist a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.fill-citylist time{font-size:12px;color:#8a8172;white-space:nowrap}
.fill-citylist a:hover span{text-decoration:underline}
.fill-tags{display:flex;flex-wrap:wrap;gap:8px}
.fill-tags a{font-size:13px;color:#7c4a21;background:#faf6ef;border:1px solid #eee3d3;border-radius:999px;padding:4px 12px;text-decoration:none}
.fill-tags a:hover{border-color:#B0491F;color:#B0491F}

/* ===== USC-FIX 20261027zz37-nav（10.74.67 落地、10.74.68 余量微调 · 桌面顶部导航字号调大，陛下 2026-10-27 18:54 亲令「导航太小了」，KINGAI 窗 18:57 移交本窗）=====
   基线（线上实测，zz29nav 甲案在位）：≥1401 档 13px（14 项合计 1056px）、1280–1400 档
   12px（936px）、1150–1279 档 12px 字距 −0.5（911px）、1025–1149 两行档 12px 图标 24px、
   761–1024 横滚档 12px；手机页眉（≤760）定版不动，本层无 ≤760 规则。
   设计（只动字号/字距/项内距与城市下拉宽，14 项构成、图标系统、两行档结构全部保留；
   字号增量按实测余量逐档给数，单行档保单行不爆）：
   ≥1680 → 18px；1440–1679 → 16px（项内距 3px、字距 −0.5、下拉 116px 兜底）；
   1401–1439 → 15px；1280–1400 → 13.5px（字距 −1；下拉维持 zz29nav 124px——
   实拍复核：110px 会截下拉当前值文字「全美·全部城市」，故不收窄该档下拉）；
   1150–1279 → 13px（字距 −1px 兜底）；1025–1149 两行档 → 14px（图标 24px 不动、
   换行结构不变）；761–1024 横滚档 → 13px。城市下拉与「＋免费发布」按钮字号随档微调。
   回滚：删除本段（zz37-nav）即恢复。 */
@media (min-width:1680px){
.nav-inner>a:not(.nav-publish){font-size:18px!important;padding:9px 5px!important}
.dnav-ic{margin-right:4px}
.nav-inner .city-picker{flex:0 0 132px!important;width:132px!important;min-width:0!important;max-width:132px!important;font-size:15px!important}
.nav-inner .nav-publish{font-size:15px!important;padding:9px 12px!important}
}
@media (min-width:1440px) and (max-width:1679px){
.nav-inner>a:not(.nav-publish){font-size:16px!important;padding:9px 3px!important;letter-spacing:-0.75px!important}
.dnav-ic{margin-right:3px}
.nav-inner .city-picker{flex:0 0 116px!important;width:116px!important;min-width:0!important;max-width:116px!important;font-size:15px!important}
.nav-inner .nav-publish{font-size:14px!important;padding:9px 12px!important}
}
@media (min-width:1401px) and (max-width:1439px){
.nav-inner>a:not(.nav-publish){font-size:15px!important;padding:9px 3px!important;letter-spacing:-0.5px!important}
.dnav-ic{margin-right:3px}
.nav-inner .city-picker{flex:0 0 116px!important;width:116px!important;min-width:0!important;max-width:116px!important;font-size:15px!important}
.nav-inner .nav-publish{font-size:14px!important;padding:9px 12px!important}
}
@media (min-width:1280px) and (max-width:1400px){
.nav-inner>a:not(.nav-publish){font-size:13.5px!important;padding:9px 2px!important;letter-spacing:-1px!important}
.dnav-ic{margin-right:2px}
}
@media (min-width:1150px) and (max-width:1279px){
.nav-inner>a:not(.nav-publish){font-size:13px!important;padding:9px 3px!important;letter-spacing:-1px!important}
.dnav-ic{margin-right:2px}
}
@media (min-width:1025px) and (max-width:1149px){
.nav-inner>a:not(.nav-publish){font-size:14px!important}
}
@media (min-width:761px) and (max-width:1024px){
.nav-inner>a:not(.nav-publish){font-size:13px!important}
}

/* P-2 (10.74.77): 商家认证徽章＋认领入口＋文章收藏钮 */
.biz-vbadge{display:inline-block;background:#B0491F;color:#fff;border-radius:999px;padding:2px 10px;font-size:12.5px;font-weight:600}
.biz-vbadge-sm{display:inline-block;background:#B0491F;color:#fff;border-radius:999px;padding:0 7px;font-size:11px;font-weight:600;vertical-align:2px}
.biz-verified{margin:6px 0 2px}
.biz-vdate{color:#777;font-size:12.5px}
.biz-claim{margin:10px 0}
.fav-row{margin:14px 0}
.fav-btn{border:1.5px solid #B0491F;color:#B0491F;background:#fff;border-radius:999px;padding:6px 16px;font-size:14px;cursor:pointer}
.fav-btn[data-on="1"]{background:#B0491F;color:#fff}

/* ===== USC-FIX 20261028zz38-contact（10.74.83 落地 · /contact/ 排版紧凑化＋AI 客服「安安」悬浮窗，陛下 2026-10-28 14:23/14:26 令）
   范围：仅 route-contact 页型与 .anan-* 悬浮件；本页隐藏旧 .support-widget（其工单功能与页内表单重复，避免双悬浮件）。
   回滚：删除本段（zz38-contact）即恢复。 */
/* —— /contact/ 紧凑化：面板放宽承载双栏、间距与内边距收紧、标题归一 —— */
.route-contact .main{padding-top:16px;padding-bottom:40px}
.route-contact .page-topfig{margin:6px 0 10px}
.route-contact .support-center-page{width:min(880px,100%);padding:16px 18px 14px}
.route-contact .support-center-page h2{font-size:19px;line-height:1.35;margin:0 0 6px}
.route-contact .support-center-page h2.gap-top{margin-top:16px}
.route-contact .support-center-page p{margin:4px 0 8px}
.route-contact .support-center-page label{margin:0 0 9px;gap:4px}
.route-contact .support-center-page #askForm{display:flex;gap:8px;align-items:flex-end;margin:6px 0 4px}
.route-contact .support-center-page #askForm label{flex:1;margin:0;min-width:0}
.route-contact .support-center-page #askForm .btn{white-space:nowrap}
.route-contact .faq-list{gap:8px;margin:4px 0 2px}
.route-contact .faq-item{padding:8px 12px;border-radius:10px}
.route-contact .faq-item summary{font-size:14.5px}
.route-contact .faq-item p{margin:6px 0 2px;font-size:13.5px;line-height:1.55}
.anan-entry a{color:#B0491F;font-weight:650}
@media(min-width:1025px){
.route-contact .faq-list{grid-template-columns:1fr 1fr;align-items:start}
.route-contact .support-center-page #f{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.route-contact .support-center-page #f>label:nth-of-type(6){grid-column:1/-1}
.route-contact .support-center-page #f .cf-turnstile{grid-column:1/-1}
.route-contact .support-center-page #f>button{justify-self:start;padding-left:26px;padding-right:26px}
}
@media(max-width:760px){
.route-contact .main{padding-bottom:88px}
.route-contact .support-center-page{padding:12px 12px 10px}
.route-contact .support-center-page h2{font-size:17px}
.route-contact .faq-item summary{font-size:14px}
}
/* —— 本页隐藏旧悬浮客服件（页内工单表单即其全量替代） —— */
.route-contact .support-widget{display:none}
/* —— AI 客服安安悬浮窗（尺寸上限：钮 56/52、窗 360×480、手机 ≤58vh，陛下 14:26 明令） —— */
.anan-fab{position:fixed;right:18px;bottom:22px;width:56px;height:56px;border-radius:50%;border:2px solid #B0491F;background:#fff;padding:0;cursor:pointer;box-shadow:0 8px 24px rgba(90,40,15,.28);z-index:1150}
.anan-fab img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.anan-fab-badge{position:absolute;right:-4px;bottom:-4px;background:#B0491F;color:#fff;font-size:9px;line-height:1;padding:3px 5px;border-radius:8px;font-weight:700;letter-spacing:.5px}
.anan-win{position:fixed;right:18px;bottom:90px;width:360px;max-width:calc(100vw - 24px);height:480px;max-height:calc(100vh - 112px);background:#fff;border:1px solid #e8ddd2;border-radius:14px;box-shadow:0 18px 48px rgba(60,30,10,.25);z-index:1160;display:flex;flex-direction:column;overflow:hidden}
.anan-win[hidden]{display:none}
.anan-head{display:flex;align-items:center;gap:9px;padding:10px 12px;background:#fdf8f3;border-bottom:1px solid #f0e4d6}
.anan-head img{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:none}
.anan-head-tx{flex:1;display:flex;flex-direction:column;line-height:1.25;min-width:0}
.anan-head-tx strong{font-size:14.5px;color:#33302b}
.anan-head-tx span{font-size:11px;color:#8a7a68}
.anan-x{border:0;background:none;font-size:20px;line-height:1;color:#8a7a68;cursor:pointer;padding:4px 6px}
.anan-msgs{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px;background:#fff}
.anan-msg{max-width:85%;padding:8px 11px;border-radius:12px;font-size:13.5px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.anan-msg.bot{align-self:flex-start;background:#f7f1ea;color:#33302b;border-bottom-left-radius:4px}
.anan-msg.user{align-self:flex-end;background:#B0491F;color:#fff;border-bottom-right-radius:4px}
.anan-form{display:flex;gap:7px;padding:9px 10px;border-top:1px solid #f0e4d6;background:#fff}
.anan-form input{flex:1;min-width:0;min-height:38px;padding:8px 10px;font-size:14px}
.anan-send{border:0;background:#B0491F;color:#fff;border-radius:9px;padding:0 15px;font-weight:700;cursor:pointer;min-height:38px;flex:none}
.anan-note{margin:0;padding:0 12px 9px;font-size:11px;color:#9a8a76;line-height:1.5;background:#fff}
@media(max-width:760px){
.anan-fab{right:12px;bottom:80px;width:52px;height:52px}
.anan-win{right:12px;bottom:142px;width:calc(100vw - 24px);height:58vh;max-height:480px}
}

/* ===== USC-FIX 20261028zz38b-contact-tighten（同批补遗 · /contact/ 二轮收紧：FAQ 行高、留言框高、手机间距） ===== */
.route-contact .faq-item{padding:6px 10px}
.route-contact .support-center-page textarea{height:108px;min-height:108px}
@media(max-width:760px){
.route-contact .support-center-page h2.gap-top{margin-top:12px}
.route-contact .support-center-page label{margin:0 0 7px}
}
/* ===== USC-FIX 20261028zz39-contact2: /contact/ compact three-zone grid (route-contact only) ===== */
.route-contact .main{padding-top:12px}
.route-contact .section-heading{margin:0 0 10px}
.route-contact .contact2-grid{display:grid;gap:12px;grid-template-areas:"ask" "form" "faq"}
.route-contact .contact2-ask{grid-area:ask}
.route-contact .contact2-form{grid-area:form}
.route-contact .contact2-faq{grid-area:faq}
.route-contact .contact2-card{background:#FFFCF7;border:1px solid #F0E4D3;border-radius:14px;padding:14px 16px}
.route-contact .contact2-card h2{margin:0 0 8px;font-size:16.5px;line-height:1.3;color:#33302B;display:flex;align-items:center;gap:8px}
.route-contact .contact2-card h2::before{content:"";flex:none;width:4px;height:16px;border-radius:2px;background:#B0491F}
.route-contact .contact2-card p{margin:0 0 8px}
.route-contact .contact2-card label{display:block;font-size:13px;color:#57493D}
.route-contact .contact2-card input[type="text"],.route-contact .contact2-card input:not([type]),.route-contact .contact2-card input[type="email"],.route-contact .contact2-card select,.route-contact .contact2-card textarea{width:100%;box-sizing:border-box;margin-top:4px;border:1px solid #E3D5C2;border-radius:8px;background:#fff;padding:8px 10px;font-size:14px;color:#33302B}
.route-contact .contact2-ask form{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin:0}
.route-contact .contact2-ask form .btn{height:37px;padding:0 18px;white-space:nowrap}
.route-contact .contact2-ask #askResult:empty{display:none}
.route-contact .contact2-ask #askResult .faq-item{margin-top:10px}
.route-contact .contact2-ask .anan-entry{margin:10px 0 0;font-size:13px}
.route-contact .contact2-form form{display:grid;gap:8px;margin:0}
.route-contact .contact2-form textarea{height:88px;resize:vertical}
.route-contact .contact2-form .btn{justify-self:start;height:38px;padding:0 24px}
.route-contact .contact2-form p{font-size:13.5px}
.route-contact .contact2-faq .faq-list{display:grid;grid-template-columns:1fr;gap:6px}
.route-contact .contact2-faq .faq-item{margin:0}
.route-contact .contact2-faq .faq-item summary{padding:7px 10px;font-size:13.5px;line-height:1.4}
.route-contact .contact2-faq .faq-item p{padding:2px 10px 8px;font-size:13px;line-height:1.55}
@media(min-width:1101px){
.route-contact .contact2-grid{grid-template-columns:370px 1fr;grid-template-areas:"ask faq" "form faq"}
.route-contact .contact2-faq .faq-list{grid-template-columns:1fr 1fr;gap:6px 16px}
}
@media(min-width:1700px){
.route-contact .contact2-grid{grid-template-columns:410px 1fr}
}
@media(max-width:760px){
.route-contact .contact2-card{padding:12px}
.route-contact .contact2-card h2{font-size:15.5px}
.route-contact .contact2-ask form{grid-template-columns:1fr auto}
.route-contact .contact2-faq .faq-item summary{padding:8px 9px;font-size:13px}
}
/* ===== /USC-FIX zz39 ===== */
/* ===== USC-FIX 20261028zz40-contact3: /contact/ one-screen grouped FAQ + answer panel (route-contact only) ===== */
.route-contact .main{padding-top:8px}
.route-contact .section-heading{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:0 0 8px}
.route-contact .section-heading h1{font-size:23px;margin:0}
.route-contact .section-heading .muted{margin:0;font-size:13px}
.route-contact .c3-card{background:#FFFCF7;border:1px solid #F0E4D3;border-radius:14px;padding:12px 16px}
.route-contact .c3-card h2{margin:0 0 8px;font-size:16.5px;line-height:1.3;color:#33302B;display:flex;align-items:center;gap:7px}
.route-contact .c3-card h2 svg{width:16px;height:16px;stroke:#B0491F;flex:none}
.route-contact .c3-card p{margin:0 0 8px}
.route-contact .c3-ask{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"h2 main anan" "note note note" "result result result";column-gap:14px;align-items:center}
.route-contact .c3-ask h2{grid-area:h2;margin:0;white-space:nowrap}
.route-contact .c3-ask form{grid-area:main;display:flex;gap:8px;align-items:center;margin:0}
.route-contact .c3-ask form label{flex:1;display:flex;align-items:center;gap:8px;font-size:13px;color:#57493D;margin:0}
.route-contact .c3-ask form input{flex:1;width:100%;box-sizing:border-box;border:1px solid #E3D5C2;border-radius:8px;background:#fff;padding:8px 10px;font-size:14px;color:#33302B;margin:0}
.route-contact .c3-ask form .btn{height:37px;padding:0 18px;white-space:nowrap}
.route-contact .c3-ask .anan-entry{grid-area:anan;margin:0;font-size:12.5px;white-space:nowrap}
.route-contact .c3-ask .c3-ask-note{grid-area:note;margin:7px 0 0;font-size:12.5px}
.route-contact .c3-ask #askResult{grid-area:result}
.route-contact .c3-ask #askResult:empty{display:none}
.route-contact .c3-ask #askResult .faq-item{margin-top:9px;max-height:118px;overflow:auto}
.route-contact .c3-row{display:grid;grid-template-columns:1fr 372px;gap:12px;margin-top:12px;align-items:start}
.route-contact .faq-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.route-contact .faq-group{background:#fff;border:1px solid #F3E7D3;border-radius:10px;padding:8px 10px 9px}
.route-contact .faq-group h3{margin:0 0 4px;font-size:12.5px;color:#8A5A33;display:flex;align-items:center;gap:5px}
.route-contact .faq-group h3 svg{width:13px;height:13px;stroke:#B0491F;flex:none}
.route-contact .faq-group .faq-count{margin-left:auto;color:#BFAE94;font-weight:400;font-size:11px}
.route-contact .faq-rows{display:grid;gap:1px}
.route-contact .faq-row{display:flex;align-items:center;gap:6px;width:100%;text-align:left;background:none;border:0;border-radius:6px;padding:3px 6px;font-size:13px;line-height:1.35;color:#3A342C;cursor:pointer;min-height:28px;font-family:inherit}
.route-contact .faq-row:hover{background:#FBF3E7}
.route-contact .faq-row::after{content:"";margin-left:auto;flex:none;width:7px;height:7px;border-right:1.6px solid #B0491F;border-top:1.6px solid #B0491F;transform:rotate(45deg);opacity:.7}
.route-contact .faq-row.active{background:#F7E8D8;color:#8A3B14;font-weight:600}
.route-contact .faq-row.active::after{transform:rotate(135deg);opacity:1}
.route-contact .faq-panel{margin-top:9px;background:#FFF7EA;border:1px solid #F0DFC2;border-radius:10px;padding:8px 12px;height:86px;overflow:auto;font-size:13.5px;line-height:1.6;color:#3A342C}
.route-contact .faq-panel strong{display:block;margin-bottom:1px;color:#8A3B14;font-size:13.5px}
.route-contact .faq-panel .faq-panel-hint{color:#97856C;margin:0}
.route-contact .c3-form form{display:grid;gap:7px;margin:0}
.route-contact .c3-form label{display:block;font-size:12.5px;color:#57493D}
.route-contact .c3-form input:not([type]),.route-contact .c3-form input[type="email"],.route-contact .c3-form select,.route-contact .c3-form textarea{width:100%;box-sizing:border-box;margin-top:3px;border:1px solid #E3D5C2;border-radius:8px;background:#fff;padding:7px 10px;font-size:14px;color:#33302B}
.route-contact .c3-form textarea{height:72px;resize:vertical}
.route-contact .c3-form .btn{justify-self:start;height:37px;padding:0 24px}
.route-contact .c3-form p{font-size:13px}
@media(min-width:1700px){
.route-contact .c3-row{grid-template-columns:1fr 400px}
}
@media(max-width:1100px){
.route-contact .c3-ask{grid-template-columns:1fr;grid-template-areas:"h2" "main" "note" "anan" "result"}
.route-contact .c3-ask .anan-entry{white-space:normal}
.route-contact .c3-row{display:flex;flex-direction:column}
.route-contact .c3-form{order:-1;width:100%;box-sizing:border-box}
.route-contact .c3-faq{width:100%;box-sizing:border-box}
.route-contact .faq-groups{grid-template-columns:1fr}
.route-contact .faq-rows{grid-template-columns:1fr 1fr}
.route-contact .faq-panel{height:84px}
.route-contact .c3-form form{grid-template-columns:1fr 1fr}
.route-contact .c3-form form label:nth-of-type(6),.route-contact .c3-form form .cf-turnstile,.route-contact .c3-form form .btn{grid-column:1/-1}
.route-contact .c3-form form .btn{justify-self:start}
}
@media(max-width:480px){
.route-contact .faq-rows{grid-template-columns:1fr 1fr;column-gap:4px}
.route-contact .faq-row{font-size:12.5px;padding:3px 4px}
.route-contact .c3-card{padding:11px 12px}
.route-contact .section-heading h1{font-size:21px}
}
/* ===== /USC-FIX zz40 ===== */
/* ===== USC-FIX 20261028zz41-contact3-tight: balance FAQ groups via columns, tighten panel (route-contact only) ===== */
.route-contact .section-heading{margin-bottom:6px}
@media(min-width:1101px){
.route-contact .faq-groups{display:block;column-count:3;column-gap:8px}
.route-contact .faq-group{break-inside:avoid;margin:0 0 8px}
.route-contact .faq-panel{height:76px}
.route-contact .faq-row{min-height:27px;padding-top:2px;padding-bottom:2px}
.route-contact .c3-card{padding-top:10px;padding-bottom:10px}
.route-contact .c3-row{margin-top:10px}
}
/* ===== /USC-FIX zz41 ===== */
/* ===== USC-FIX 20261028zz42-contact3-tight2: one-line heading, desktop form pairs, shorter panel (route-contact only) ===== */
@media(min-width:1101px){
.route-contact .section-heading>div{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.route-contact .section-heading h1{white-space:nowrap}
.route-contact .c3-form form{grid-template-columns:1fr 1fr}
.route-contact .c3-form form label:nth-of-type(6),.route-contact .c3-form form .cf-turnstile,.route-contact .c3-form form .btn{grid-column:1/-1}
.route-contact .c3-form form .btn{justify-self:start}
.route-contact .c3-form textarea{height:60px}
.route-contact .c3-form label{font-size:12px}
.route-contact .c3-form input:not([type]),.route-contact .c3-form input[type="email"],.route-contact .c3-form select{padding-top:6px;padding-bottom:6px}
.route-contact .faq-panel{height:68px}
}
/* ===== /USC-FIX zz42 ===== */
/* ===== USC-FIX 20261028zz43-contact3-tight3: final squeeze for 900px line (route-contact only) ===== */
@media(min-width:1101px){
.route-contact .faq-row{min-height:25px}
.route-contact .faq-panel{height:64px}
.route-contact .faq-group{padding-top:7px;padding-bottom:8px}
.route-contact .faq-group h3{margin-bottom:3px}
.route-contact .c3-row{margin-top:8px}
.route-contact .c3-ask .c3-ask-note{margin-top:5px}
}
@media(max-width:1100px){
.route-contact .faq-panel{height:80px}
}
/* ===== /USC-FIX zz43 ===== */
/* ===== USC-FIX 20261028zz44-contact-anan-accordion: ask->Anan thread + FAQ accordion (route-contact only) ===== */
.route-contact .c3-ask #askResult{margin-top:9px;max-height:100px;overflow-y:auto;scrollbar-width:thin}
.route-contact .ask-u{margin:0 0 6px;padding:6px 9px;background:#F3EDE3;border-radius:8px;font-size:13.5px;color:#4A4036}
.route-contact .ask-a{margin:0 0 8px;font-size:13.5px;line-height:1.65;color:#33302B}
.route-contact .ask-a-head{display:flex;align-items:center;gap:6px;margin:0 0 2px}
.route-contact .ask-a-head img{width:22px;height:22px;border-radius:50%}
.route-contact .ask-a-head strong{font-size:12.5px;color:#B0491F}
.route-contact .ask-a p{margin:0;white-space:pre-wrap;overflow-wrap:break-word}
.route-contact .ask-wait p{color:#8A7B68}
@media(min-width:1101px){
.route-contact .faq-groups{display:flex;column-count:auto;gap:8px;max-height:412px;overflow-y:auto;scrollbar-width:thin}
.route-contact .faq-col{flex:1 1 0;min-width:0;display:flex;flex-direction:column}
.route-contact .faq-col .faq-group:last-child{margin-bottom:0}
}
.route-contact .faq-answer{max-height:180px;overflow-y:auto;margin:3px 0 7px;padding:8px 10px;background:#FBF7F0;border:1px solid #EFE6D8;border-radius:8px;font-size:13px;line-height:1.65;color:#4A4036;animation:uscFaqIn .18s ease-out;scrollbar-width:thin}
@media(max-width:1100px){.route-contact .faq-answer{max-height:160px}}
@keyframes uscFaqIn{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
/* ===== /USC-FIX zz44 ===== */
.route-contact .faq-answer{max-height:180px;overflow-y:auto;margin:3px 0 7px;padding:8px 10px;background:#FBF7F0;border:1px solid #EFE6D8;border-radius:8px;font-size:13px;line-height:1.65;color:#4A4036;animation:uscFaqIn .18s ease-out;scrollbar-width:thin}
@media(max-width:1100px){.route-contact .faq-answer{max-height:160px}}
@keyframes uscFaqIn{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
/* ===== /USC-FIX zz44 ===== */
/* ===== USC-FIX 20261028zz44b-contact-accordion-mobile: rows grid minmax + answer span (route-contact only) ===== */
@media(max-width:1100px){
.route-contact .faq-groups{grid-template-columns:minmax(0,1fr)}
.route-contact .faq-rows{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.route-contact .faq-col{min-width:0}
.route-contact .faq-answer{grid-column:1/-1}
}
/* ===== /USC-FIX zz44b ===== */
/* ===== USC-FIX 20261028zz45-feed-mobile-overlap: 首页中栏 feed 单列带文字错位修复 =====
   根因: zz32(头条三列底边对齐)钉高规则 .home-lead-composition--v830 .home-news-feed--v810{height:500px!important}
   未带媒体界、特异度(0,3,0)压过 <=760 定版层(USC-FIX 20261025i)的 height:auto(特异度(0,1,0)),
   单列带(<=1150)同样被钉高 500: 6 条内容实高约 124/条(文列 104+padding 20)共约 744,
   flex 纵列收缩把每条压到约 83.17, meta 第二行(来源行)溢出压住下一条栏目名。
   本层只在 <=1150 单列带以同选择器后置覆盖 height:auto, 恢复 20261025i 定版"条目按内容高";
   >=1151 三列定版(zz32 钉高 500+zz12/zz13 槽内预算)逐值不动; 字号/行高/间距/图尺寸一律未动。 */
@media (max-width:1150px){
.home-lead-composition--v830 .home-news-feed--v810{height:auto!important}
}
/* ===== /USC-FIX zz45 ===== */
/* ===== USC-FIX 20261028zz46-tap-highlight-news: 新闻条目触摸时日期行被冲淡对策 =====
   陛下真机(iOS)报: 手指触摸新闻条目时其日期行消失。双引擎(Chromium/WebKit)全手势复现
   (按压住/:active 强制/可信 tap+粘性 hover/动画拖滚/跳滚)均未复现: 日期行计算样式与
   截图墨迹全程不变(18.3-19.1%), 无 JS 变动、无覆盖元素(命中点即 SMALL 本身)。
   唯一与全部观察相容的候选: Mobile Safari 默认触摸高亮(-webkit-tap-highlight-color
   半透明灰罩; 本站 CSS 从未设此值)在手指按下期间盖住条目, 把全条最浅的日期字
   (#84907f/11.5px, 对白底对比约 3.1:1)对比冲没, 深色粗体标题则仍可读。该高亮为
   iOS 真机专属绘制, Chromium 与桌面级 WebKit 均不绘制(实测按下时条目底色仍纯白),
   沙箱内不可实证。本层仅去掉新闻链接的触摸高亮罩: 静止态字号/行高/配色/间距/
   图尺寸/卡片形态一律不变; 待陛下真机验证定案, 无效即撤本层。 */
.home-news-feed--v810>a,.row2-item,.home-news-lead,.article-row{-webkit-tap-highlight-color:transparent}
/* ===== /USC-FIX zz46 ===== */

/* === USC-FIX 20261029zz47（广告条高度统一 · 陛下 13:13 令「上面的广告太矮了，参考下面的」）===
   病灶：zz16 期层把 .partner-box--strip 格 aspect-ratio 钉 6/1（图源 _wideh5 840x150），
   全站整图条带均为扁条（文章页咨询块下 detail_partner 格高仅 28.7px），而页脚缎带
   .partner-ribbon--bottom 格为 3/1（图源 _ribh5 960x320、高 87-131px）。
   修法（CSS 收口层；消费端 house_rect_half 图源链同步改 _ribh5 起头，见
   audit/ad-strip-height-20261029/交账.md）：strip 格比 6/1->3/1 与缎带同口径；
   条带盒 padding 归零、行 gap 8->10 与缎带同值，使全幅条带格宽/格高与缎带格一致；
   作用域仅 >=761px，手机 mv（_mcard5 双格）零变化；首页 .route-home 既有
   aspect:auto＋height:var(--hstrip) 覆盖（特异度更高）不受影响。 */
@media (min-width:761px){
.partner-box--strip .partner-row{padding:0;gap:10px}
.partner-box--strip .partner-cell.partner-cell{aspect-ratio:3/1!important}
.partner-box--strip .partner-cell.partner-cell .partner-cell__img{aspect-ratio:3/1!important}
}

/* === USC-FIX 20261029zz48（文章页 detail_partner 广告条移出阅读栏 · 陛下 13:56 点定「把广告条移出阅读栏，与页脚条等高」）===
   模板层（consumer render_article）已把 detail_partner 条的 dv 变体移出
   .article-main、作 .article-layout 直接子级；主栏其余内容拆为正文段
   .article-main 与续段 .article-main--cont（服务提示/相关阅读/翻页/更多），
   mv 变体留原文位。本层仅做网格行列定位：条带整行横通 .article-layout
   （与页脚缎带同一外层容器宽度），格比 3/1 沿 zz47，格高随之与缎带一致；
   三栏列宽各档定版值（960/1fr/300、1fr/300、单列）与各栏样式逐值未动。
   条带缺席（短文未达密度门槛）时经 :has 兜底：续段落第 2 行，不留空行。
   手机（<=760）不设定位：单列按 DOM 序堆叠，mv 呈现与改前逐值一致。 */
@media (min-width:761px){
body.route-article .article-layout>.article-main{grid-column:1;grid-row:1}
body.route-article .article-layout>.partner-box--detail_partner{grid-column:1/-1;grid-row:2}
body.route-article .article-layout>.article-main--cont{grid-column:1;grid-row:2;min-width:0}
body.route-article .article-layout:has(>.partner-box--detail_partner)>.article-main--cont{grid-row:3}
}
@media (min-width:1101px){
body.route-article .article-layout>.article-mid{grid-column:2;grid-row:1}
body.route-article .article-layout>.article-rail{grid-column:-2/-1;grid-row:1}
}
/* ===== /USC-FIX zz48 ===== */

/* ==== zz49 (2026-10-29 render-batch): forum latest-topics 3-col cards + board icons (user-directed) ====
   .topic-grid only on the render_forum list; in-feed ad blocks (non-anchor children) span all columns. */
@media (min-width:1101px){.article-list.topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:761px) and (max-width:1100px){.article-list.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.article-list.topic-grid>.partner-box,.article-list.topic-grid>.partner-ribbon,.article-list.topic-grid>.sponsor-card,.article-list.topic-grid>.sponsor-text,.article-list.topic-grid>.house-card,.article-list.topic-grid>.partner-strip,.article-list.topic-grid>.partner-ledger,.article-list.topic-grid>.ad-card{grid-column:1/-1}
.article-list .topic-card{align-items:flex-start}
.article-list .topic-ic{flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:#FFF3E4;display:flex;align-items:center;justify-content:center}
.article-list .topic-ic svg{width:30px;height:30px;display:block}
.article-list .topic-main{flex:1 1 auto;min-width:0}
/* ==== zz50 (2026-10-29 render-batch): typesetting root fix (typesetting audit S6/S7) ====
   (1) global 78ch paragraph cap binding removed (component caps zz32/zz35 untouched);
   (2) tablet 761-1024 caps mirror zz35; (3) sibling component caps converted;
   (4) >=1680 business/listing bodies single column 1180px (main-line ruling);
   (5) .detail-body white-space back to normal (segmented_body renders <p> now). */
p,li{max-width:none}
.smart-intro p,.notice-copy p,.mail-preferences p{max-width:none}
@media (min-width:761px) and (max-width:1024px){
.route-article.lead{max-width:none}
.route-article .col-main .detail-body{max-width:1000px}
.route-article.news-rich-body p,.route-article.news-rich-body li{max-width:1000px}
.route-article .news-rich-body p,.route-article .news-rich-body li{max-width:1000px}
.route-business .detail-body,.route-listing .detail-body{max-width:1000px}
.route-thread .detail-body{max-width:1000px}
.route-thread .reply p{max-width:1000px}
}
@media (min-width:1680px){.route-business .detail-body,.route-listing .detail-body{max-width:1180px;columns:auto}}
.detail-body{white-space:normal}
.route-business .detail-body,.route-listing .detail-body,.route-thread .detail-body,.route-event .detail-body{white-space:normal}
/* ==== zz51 (2026-10-29 render-batch): news text rows get registered thumbnails (.mini-thumb) ==== */
.mini-thumb{object-fit:cover;border-radius:8px;background:#f3ece5;flex:0 0 auto}
.home-quick a{grid-template-columns:7px 46px minmax(0,1fr) auto}
.home-quick .mini-thumb{width:46px;height:34px}
.department-story{display:flex;align-items:center;gap:9px}
.department-story .mini-thumb{width:44px;height:33px}
.city-feature-wide-second{display:flex;align-items:center;gap:8px}
.city-feature-wide-second .mini-thumb{width:40px;height:30px}
.city-mini-second{display:flex;align-items:center;gap:7px}
.city-mini-second .cms-t{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;min-width:0}
.city-mini-second .mini-thumb{width:40px;height:30px}
.more-grid a{justify-content:flex-start;gap:10px}
.more-grid a strong{flex:1 1 auto;min-width:0}
.more-grid a .mini-thumb{width:56px;height:42px}
.rail-hot a{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:9px;align-items:start}
.rail-hot a .mini-thumb{width:52px;height:40px;grid-row:1/3}
.rail-hot a strong,.rail-hot a small{grid-column:2;min-width:0}
.related-reading-grid a .mini-thumb{width:100%;height:110px;border-radius:8px;display:block;margin-bottom:8px}
.fill-citylist a{justify-content:flex-start}
.fill-citylist a .mini-thumb{width:40px;height:30px;margin-right:8px}
.fill-citylist a time{margin-left:auto}

/* ==== zz51b (2026-10-29 render-batch correction): quick-news thumbs target the real
   container .quick-news-links (zz51's .home-quick rules match no DOM node). ==== */
.quick-news-links a{grid-template-columns:7px 46px minmax(0,1fr) auto}
.quick-news-links .mini-thumb{width:46px;height:34px}

/* ==== zz51c (2026-10-29 user-directed correction): instant-news rail carries NO thumbs
   (His Majesty's 20:44 ruling; the narrow rail squeezes rows). Restore the 3-track grid,
   neutralize zz51's dead .home-quick rules. Instant-news = named exception to
   "every news surface shows its registered image". ==== */
.quick-news-links a{grid-template-columns:7px minmax(0,1fr) auto}
.home-quick a{grid-template-columns:7px minmax(0,1fr) auto}
.home-quick .mini-thumb{width:auto;height:auto}

/* ==== zz51d (2026-10-29 user-directed correction 2): sidebar mini lists are text-only
   (His Majesty's 20:48 ruling — rail hot/latest and the mid-column chain squeezed).
   Restore the pre-zz51 rail/chain layouts; thumbs remain only where the layout
   has a real image slot or ample width. ==== */
.rail-hot a{display:flex;flex-direction:column;gap:1px;align-items:stretch}
.fill-citylist a{justify-content:space-between}
.fill-citylist a time{margin-left:0}

/* ==== zz51e (2026-10-29 user-directed correction 3): ALL list-type entries are text-only
   (His Majesty's 21:16 ruling — department lists, city-card entry lists, more/related
   lists join quick/rails/chain). Restore pre-zz51 layouts for those faces; .mini-thumb
   rules for them go inert as markup no longer emits thumbs there. ==== */
.department-story{display:block}
.city-feature-wide-second{display:block}
.city-mini-second{display:-webkit-box}
.more-grid a{justify-content:space-between;gap:0}
.related-reading-grid a .mini-thumb{display:none}

/* ==== zz52 (2026-10-29 render-batch): article-757 misalignment root-cause fixes ====
   (1) the 5-across sponsor strip component assumes full-width placement; inside the
   910px body column (or the 300px rail) its cells shrink to unreadable slivers ->
   body strips go 2-across, rail strips single-column (full-width strips untouched).
   (2) in-body note card capped at the _card variant's natural width, centered.
   (3) tablet-band article lead uncapped with the correct descendant selector
   (zz50's tablet entry reused zz35's dead compound selector). */
.detail-body .partner-row{grid-template-columns:repeat(2,minmax(0,1fr))}
.rail .partner-row{grid-template-columns:1fr}
.partner-box--article_incontent{max-width:664px;margin-left:auto;margin-right:auto}
@media (min-width:761px) and (max-width:1024px){.route-article .lead{max-width:none}}

/* ==== zz53 (2026-10-29 render-batch): geometry-gate findings, root-cause fixes ====
   (1) residual quasi-global ch caps that outrank zz50's element-level abolition by
   specificity (:is() = class-level) -> detail-page paragraphs measured 717px at
   every desktop width. Abolished; body copy fills its column (component px caps
   elsewhere untouched).
   (2) .fill-citylist rows: the <a> is a grid item whose min-content (660px) refused
   to shrink, so the span's ellipsis never engaged -> mid-column chain spilled at
   >=1680 (doc overflow at 1680, box spill at 1920). min-width:0 on the row chain.
   (3) contact FAQ at <=760: rows grid kept two columns (buttons squeezed to 144px,
   question text clipped) -> single column + wrapping. */
:is(.detail,.article-row,.item-card) p{max-width:none}
.detail-body,.article-body{max-width:none}
.fill-citylist,.fill-citylist a{min-width:0}
@media (max-width:760px){
.route-contact .faq-groups{flex-direction:column;max-height:none;overflow:visible}
.route-contact .faq-rows{grid-template-columns:1fr}
.route-contact .faq-row{min-width:0;white-space:normal}
.route-contact .faq-group{min-width:0}
}

/* ==== zz54 (2026-10-29 render-batch): in-body note slot ceiling, enforced ====
   zz52's max-width cap never took effect: a sponsor restyle rule
   (.partner-box,.partner-box--house{max-width:100%!important}) voided it, so the
   note creative rendered at full column width (951x831 measured). The slot now
   has a hard ceiling at its frozen geometry (house_rect _wide 1120x640 family):
   max-width 760px, proportional scaling, centered; whole image, no crop/stretch. */
.partner-box--article_incontent{max-width:760px!important}
.partner-box--detail_partner{max-width:760px!important;margin-left:auto;margin-right:auto}

/* ==== zz55 (2026-10-29 render-batch): strip/note scope corrections ====
   Census of every strip on the article page found two scope errors:
   (a) the hero-below list_infeed strip sits in .detail OUTSIDE .detail-body, so
   zz52's 2-col rule never reached it (cells still 180x60 squeezed) -> it gets a
   3-col readable grid in .detail scope;
   (b) zz54's ceiling used the placement class alone and also capped the
   layout-level strip (same placement class) down to 760px, squeezing its cells
   to 144x48 -> strips are exempted from the ceiling; the ceiling now binds the
   NOTE box only (via .partner-note), and detail_partner only inside body copy. */
.detail > .partner-box--strip .partner-row{grid-template-columns:repeat(3,minmax(0,1fr))}
.partner-box--strip.partner-box--article_incontent{max-width:100%!important}
.partner-note.partner-box--article_incontent{max-width:760px!important}
.partner-box--detail_partner{max-width:none!important}
.detail-body .partner-box--detail_partner{max-width:760px!important;margin-left:auto;margin-right:auto}

/* ==== zz56 (2026-10-30 mobile sticky top bar; 陛下 11:30 令「下滑后无法上滑
   回到顶部，添加导航栏手机版」) ====
   定版页眉（.site-header／快讯条）与手机底栏（.mobile-nav）一律不动；本层只
   新增滚动态吸顶栏 .m-stickybar：仅 ≤760px 渲染，position:fixed 顶置、
   默认 translateY(-105%) 藏起，site.js 在 scrollY 越过页眉后给它加 .on
   滑入。fixed 不占文档流 -> 出现/隐藏零布局跳动、零 scrollHeight 变化；
   栏高 46px（+安全区），只在已下滑时出现，不遮正文首行。z-index 1190：
   高于正文与安安 FAB(1150)，低于文章阅读进度条(1200)——进度线仍压在
   屏幕最顶沿 3px。安安在右下、吸顶在顶部，位置天然不冲突。 */
.m-stickybar{display:none}
@media (max-width:760px){
.m-stickybar{display:flex;align-items:center;gap:8px;position:fixed;top:0;left:0;right:0;z-index:1190;height:calc(46px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 10px 0;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);box-shadow:0 4px 14px rgba(20,59,53,.08);transform:translateY(-105%);transition:transform .25s ease}
.m-stickybar.on{transform:translateY(0)}
.msb-logo{display:inline-flex;align-items:center;flex:none;min-height:36px}
.msb-logo-img{height:25px;width:auto;display:block}
.msb-links{display:flex;align-items:center;flex:1;justify-content:space-around;min-width:0}
.msb-links a{color:var(--pine);font-size:14px;font-weight:650;padding:8px 6px;white-space:nowrap;min-height:36px;display:inline-flex;align-items:center}
.msb-links a:hover{text-decoration:none}
.msb-top{flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--pine);color:#fff;font-size:16px;line-height:1;cursor:pointer;padding:0}
}
@media print{.m-stickybar{display:none!important}}

/* ==== zz57 (2026-10-30 article blank fix; 陛下 14:27 点定打包施工项 4) ====
   中栏 .article-mid 与右栏 .article-rail 同口径吸顶：position:sticky、
   top:14px（与右栏逐值相同）。仅 ≥1680 三栏档生效——该档中栏才显示，
   且 .article-layout 基础层 align-items:start 已定，网格子项有贴靠行程。
   1440 两栏（中栏 display:none 不出）与手机端（≤760 无三栏）不引用本层
   任何值，逐值不变。定版页眉、手机底栏、右栏规则一律不动。 */
@media (min-width:1680px){
body.route-article .article-layout>.article-mid{position:sticky;top:14px}
}

/* ==== zz58 (2026-10-30 全站白底令）====
   陛下令「整个网站白色背景，不要土黄色」：纸色变量统一归纯白 #FFFFFF，
   结构块/卡片/占位/悬停暖底逐组覆盖为纯白。仅改背景色值——几何、版式、
   文字色、柿棕点缀、照片、语义状态色一律不动。 */
:root{--page:#fff;--white:#fff;--surface:#fff;--surface-2:#fff;--soft:#fff;--sponsor-paper:#fff;--ad-paper:#fff;--support-cream:#fff;--cream:#fff;--paper:#fff;--portal-paper:#fff}
.news-visual,.news-visual img,.life-photo-band,.life-photo-band img,.video-poster,.video-poster img,.related-card,.related-card img,.city-tile,.event-card,.item-cover,.event-cover,.department-photo,.partner-link,.partner-link img,.news-figure img,.home-latest-thumb,.mini-thumb,.city-mini-photo{background:#fff}
.route-contact .contact2-card,.route-contact .c3-card,.route-contact .faq-panel,.route-contact .faq-answer,.route-contact .ask-u,.route-contact .faq-row:hover,.route-contact .faq-row.active{background:#fff}
.home-city-tiles a,.home-service-tiles a,.home-news-tabs a,.city-tabs--v810 a,.right-box-head,.home-news-feed a:hover,.item-card:hover,.article-row:hover,.home-latest-item:hover,.home-five-categories a:hover,.news-category-nav a:hover,.city-editions-jump a:hover,.button-outline:hover,.market-categories a:hover,.editorial-brief:hover,.city-editions-empty,.community-bridge,.compact-safety-footer,.site-explore,.news-keypoints,.editorial-lead,.nav-inner a:hover,.nav-inner a[aria-current="page"],.city-picker select,.nav-inner .city-picker select,.notice-item.is-unread,th{background:#fff}
.anan-head,.anan-msg.bot,.ticket-msg.is-user,.ticket-msg.is-auto{background:#fff}
.partner-box--house,.partner-box--strip .partner-cell{background:#fff}
input,select,textarea{background:#fff}

/* ==== zz59 (2026-10-31 strip-3x1; 陛下 16:42 令「只保留一行，每行三个」) ====
   渲染器 house_strip 每块瓷砖 5→3、行标记改 partner-row--n3。本层把条带 n5
   的现行生效口径平移到 n3：桌面 3 格等分一排（格高由既有 aspect-ratio 3/1
   层主导、与 n5 末态一致）、list_infeed 同步 3 格横排（图 36% 左置、高满格，
   同 n5 末态）；手机 mv 网格改 3 列一排（格高 145px 既有定版不变、不折行
   不竖排）。n5 旧规则留置，无 n5 标记命中即不生效。 */
.partner-box--strip .partner-row--n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.partner-box--strip .partner-row--n3 .partner-cell{flex-direction:row;height:auto;min-height:0}
.partner-box--strip .partner-row--n3 .partner-cell__img{width:36%;height:100%;min-height:0;flex:none}
.partner-box--strip.partner-box--list_infeed .partner-row--n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.partner-box--strip.partner-box--list_infeed .partner-row--n3 .partner-cell{flex-direction:row;height:auto}
.partner-box--strip.partner-box--list_infeed .partner-row--n3 .partner-cell__img{height:100%}
@media (max-width:760px){
.partner-box--strip .partner-mgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ==== zz60 (2026-10-31 strip full-image fix; 陛下 17:09 投诉「广告位全乱了」) ====
   归因：条带 markup 早已整图化（格内只有 __img＋img、无 __copy），但图框被旧
   「左缩略图＋右文案」层 __img{width:36%}（2577 行 n5 规则、zz59 误抄至 n3）
   压成格宽 36% 的绝对定位窄框，img 再以 object-fit:cover 把 960×320（3:1）
   整图硬裁进约 1.1:1 窄框——烤字右半被切、格内右 64% 留白（home/885 全条带
   格实测同症；非缓存中间态，markup 与 CSS 均为 10.74.93 一致版本）。
   本层把条带格改回整图格：图框静态满格宽、img 按所载素材原生比例完整显示
   （width:100%/height:auto、无 cover、无裁切），格盒高随所载源原生比走
   （picture 双源 960×320 与 1242×270 各随其载入源）；格 aspect-ratio 钉比与
   route-home 钉高以更高优先级 !important 撤销；行内格顶对齐、格高随图。
   mv 格图同理（图框满宽、img 原生比完整显示、格高随图）。 */
.partner-box--strip .partner-row{align-items:start}
.partner-box--strip .partner-cell.partner-cell{aspect-ratio:auto!important;height:auto!important}
.route-home .partner-box--strip .partner-cell.partner-cell{height:auto!important}
.partner-box--strip .partner-cell__img{position:static!important;width:100%!important;height:auto!important;flex:none}
.partner-box--strip .partner-cell__img picture{display:block;width:100%}
.partner-box--strip .partner-cell__img img{width:100%!important;height:auto!important;object-fit:contain;display:block}
.partner-box--strip .partner-mcell{height:auto!important}
.partner-box--strip .partner-mcell__img{width:100%!important;height:auto!important}
.partner-box--strip .partner-mcell__img img{width:100%!important;height:auto!important;object-fit:contain;display:block}

/* ==== zz61 (2026-10-31 wide-slot whole-image fix; 陛下 17:09 投诉「长的」) ====
   文章页底部宽幅带（.partner-box--toprow，section_footer 位）与 infeed 宽幅位
   同病：末态层（2114 行）把 _wide 整图（1120×640，1.75:1）以 aspect-ratio
   1200/340＋object-fit:cover 塞进 3.53:1 扁框，上下大切——巨字只露中间一截
   （实证：J10「新歌快了，先把耳朵留好」只剩「新歌快了，」）。本层恢复整图
   原生比例完整显示：高随图、不限高、不裁切。仅及 toprow/infeed 两宽幅位，
   侧栏与 footer_brand 不动。 */
.partner-box--toprow .partner-link img,.partner-box--infeed .partner-link img{width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important}

/* ==== zz62 (2026-10-31 同病扩展修复：频道格广告卡整图) ====
   首页频道格广告卡（.department-ad）、hub 卡（.hub-partner）与头条位对卡
   （.home-lead-partner）同病：tst/leadu5 素材 1000×175（5.71:1）被 cover
   塞进 4.79:1/3.8:1/3.65:1 格盒，左右大切——实证品牌名被吃首字
   （「GAI.WORK」「KHAO.TV」「、小说、影视」）。本层只改 object-fit 为
   contain（盒尺寸与布局不动），整图完整显示、文字一字不裁。 */
.department-ad .partner-cell__img img,.hub-partner .partner-cell__img img,.home-lead-partner .partner-cell__img img{object-fit:contain!important}

/* ==== zz63 (2026-10-31 陛下 17:24 终令：全站广告位统一首页规格) ====
   基线＝首页顶条（缎带）现行高曲线 --hstrip（陛下 2026-10-27 00:47 定版：
   761-832:45 / 833-960:53.5 / 961-1087:61.5 / 1088-1215:69.5 / 1216-1400:79
   / 1401-1680:86 / ≥1681:91），原仅 .route-home 定义并作用于首页缎带。
   本层把曲线定义推广到 body（全站），缎带格高全站与首页同值（图为缎带
   槽设计图 ribh5、与首页同 cover 口径）；各条带位格高由 consumer 按列宽
   落格数（全宽 5 格／正文列 3 格）＋宽源 picture 档压回基线内（见
   consumer 10.74.97），本层只管缎带与 n5/n4 行的旧图文卡残留规则清理：
   2576-2588 行 n5/n4 格仍是「左缩略图＋右文案」卡（__img 34-36%＋格高
   94px），5 格化后若命中即重演 zz59 白缝/断字，须按 zz60 整图格覆盖。 */
@media(min-width:761px){body{--hstrip:79px}.partner-ribbon--dv .partner-cell.partner-cell{height:var(--hstrip)!important}}
@media(min-width:761px) and (max-width:832px){body{--hstrip:45px}}
@media(min-width:833px) and (max-width:960px){body{--hstrip:53.5px}}
@media(min-width:961px) and (max-width:1087px){body{--hstrip:61.5px}}
@media(min-width:1088px) and (max-width:1215px){body{--hstrip:69.5px}}
@media(min-width:1216px) and (max-width:1400px){body{--hstrip:79px}}
@media(min-width:1401px) and (max-width:1680px){body{--hstrip:86px}}
@media(min-width:1681px){body{--hstrip:91px}}
.partner-box--strip .partner-row--n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.partner-box--strip .partner-row--n5 .partner-cell,.partner-box--strip .partner-row--n4 .partner-cell{flex:none!important;flex-direction:column!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important}
.partner-box--strip .partner-row--n5 .partner-cell__img,.partner-box--strip .partner-row--n4 .partner-cell__img{position:static!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;flex:none!important}

/* toprow 栏尾宽带改回历史定版形（覆盖 zz61 的整图全宽走法）：单图
   1120x640（1.75:1）无法同时「全宽填满＋整图＋≤基线高」三全，历史形
   为 max-width 960 居中＋max-height 185 contain 整图（基底 918/955 行
   原设计），本层恢复之；zz61 的 max-height:none 一并撤销。 */
.partner-box--toprow{max-width:960px!important;margin-inline:auto!important}
.partner-box--toprow .partner-link img{width:100%!important;height:auto!important;max-height:185px!important;aspect-ratio:auto!important;object-fit:contain!important}

/* 题库介绍卡文字横摊（陛下 17:19 令，仅 .route-exam）：.gate-hero 三条
   .gate-point 由纵排改一排三列，卡高随之收短；其余子元素整行。手机退
   回纵排（单列），但行宽为卡内全宽、不挤窄列。 */
.route-exam .gate-hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px}
.route-exam .gate-hero>*{grid-column:1/-1}
.route-exam .gate-hero>.gate-point{grid-column:auto}
@media(max-width:680px){.route-exam .gate-hero{display:block}}

/* ==== zz64 (2026-10-31 陛下 18:08 令：黑条收口) ====
   根因：zz62 把头条对卡/频道格卡/hub 卡三族 img 改 object-fit:contain，
   图按宽（或高）贴合后实际绘图小于图盒，而 .partner-cell__img 底色为
   深褐 rgb(41,32,25)（图文卡时代底），空余处即露黑条（陛下 image-66
   实证：dept@2560 两侧各约 59px、lead/hub@1440 上下 7-15px）。
   终态标准（18:08 令）：格盒宽高比＝所载图原生比、img 填满格盒、无
   裁切无黑条无白段——本层把三族 格/图框/图 一律改自然高（盒随图，
   1000x175 素材按格宽等比），图框底色改透明，首页 --hstrip 对三族
   的固定格高一并释放（其卡高不再钉死）；条带格图框底色同步改透明
   （条带图本以自然比填满、仅防懒加载瞬间露深底）。缎带 cover 填满
   不露底，不动。 */
.department-ad .partner-cell,.hub-partner .partner-cell,.home-lead-partner .partner-cell{height:auto!important;min-height:0!important;aspect-ratio:auto!important;background:transparent!important}
.route-home .department-ad .partner-cell.partner-cell{height:auto!important;min-height:0!important}
.route-home .hub-partner{height:auto!important;min-height:0!important}
.route-home .home-lead-partner .partner-cell--strip{height:auto!important}
.department-ad .partner-cell__img,.hub-partner .partner-cell__img,.home-lead-partner .partner-cell__img,.partner-box--strip .partner-cell__img{background:transparent!important;height:auto!important;aspect-ratio:auto!important;line-height:0!important}
.department-ad .partner-cell__img img,.hub-partner .partner-cell__img img,.home-lead-partner .partner-cell__img img{width:100%!important;height:auto!important}

/* ==== zz65 (2026-10-31 统一规格收尾：格高残留两处) ====
   ①条带格被 4134/4135 行 aspect-ratio:3/1!important（0,3,0）钉成宽÷3：
   图框 3:1 而图已换宽源（4.6:1、实高约 85），格内图下留 45px 空段、
   带高 130-148 超基线。本层以 (0,4,0) 释放格与图框的 aspect 钉死，
   格高回归图自然高。②缎带在非首页被 3238 行（0,4,0）height:auto+
   aspect-ratio:3/1 压住 zz63 的 --hstrip 推广（首页靠 3343/3623 同
   特异性后置才幸免）：本层同特异性后置，把缎带格高全站钉回
   var(--hstrip)、aspect 释放，与首页逐值一致。 */
.partner-box--strip .partner-cell.partner-cell{aspect-ratio:auto!important}
.partner-box--strip .partner-cell.partner-cell .partner-cell__img{aspect-ratio:auto!important}
@media(min-width:761px){.partner-ribbon.partner-ribbon--dv .partner-cell.partner-cell{height:var(--hstrip)!important;aspect-ratio:auto!important}}

/* ===== zz66-test （隔离测试层 2026-10-31）: 条带图回流 =====
   根因: 1985 行 .partner-box--strip .partner-cell__img img{position:absolute;inset:0;height:100%}
   使图脱流，格/行/块高塌为 0/16/18，块 contain:paint+overflow:hidden 将图整幅裁掉（条带不可见）。
   本层将条带图改回静态流内、宽 100%、高随原生比；其余规格（格数/源/--hstrip）不动。 */
.partner-box--strip .partner-cell{height:auto!important}
.partner-box--strip .partner-cell__img{position:static!important;height:auto!important;line-height:0}
.partner-box--strip .partner-cell__img img{position:static!important;inset:auto!important;width:100%!important;height:auto!important;object-fit:contain!important}

/* ==== zz67 （2026-11-01 strip-spec 生产落地·R2 顺手修）====
   首页 photo_grid 手机格被 .home-photo-news--v810 img{aspect-ratio:3/2}
   钉比（素材实为 664×580＝1.145:1），zz60 的 contain 口径下图实绘
   82×72 居中、两侧各约 12px 页白（隔离探针实证 computed aspect-ratio=3/2；
   同族 home_rail/home_mid 格为 auto 664/580、高 94）。
   本行释放该格 img 的 aspect 钉死，格高回归素材自然比
   （格宽 107→高约 94，与同族格逐值一致），其余规则不动。 */
.partner-box--home_photo_grid .partner-mcell__img img{aspect-ratio:auto!important}

/* zz68（20261101 测试包·未上线）：首页头条双格 .home-lead-partner 条带格绘制修复——
   根因：__img 被定为 position:absolute 且格被剥掉固定高/宽高比，格内无在流内容，
   格高塌缩为边框 2px、格与 __img 均 overflow:hidden，已加载的图被裁到不可见。
   修法：条带格恢复宽高比 1000/175（_leadu5 原生比，cover==contain 零裁切），
   __img 回到在流 static 撑满格高。仅作用于 .home-lead-partner 内 --strip 格。 */
.home-lead-partner .partner-cell--strip{height:auto!important;aspect-ratio:1000/175!important}
.home-lead-partner .partner-cell--strip .partner-cell__img{position:static!important;inset:auto!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important}
.home-lead-partner .partner-cell--strip .partner-cell__img img{width:100%!important;height:100%!important;object-fit:cover!important}

/* ===== USC-FIX 20261101zz69-mobile-footer-tidy（草案·未上线·待陛下批准）
   范围：仅 ≤760px、仅页脚区（.footer / .footer-grid / .footer-col / .footer-company / .footer-bar）；
   零 HTML 改动、零桌面影响；不动 .mobile-nav 本体、#ananFab 安安悬浮、.back-to-top（均为定版/悬浮件）。
   定因（2026-11-01 量测，audit/mobile-footer-tidy-20261101）：
   zz34 紧凑案 .footer{padding:16px 0 20px}（顶层、后置）覆盖了早期 @media(max-width:800px) 的
   .footer{padding-bottom:100px}，手机页脚底部留白只剩 20px，小于固定底栏实测高 66px，
   页底静止时 .footer-bar 被底栏遮 46px（技术支持/回到顶部整行不可见、© 行底缘被啃 8px）。 */
@media (max-width:760px){
.footer{padding-bottom:calc(66px + env(safe-area-inset-bottom,0px) + 12px)}
.footer-grid{row-gap:14px}
.footer-col h3{line-height:1.35}
.footer-col a{line-height:1.35}
.footer-company{font-size:13px;line-height:1.5;margin-top:12px}
.footer-bar{row-gap:5px;line-height:1.5}
.footer-bar>span:first-child{flex:1 1 100%}
}
