/* ── 全局变量 ── */
:root {
  --c-blue: #378ADD;
  --c-blue-l: #E6F1FB;
  --c-blue-d: #185FA5;
  --c-green: #1D9E75;
  --c-green-l: #EAF3DE;
  --c-teal: #19b7a7;
  --c-teal-d: #129483;
  --c-orange: #f59e0b;
  --c-red: #ef4444;
  --c-text: #1a1a1a;
  --c-t2: #555;
  --c-t3: #888;
  --c-bg: #F7F8FA;
  --c-bg2: #ffffff;
  --c-bd: #E8E8E8;
  --r: 10px;
  --rl: 14px;
}

/* Unified laboratory portal */
.portal-logo{display:flex!important;align-items:center;gap:10px;text-decoration:none}.portal-logo-mark{display:grid;place-items:center;width:32px;height:32px;background:#087f78;color:#fff;font:700 18px/1 Arial;border-radius:6px}.portal-home{width:100vw;margin:-16px 0 0 calc(50% - 50vw);color:#17232b}.portal-hero{min-height:560px;background:#e7f0f1 url('/Content/images/portal-hero-lab.png') center/cover no-repeat;display:flex;align-items:center}.portal-hero-copy{width:min(1180px,calc(100% - 48px));margin:auto;padding:72px 0}.portal-hero-copy>p{max-width:600px;margin:20px 0 28px;color:#354850;font-size:19px;line-height:1.8}.portal-kicker,.portal-section-head span,.portal-flow-copy>span,.module-eyebrow{color:#087f78;font-size:13px;font-weight:700}.portal-hero h1{max-width:620px;margin:10px 0 0;font-size:54px;line-height:1.15;font-weight:750;letter-spacing:0}.portal-hero-actions{display:flex;gap:12px}.portal-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border:1px solid #c9d5d7;border-radius:6px;font-weight:700;text-decoration:none!important}.portal-btn-primary{background:#087f78;border-color:#087f78;color:#fff!important}.portal-btn-light{background:#fff;color:#203137!important}.portal-proof{display:flex;flex-wrap:wrap;gap:24px;margin-top:28px;color:#41545b;font-size:14px}.portal-proof i{color:#087f78;margin-right:5px}.portal-module-band{padding:72px max(24px,calc((100vw - 1180px)/2)) 78px;background:#fff}.portal-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.portal-section-head h2,.portal-flow-copy h2{margin:6px 0 0;font-size:34px;line-height:1.25}.portal-section-head p{max-width:460px;margin:0;color:#607078;line-height:1.7}.portal-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dce4e6}.portal-module{min-height:250px;padding:28px;border-right:1px solid #dce4e6;color:#23343a!important;text-decoration:none!important;transition:transform .18s,box-shadow .18s}.portal-module:last-child{border-right:0}.portal-module:hover{position:relative;z-index:1;transform:translateY(-4px);box-shadow:0 16px 35px rgba(25,48,56,.12)}.portal-module>i{display:grid;place-items:center;width:44px;height:44px;border-radius:6px;font-size:23px;background:#e2f3f1;color:#087f78}.portal-module.uncertainty>i{background:#fff0d8;color:#a86100}.portal-module.lims>i{background:#e7f1fb;color:#276594}.portal-module.imaging>i{background:#e7f5ea;color:#287342}.portal-module h3{margin:24px 0 10px;font-size:21px}.portal-module p{min-height:70px;color:#617178;line-height:1.7}.portal-module b{color:#087f78;font-size:14px}.portal-flow-band{padding:66px max(24px,calc((100vw - 1180px)/2));background:#17252b;color:#fff}.portal-flow-band{display:grid;grid-template-columns:340px 1fr;gap:70px;align-items:center}.portal-flow-copy p{color:#b8c5c9;line-height:1.8}.portal-flow{display:grid;grid-template-columns:repeat(5,1fr);margin:0;padding:0;list-style:none}.portal-flow li{position:relative;padding:16px 12px;border-top:1px solid #577078}.portal-flow li:before{content:'';position:absolute;top:-5px;left:12px;width:9px;height:9px;background:#36a59b;border-radius:50%}.portal-flow em,.portal-flow strong,.portal-flow small{display:block}.portal-flow em{color:#72bdb7;font-style:normal;font-size:12px}.portal-flow strong{margin:10px 0 4px}.portal-flow small{color:#aebdc1}.workbench-head,.module-page-head{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 0}.workbench-head h1,.module-page-head h1{margin:6px 0;font-size:30px}.workbench-head p,.module-page-head p{margin:0;color:#66767d}.workbench-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.workbench-module{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:16px;padding:24px;background:#fff;border:1px solid #dfe6e8;border-radius:7px;color:#24363c!important;text-decoration:none!important}.workbench-module>i{display:grid;place-items:center;width:48px;height:48px;background:#e5f4f2;color:#087f78;border-radius:6px;font-size:24px}.workbench-module h2{margin:0 0 5px;font-size:19px}.workbench-module p{margin:0;color:#6b7a80}.workbench-panels{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0 44px}.workbench-panels section,.module-panel{padding:24px;background:#fff;border:1px solid #dfe6e8;border-radius:7px}.workbench-panels h3{margin-top:0}.workbench-panels ul{margin:0;padding:0;list-style:none}.workbench-panels li{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #edf1f2}.module-shell{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:18px;margin-bottom:48px}.module-panel h2{font-size:20px}.module-panel li{margin:10px 0;color:#52646b}.module-state{padding:20px;background:#f4f8f8;border-left:4px solid #d39422}.ss-footer{position:static!important}.ss-main{min-height:calc(100vh - 145px)}

@media(max-width:1100px){.ss-nav .layui-nav-item a{padding:0 10px}.portal-module-grid{grid-template-columns:repeat(2,1fr)}.portal-module:nth-child(2){border-right:0}.portal-module:nth-child(-n+2){border-bottom:1px solid #dce4e6}.portal-flow-band{grid-template-columns:1fr;gap:28px}}
@media(max-width:760px){.portal-home{margin-top:-12px}.portal-hero{min-height:500px;background-position:62% center}.portal-hero-copy{width:calc(100% - 32px);padding:54px 0}.portal-hero h1{font-size:38px;max-width:360px}.portal-hero-copy>p{max-width:370px;font-size:16px;background:rgba(238,245,245,.84);padding:10px;border-radius:4px}.portal-proof{gap:10px 18px}.portal-section-head{display:block}.portal-section-head h2,.portal-flow-copy h2{font-size:27px}.portal-section-head p{margin-top:12px}.portal-module-grid{grid-template-columns:1fr}.portal-module{min-height:0;border-right:0;border-bottom:1px solid #dce4e6}.portal-module:last-child{border-bottom:0}.portal-module p{min-height:0}.portal-flow{grid-template-columns:1fr}.portal-flow li{border-top:0;border-left:1px solid #577078;padding:8px 16px 18px}.portal-flow li:before{top:12px;left:-5px}.workbench-head,.module-page-head{align-items:flex-start;flex-direction:column}.workbench-grid,.workbench-panels,.module-shell{grid-template-columns:1fr}.workbench-module{grid-template-columns:48px 1fr}.workbench-module .badge{grid-column:2}.portal-hero-actions{flex-wrap:wrap}}

/* Professional portal v2 */
:root{--portal-green:#087f5b;--portal-green-2:#10a37f;--portal-mint:#eaf7f1;--portal-ink:#192622;--portal-muted:#66736e;--portal-line:#dce7e2;--portal-gold:#b9862f}
.portal-home-v2{background:#fff}.portal-hero-v2{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:42px;min-height:610px;padding:0 max(24px,calc((100vw - 1180px)/2));background-position:center;background-size:cover}.portal-hero-v2:before{content:"";position:absolute;inset:0;background:rgba(235,246,241,.76)}.portal-hero-v2>*{position:relative;z-index:1}.portal-hero-v2 .portal-hero-copy{width:auto;margin:0;padding:96px 0}.portal-hero-v2 .portal-kicker{color:var(--portal-green)}.portal-hero-v2 h1{color:var(--portal-ink);max-width:650px}.home-standard-search{align-self:center;padding:26px;background:#fff;border:1px solid rgba(8,127,91,.18);border-radius:8px;box-shadow:0 22px 55px rgba(15,62,47,.13)}.home-standard-search label{display:block;margin-bottom:12px;color:var(--portal-ink);font-size:18px;font-weight:700}.home-standard-search>div{display:grid;grid-template-columns:1fr 96px;border:1px solid #b9cbc4;border-radius:6px;overflow:hidden}.home-standard-search input{min-width:0;height:52px;padding:0 15px;border:0;outline:0;font-size:15px}.home-standard-search button{border:0;background:var(--portal-green);color:#fff;font-weight:700;cursor:pointer}.home-standard-search button i{margin-right:5px}.home-standard-search small{display:block;margin-top:10px;color:var(--portal-muted)}
.portal-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--portal-line)}.portal-product-feature{display:grid;grid-template-columns:54px 1fr;gap:20px;min-height:230px;padding:30px;border-right:1px solid var(--portal-line);border-bottom:1px solid var(--portal-line);color:var(--portal-ink)!important;text-decoration:none!important}.portal-product-feature:nth-child(2n){border-right:0}.portal-product-feature:nth-child(n+3){border-bottom:0}.portal-product-feature>i{display:grid;place-items:center;width:50px;height:50px;border-radius:7px;background:var(--portal-mint);color:var(--portal-green);font-size:25px}.portal-product-feature small{color:var(--portal-green);font-weight:700}.portal-product-feature h3{margin:8px 0;font-size:24px}.portal-product-feature p{max-width:440px;color:var(--portal-muted);line-height:1.75}.portal-product-feature b{color:var(--portal-green)}.portal-product-feature:hover{background:#f7fbf9}.portal-workflow-band{padding:70px max(24px,calc((100vw - 1180px)/2));background:#f3f8f5}.portal-workflow{display:grid;grid-template-columns:repeat(5,1fr);margin:36px 0 0;padding:0;list-style:none;border-top:1px solid #a7c7ba}.portal-workflow li{position:relative;padding:25px 16px 0}.portal-workflow li:before{content:"";position:absolute;top:-6px;left:16px;width:11px;height:11px;border-radius:50%;background:var(--portal-green)}.portal-workflow em,.portal-workflow strong,.portal-workflow span{display:block}.portal-workflow em{color:var(--portal-green);font-style:normal;font-size:12px}.portal-workflow strong{margin:8px 0 4px;font-size:17px}.portal-workflow span{color:var(--portal-muted)}.portal-content-band{padding:72px max(24px,calc((100vw - 1180px)/2));background:#fff}.portal-content-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.home-content-list{border:1px solid var(--portal-line);padding:24px}.home-content-list h3{margin:0 0 12px}.home-content-list>a{display:grid;grid-template-columns:100px 1fr auto;gap:14px;align-items:center;padding:15px 0;border-top:1px solid #edf2ef;color:var(--portal-ink)!important;text-decoration:none!important}.home-content-list>a span{color:var(--portal-green);font-size:12px}.home-content-list>a small{color:#89958f}.portal-empty{padding:28px;color:#87938e;text-align:center;background:#f7faf8}.portal-empty.wide{grid-column:1/-1}.portal-delivery-band{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:52px max(24px,calc((100vw - 1180px)/2));background:var(--portal-green);color:#fff}.portal-delivery-band span{font-size:12px;font-weight:700}.portal-delivery-band h2{margin:6px 0;font-size:30px}.portal-delivery-band p{margin:0;color:#d5ece3}
.product-page{padding:10px 0 50px}.product-hero{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:50px;align-items:center;padding:64px;background:#f2f8f5;border:1px solid var(--portal-line)}.product-hero>div>span,.product-detail-band span{color:var(--portal-green);font-size:12px;font-weight:700}.product-hero h1{margin:8px 0 16px;font-size:46px;letter-spacing:0}.product-hero p{max-width:680px;color:#4f615a;font-size:18px;line-height:1.8}.product-hero>div>div{display:flex;gap:10px;margin-top:28px}.product-hero aside{padding:28px;background:#fff;border-left:4px solid var(--portal-green)}.product-hero aside strong{font-size:18px}.product-hero aside ul{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 0;padding:0;list-style:none;color:var(--portal-muted)}.product-hero aside li:before{content:"✓";margin-right:6px;color:var(--portal-green)}.product-capabilities{display:grid;grid-template-columns:repeat(4,1fr);margin-top:22px;border:1px solid var(--portal-line)}.product-capabilities article{padding:26px;border-right:1px solid var(--portal-line)}.product-capabilities article:last-child{border-right:0}.product-capabilities i{color:var(--portal-green);font-size:24px}.product-capabilities h2{font-size:19px}.product-capabilities p{color:var(--portal-muted);line-height:1.7}.product-detail-band{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-top:22px;padding:45px;background:var(--portal-ink);color:#fff}.product-detail-band h2{font-size:28px}.product-detail-band p{color:#bdc9c4;line-height:1.8}
.content-hub{padding:16px 0 50px}.content-hub-head{padding:50px 0 34px;border-bottom:1px solid var(--portal-line)}.content-hub-head>span{color:var(--portal-green);font-size:12px;font-weight:700}.content-hub-head h1{margin:7px 0;font-size:42px}.content-hub-head p{color:var(--portal-muted);font-size:17px}.content-filter,.delivery-tabs,.admin-content-nav{display:flex;flex-wrap:wrap;gap:6px;padding:18px 0}.content-filter a,.delivery-tabs a,.admin-content-nav a{padding:8px 14px;border-radius:5px;color:#50625b;text-decoration:none!important}.content-filter a.active,.delivery-tabs a.active,.admin-content-nav a.active{background:var(--portal-green);color:#fff}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article-card{border:1px solid var(--portal-line);background:#fff}.article-cover{display:flex;align-items:flex-end;height:155px;padding:14px;background:#dfeee7 center/cover no-repeat;text-decoration:none!important}.article-cover span{padding:5px 8px;background:#fff;color:var(--portal-green);font-size:12px}.article-card>div{padding:20px}.article-card small{color:#87938e}.article-card h2{min-height:52px;margin:8px 0;font-size:19px;line-height:1.45}.article-card h2 a{color:var(--portal-ink)}.article-card p{min-height:68px;color:var(--portal-muted);line-height:1.65}.article-more{color:var(--portal-green);font-weight:700}.article-detail{max-width:860px;margin:30px auto 60px}.article-breadcrumb{margin-bottom:30px;color:#7f8d87}.article-detail header{padding-bottom:28px;border-bottom:1px solid var(--portal-line)}.article-detail header>span{color:var(--portal-green);font-weight:700}.article-detail h1{margin:12px 0;font-size:40px;line-height:1.35}.article-detail header p{color:#566760;font-size:18px;line-height:1.8}.article-detail header small{color:#849089}.article-body{padding:32px 0;color:#283832;font-size:16px;line-height:2}.article-action{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;background:var(--portal-mint);border-left:4px solid var(--portal-green)}.article-action strong,.article-action span{display:block}.article-action span{margin-top:6px;color:var(--portal-muted)}
.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.course-card{display:block;border:1px solid var(--portal-line);color:var(--portal-ink)!important;text-decoration:none!important}.course-cover{position:relative;display:grid;place-items:center;height:180px;background:#dcebe4 center/cover no-repeat}.course-cover i{font-size:36px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}.course-cover span{position:absolute;top:12px;left:12px;padding:5px 8px;background:#fff;color:var(--portal-green);font-size:12px}.course-card>div:last-child{padding:20px}.course-card small{color:var(--portal-green)}.course-card h2{margin:7px 0;font-size:20px}.course-card p{min-height:66px;color:var(--portal-muted);line-height:1.65}.course-card b{font-size:12px;color:#809087}.course-detail{padding:30px 0 60px}.course-detail>header{padding:35px;background:var(--portal-ink);color:#fff}.course-detail>header>span{color:#70c5a5}.course-detail>header h1{font-size:36px}.course-detail>header p,.course-detail>header small{color:#c1cec8}.course-player-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;margin-top:20px;border:1px solid var(--portal-line)}.course-player{padding:22px;background:#f7faf8}.course-player video{width:100%;max-height:520px;background:#000}.video-placeholder{display:grid;place-items:center;min-height:360px;background:#17231f;color:#fff;text-align:center}.video-placeholder i{font-size:50px}.video-placeholder strong,.video-placeholder a{display:block}.video-placeholder a{color:#6bd0aa}.lesson-list{max-height:600px;overflow:auto;padding:20px;border-left:1px solid var(--portal-line)}.lesson-list h2{margin-top:0}.lesson-row{display:grid;grid-template-columns:32px 1fr 24px;gap:8px;padding:13px 0;border-top:1px solid #edf2ef}.lesson-row strong,.lesson-row small{display:block}.lesson-row small{margin-top:4px;color:#88958f}.course-description{padding:30px 0;line-height:1.9}
.delivery-page{padding-bottom:60px}.delivery-section{margin-top:18px}.section-title{display:flex;justify-content:space-between;align-items:end;padding:15px 0;border-bottom:1px solid var(--portal-line)}.section-title h2{margin:0}.section-title span{color:var(--portal-muted)}.release-list article{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;border-bottom:1px solid var(--portal-line)}.release-list h3{display:inline-block;margin:0 8px;font-size:18px}.release-list p,.release-list small,.release-list code{display:block;margin-top:7px;color:var(--portal-muted)}.release-list code{font-size:11px}.release-pending{color:#87938e}.contract-table{overflow:auto}.contract-table table,.admin-data-table table{width:100%;border-collapse:collapse}.contract-table th,.contract-table td,.admin-data-table th,.admin-data-table td{padding:13px;border-bottom:1px solid var(--portal-line);text-align:left}.admin-data-table td small{display:block;margin-top:4px;color:#89958f}
.admin-content-page,.admin-editor-page{padding:20px 0 60px}.admin-page-head{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-bottom:1px solid var(--portal-line)}.admin-page-head span{color:var(--portal-green);font-size:12px}.admin-page-head h1{margin:5px 0}.admin-editor-form{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:22px}.admin-editor-form .editor-main,.admin-editor-form aside{padding:22px;background:#fff;border:1px solid var(--portal-line)}.admin-editor-form label,.delivery-upload-form label,.lesson-add-form label{display:block;margin:15px 0 6px;font-weight:700}.admin-editor-form input,.admin-editor-form textarea,.admin-editor-form select,.delivery-upload-form input,.delivery-upload-form textarea,.delivery-upload-form select,.lesson-add-form input{box-sizing:border-box;width:100%;padding:10px;border:1px solid #bdcbc5;border-radius:4px}.editor-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check-row{display:flex!important;align-items:center;gap:8px}.check-row input{width:auto!important}.admin-editor-form button{width:100%;margin-top:18px}.lesson-admin{margin-top:20px;padding:24px;border:1px solid var(--portal-line)}.lesson-admin-list>div{display:grid;grid-template-columns:60px 1fr 100px;padding:10px;border-top:1px solid var(--portal-line)}.lesson-add-form,.delivery-upload-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:24px;border:1px solid var(--portal-line)}.lesson-add-form .wide{grid-column:span 2}.delivery-upload-form fieldset{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px;border:1px solid var(--portal-line)}.delivery-upload-form>label,.delivery-upload-form>textarea,.delivery-upload-form>button,.delivery-upload-form>.form-hint{grid-column:1/-1}.form-hint{color:var(--portal-muted)}.portal-footer-grid{display:grid!important;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:34px;padding-top:36px!important;padding-bottom:20px!important}.portal-footer-grid>div{display:flex;flex-direction:column;gap:9px}.portal-footer-grid a,.portal-footer-grid span{color:#9fb0a8!important}.portal-footer-brand p{color:#9fb0a8}.portal-footer-bottom{grid-column:1/-1;flex-direction:row!important;justify-content:space-between;padding-top:18px;border-top:1px solid #34443e}
@media(max-width:980px){.portal-hero-v2{grid-template-columns:1fr;gap:0}.portal-hero-v2 .portal-hero-copy{padding:70px 0 25px}.home-standard-search{margin-bottom:55px}.product-capabilities{grid-template-columns:repeat(2,1fr)}.product-capabilities article:nth-child(2){border-right:0}.product-capabilities article:nth-child(-n+2){border-bottom:1px solid var(--portal-line)}.article-grid,.course-grid{grid-template-columns:repeat(2,1fr)}.course-player-layout{grid-template-columns:1fr}.lesson-list{border-left:0;border-top:1px solid var(--portal-line)}.portal-footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.portal-hero-v2{padding:0 16px;background-position:62% center}.portal-hero-v2 h1{font-size:36px}.home-standard-search>div{grid-template-columns:1fr 56px}.home-standard-search button span{display:none}.portal-product-grid,.portal-content-columns,.article-grid,.course-grid,.product-hero,.product-detail-band,.admin-editor-form{grid-template-columns:1fr}.portal-product-feature{border-right:0;border-bottom:1px solid var(--portal-line)!important}.portal-workflow{grid-template-columns:1fr;border-top:0;border-left:1px solid #a7c7ba}.portal-workflow li{padding:4px 18px 20px}.portal-workflow li:before{top:6px;left:-6px}.home-content-list>a{grid-template-columns:1fr}.portal-delivery-band,.article-action,.release-list article,.admin-page-head{align-items:flex-start;flex-direction:column}.product-hero{padding:30px 22px}.product-hero h1{font-size:36px}.product-capabilities{grid-template-columns:1fr}.product-capabilities article{border-right:0;border-bottom:1px solid var(--portal-line)!important}.product-capabilities article:last-child{border-bottom:0!important}.article-detail h1{font-size:30px}.editor-row,.lesson-add-form,.delivery-upload-form,.delivery-upload-form fieldset{grid-template-columns:1fr}.lesson-add-form .wide{grid-column:auto}.portal-footer-grid{grid-template-columns:1fr}.portal-footer-bottom{flex-direction:column!important}.ss-main>.ss-container{padding-left:16px;padding-right:16px}}

/* Portal viewport guard: full-bleed sections must never create horizontal scroll. */
html,body{max-width:100%;overflow-x:hidden}
.portal-hero-v2 h1{max-width:700px;font-size:48px;line-height:1.18}
@media(max-width:1180px){.portal-hero-v2 h1{font-size:44px}}
@media(max-width:680px){.portal-hero-v2 h1{font-size:36px}}

/* Refined professional portal layout. */
.portal-trust-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:0 max(24px,calc((100vw - 1180px)/2));background:#fff;border-bottom:1px solid var(--portal-line)}
.portal-trust-strip>div{display:flex;align-items:center;gap:13px;min-height:92px;padding:18px 24px;border-right:1px solid var(--portal-line)}
.portal-trust-strip>div:first-child{border-left:1px solid var(--portal-line)}
.portal-trust-strip i{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:6px;background:var(--portal-mint);color:var(--portal-green);font-size:20px}
.portal-trust-strip span,.portal-trust-strip strong,.portal-trust-strip small{display:block}
.portal-trust-strip strong{color:var(--portal-ink);font-size:15px}.portal-trust-strip small{margin-top:4px;color:var(--portal-muted)}
.portal-module-band{padding-top:64px;padding-bottom:70px}
.portal-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.portal-product-feature{display:flex;flex-direction:column;min-height:330px;padding:26px 24px;border-right:1px solid var(--portal-line)!important;border-bottom:0!important}
.portal-product-feature:last-child{border-right:0!important}
.portal-product-feature>i{margin-bottom:20px}.portal-product-feature h3{font-size:21px}.portal-product-feature p{min-height:86px;margin-bottom:15px;line-height:1.65}
.portal-product-feature ul{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 22px;padding:0;list-style:none}
.portal-product-feature li{padding:4px 7px;border:1px solid #d9e8e1;border-radius:4px;background:#f7faf8;color:#607269;font-size:12px}
.portal-product-feature b{margin-top:auto}.portal-product-feature b span{transition:margin-left .18s}.portal-product-feature:hover b span{margin-left:5px}
.home-content-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.home-content-title h3{margin:0}.home-content-title a{color:var(--portal-green);font-size:13px}
.portal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:175px;padding:25px}
.portal-empty i{margin-bottom:10px;color:#7aa997;font-size:30px}.portal-empty strong{color:var(--portal-ink)}.portal-empty span{max-width:390px;margin:7px 0 13px;line-height:1.65}.portal-empty a{color:var(--portal-green);font-weight:700}
@media(max-width:980px){.portal-trust-strip{grid-template-columns:repeat(2,1fr)}.portal-trust-strip>div:nth-child(2){border-right:0}.portal-trust-strip>div:nth-child(-n+2){border-bottom:1px solid var(--portal-line)}.portal-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-product-feature{border-bottom:1px solid var(--portal-line)!important}.portal-product-feature:nth-child(2n){border-right:0!important}.portal-product-feature:nth-child(n+3){border-bottom:0!important}}
@media(max-width:680px){.portal-trust-strip{grid-template-columns:1fr;padding:0 16px}.portal-trust-strip>div{min-height:78px;border-left:1px solid var(--portal-line)!important;border-right:1px solid var(--portal-line)!important;border-bottom:1px solid var(--portal-line)!important}.portal-trust-strip>div:last-child{border-bottom:0!important}.portal-product-grid{grid-template-columns:1fr}.portal-product-feature{min-height:0;border-right:0!important;border-bottom:1px solid var(--portal-line)!important}.portal-product-feature:last-child{border-bottom:0!important}.portal-product-feature p{min-height:0}.portal-content-band{padding-top:54px;padding-bottom:54px}}

/* About page */
.about-page-v2{width:100vw;margin:-16px 0 0 calc(50% - 50vw);background:#fff;color:var(--portal-ink)}
.about-hero-v2{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:70px;align-items:center;padding:90px max(24px,calc((100vw - 1180px)/2));background:#edf6f1;border-bottom:1px solid #d7e6df}
.about-eyebrow,.about-capability-v2 header>span,.about-method-copy>span,.about-cta-v2 span,.about-section-label{color:var(--portal-green);font-size:12px;font-weight:800;letter-spacing:0}
.about-hero-copy h1{max-width:760px;margin:13px 0 22px;font-size:52px;line-height:1.18;letter-spacing:0}.about-hero-copy>p{max-width:720px;margin:0 0 30px;color:#50625b;font-size:18px;line-height:1.85}.about-hero-actions{display:flex;gap:12px}
.about-positioning{padding:34px;border-top:4px solid var(--portal-green);background:#fff;box-shadow:0 18px 44px rgba(23,67,51,.10)}.about-positioning>span{color:var(--portal-green);font-size:12px;font-weight:700}.about-positioning>strong{display:block;margin:12px 0;font-size:24px;line-height:1.45}.about-positioning>p{color:var(--portal-muted);line-height:1.8}.about-positioning-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.about-positioning-tags b{padding:6px 9px;border:1px solid #d5e6de;border-radius:4px;background:#f6faf8;color:#456359;font-size:12px}
.about-intro-v2,.about-capability-v2,.about-audience-v2{padding:78px max(24px,calc((100vw - 1180px)/2))}.about-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:18px}.about-intro-grid h2{margin:0;font-size:37px;line-height:1.35}.about-intro-grid p{margin:0 0 14px;color:var(--portal-muted);font-size:16px;line-height:1.9}
.about-capability-v2{background:#f6f9f7}.about-capability-v2 header{display:grid;grid-template-columns:1fr 1fr;gap:10px 60px;margin-bottom:32px}.about-capability-v2 header h2{grid-column:1;margin:5px 0;font-size:35px}.about-capability-v2 header p{grid-column:2;grid-row:1/3;align-self:end;margin:0;color:var(--portal-muted);line-height:1.8}.about-capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--portal-line);background:#fff}.about-capability-grid>a{position:relative;display:flex;flex-direction:column;min-height:310px;padding:28px 24px;border-right:1px solid var(--portal-line);color:var(--portal-ink)!important;text-decoration:none!important}.about-capability-grid>a:last-child{border-right:0}.about-capability-grid>a:hover{background:#f8fbf9}.about-capability-grid i{display:grid;place-items:center;width:46px;height:46px;border-radius:6px;background:var(--portal-mint);color:var(--portal-green);font-size:23px}.about-capability-grid em{position:absolute;top:30px;right:24px;color:#a9bab3;font-style:normal}.about-capability-grid h3{margin:25px 0 12px;font-size:20px}.about-capability-grid p{color:var(--portal-muted);line-height:1.75}.about-capability-grid b{margin-top:auto;color:var(--portal-green);font-size:13px}
.about-method-v2{display:grid;grid-template-columns:390px 1fr;gap:80px;padding:75px max(24px,calc((100vw - 1180px)/2));background:#172720;color:#fff}.about-method-copy h2{margin:8px 0 16px;font-size:34px;line-height:1.4}.about-method-copy p{color:#b7c8c0;line-height:1.8}.about-method-v2 ol{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;border-top:1px solid #40574d;border-left:1px solid #40574d}.about-method-v2 li{display:grid;grid-template-columns:42px 1fr;gap:12px;min-height:135px;padding:24px;border-right:1px solid #40574d;border-bottom:1px solid #40574d}.about-method-v2 em{color:#68b99b;font-style:normal}.about-method-v2 strong{font-size:18px}.about-method-v2 li p{margin:8px 0 0;color:#aebfb7;line-height:1.65}
.about-audience-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin:14px 0 30px}.about-audience-head h2{max-width:620px;margin:0;font-size:35px}.about-audience-head p{max-width:420px;margin:0;color:var(--portal-muted);line-height:1.7}.about-audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.about-audience-grid>div{min-height:145px;padding:23px;border:1px solid var(--portal-line)}.about-audience-grid i,.about-audience-grid strong,.about-audience-grid span{display:block}.about-audience-grid i{margin-bottom:18px;color:var(--portal-green);font-size:24px}.about-audience-grid strong{font-size:17px}.about-audience-grid span{margin-top:8px;color:var(--portal-muted);line-height:1.6}
.about-cta-v2{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:58px max(24px,calc((100vw - 1180px)/2));background:var(--portal-green);color:#fff}.about-cta-v2 h2{margin:7px 0;font-size:32px}.about-cta-v2 p{max-width:760px;margin:0;color:#d5ece3;line-height:1.75}
@media(max-width:980px){.about-hero-v2{grid-template-columns:1fr;gap:35px;padding-top:65px}.about-intro-grid{gap:35px}.about-capability-grid,.about-audience-grid{grid-template-columns:1fr 1fr}.about-capability-grid>a:nth-child(2){border-right:0}.about-capability-grid>a:nth-child(-n+2){border-bottom:1px solid var(--portal-line)}.about-method-v2{grid-template-columns:1fr;gap:35px}}
@media(max-width:680px){.about-hero-v2{padding:48px 16px}.about-hero-copy h1{font-size:36px}.about-hero-copy>p{font-size:16px}.about-hero-actions{flex-wrap:wrap}.about-positioning{padding:24px}.about-intro-v2,.about-capability-v2,.about-audience-v2{padding:54px 16px}.about-intro-grid,.about-capability-v2 header{grid-template-columns:1fr;gap:18px}.about-intro-grid h2,.about-capability-v2 header h2,.about-audience-head h2{font-size:28px}.about-capability-v2 header p{grid-column:1;grid-row:auto}.about-capability-grid,.about-audience-grid{grid-template-columns:1fr}.about-capability-grid>a{min-height:260px;border-right:0!important;border-bottom:1px solid var(--portal-line)!important}.about-capability-grid>a:last-child{border-bottom:0!important}.about-method-v2{padding:54px 16px}.about-method-v2 ol{grid-template-columns:1fr}.about-audience-head,.about-cta-v2{align-items:flex-start;flex-direction:column}.about-cta-v2{padding:45px 16px}.about-cta-v2 h2{font-size:28px}}

/* ── 基础 ── */
*, *::before, *::after { box-sizing: border-box; }
html { font-size: 15px; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei",
               "PingFang SC", sans-serif;
  background: var(--c-bg);
  color: var(--c-text);
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
a { text-decoration: none; }
body.site-gray-mode {
  filter: grayscale(100%);
}

/* ── Header ── */
.ss-header {
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
  height: 64px;
  position: sticky;
  top: 0;
  z-index: 100;
  transition: box-shadow .3s;
  line-height: 64px;
}
.ss-header.scrolled { box-shadow: 0 1px 20px rgba(0,0,0,.07); }
.hinner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 12px;
  height: 64px;
  display: flex;
  align-items: center;
  gap: 0;
  min-width: 0;
}
.ss-logo {
  width: 176px;
  height: 64px;
  font-size: 20px;
  font-weight: 700;
  color: var(--c-text) !important;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 10px;
  letter-spacing: 0;
  margin-right: 0;
  border-right: 1px solid #e5e7eb;
  white-space: nowrap;
  flex: 0 0 176px;
}
.logo-dot {
  width: 34px; height: 34px;
  background: #1b8dd8;
  border-radius: 50%;
  flex-shrink: 0;
  position: relative;
}
.logo-dot::after {
  content: "B";
  position: absolute;
  inset: 0;
  color: #fff;
  font-weight: 800;
  line-height: 34px;
  text-align: center;
  font-style: italic;
}
.ss-nav {
  display: flex;
  gap: 0;
  flex: 1 1 auto;
  min-width: 0;
  background: transparent !important;
  border: none !important;
}
.ss-nav .layui-nav-item,
.ss-nav-right .layui-nav-item {
  flex: 0 0 auto;
}
.ss-nav .layui-nav-item > a {
  color: var(--c-t2) !important;
  font-size: 15px !important;
  padding: 0 18px !important;
  border-radius: 0 !important;
  height: 64px !important;
  line-height: 64px !important;
  border-right: 1px solid #e5e7eb;
  transition: all .2s !important;
  white-space: nowrap;
  word-break: keep-all;
  overflow: visible;
}
.ss-nav .layui-nav-item > a:hover { color: var(--c-teal-d) !important; background: #f8fafc !important; }
.ss-nav-right { background: transparent !important; border: none !important; margin-left: auto; display: flex; align-items: center; gap: 4px; flex: 0 0 auto; }
.ss-nav-right .layui-nav-item > a { color: var(--c-t2) !important; font-size: 14px !important; padding: 0 10px !important; white-space: nowrap; word-break: keep-all; }
.ss-nav-right .layui-nav-item > a:hover { color: var(--c-text) !important; }
.nav-btn {
  background: var(--c-blue) !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 0 16px !important;
  height: 34px !important;
  line-height: 34px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}
.nav-btn:hover { background: var(--c-blue-d) !important; color: #fff !important; }
.ss-vip-tag {
  display: inline-block;
  background: #FFF3E0;
  color: #E65100;
  font-size: 10px;
  padding: 1px 5px;
  border-radius: 3px;
  margin-left: 4px;
  vertical-align: middle;
}
.layui-nav-child { background: #fff !important; box-shadow: 0 4px 16px rgba(0,0,0,.1) !important; border-radius: 8px !important; border: 1px solid var(--c-bd) !important; }
.layui-nav-child dd > a { color: var(--c-t2) !important; font-size: 13px !important; padding: 8px 16px !important; }

/* 手机汉堡按钮 */
.nav-toggle { display: none; cursor: pointer; color: var(--c-text); font-size: 20px; padding: 4px; margin-left: auto; }
.mobile-nav { display: none; position: fixed; top: 60px; left: 0; right: 0; background: #fff; border-bottom: 1px solid var(--c-bd); z-index: 99; box-shadow: 0 4px 16px rgba(0,0,0,.08); }
.mobile-nav a { display: block; padding: 13px 24px; color: var(--c-t2); font-size: 14px; border-bottom: 1px solid var(--c-bg); }
.mobile-nav a:hover { color: var(--c-blue); background: var(--c-bg); }

/* 未验证提示条 */
.verify-bar { background: #FFFBEB; border-bottom: 1px solid #FDE68A; padding: 8px 0; text-align: center; font-size: 13px; color: #92400E; }
.verify-bar a { color: var(--c-blue); margin-left: 8px; }

/* ── 页面主体 ── */
.ss-main { flex: 1; padding: 16px 0 78px; }
.ss-container { max-width: 1440px; margin: 0 auto; padding: 0 24px; }

/* ── 页脚 ── */
.ss-footer {
  background: #fff;
  border-top: 1px solid #e5e7eb;
  padding: 12px 0;
  color: #111827;
  font-size: 13px;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 90;
}
.ss-footer .ss-container { display: flex; align-items: center; gap: 8px; }
.footer-copy { margin-left: auto; color: #4680ad; }

/* ── 卡片 ── */
.ss-card { background: var(--c-bg2); border: 1px solid rgba(15,23,42,.08); border-radius: 8px; padding: 24px 28px; margin-bottom: 16px; box-shadow: 0 10px 30px rgba(15,23,42,.04); }
.ss-card-title { font-size: 17px; font-weight: 600; color: var(--c-text); margin-bottom: 20px; padding-bottom: 14px; border-bottom: 1px solid var(--c-bg); display: flex; align-items: center; gap: 8px; }
.ss-card-title::before { content: ''; display: block; width: 3px; height: 16px; background: var(--c-blue); border-radius: 2px; }

/* ── 按钮 ── */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 36px;
  padding: 0 18px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  border: none;
  transition: all .2s;
  white-space: nowrap;
}
.btn-primary { background: var(--c-blue); color: #fff; }
.btn-primary:hover { background: var(--c-blue-d); color: #fff; }
.btn-outline { background: transparent; color: var(--c-blue); border: 1px solid var(--c-blue); }
.btn-outline:hover { background: var(--c-blue-l); }
.btn-ghost { background: var(--c-bg); color: var(--c-t2); border: 1px solid var(--c-bd); }
.btn-ghost:hover { border-color: #bbb; color: var(--c-text); }
.btn-danger { background: transparent; color: #B42318; border: 1px solid #FCA5A5; }
.btn-danger:hover { background: #FEF2F2; }
.btn-success { background: var(--c-green); color: #fff; }
.btn-sm { height: 30px; padding: 0 12px; font-size: 12px; border-radius: 6px; }
.btn-lg { height: 42px; padding: 0 24px; font-size: 14px; border-radius: 9px; }

/* ── 表单 ── */
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px 20px; }
.form-item { display: flex; flex-direction: column; gap: 5px; }
.form-item label { font-size: 13px; color: var(--c-t2); font-weight: 500; }
.form-req { color: #E53E3E; }
.inp {
  height: 38px;
  border: 1px solid var(--c-bd);
  border-radius: 8px;
  padding: 0 12px;
  font-size: 14px;
  color: var(--c-text);
  background: var(--c-bg2);
  outline: none;
  transition: border-color .2s, box-shadow .2s;
  width: 100%;
}
.inp:focus { border-color: var(--c-blue); box-shadow: 0 0 0 3px rgba(55,138,221,.12); }
.inp:hover:not(:focus) { border-color: #bbb; }
select.inp { cursor: pointer; }
textarea.inp { height: auto; padding: 10px 12px; resize: vertical; }
.form-hint { font-size: 12px; color: var(--c-t3); margin-top: 2px; }
.form-actions { display: flex; gap: 10px; align-items: center; padding-top: 6px; }

/* ── Alert ── */
.alert { padding: 11px 14px; border-radius: 8px; font-size: 13px; margin-bottom: 14px; display: flex; align-items: flex-start; gap: 8px; line-height: 1.6; }
.alert-info    { background: var(--c-blue-l);  border: 1px solid #B5D4F4; color: var(--c-blue-d); }
.alert-success { background: var(--c-green-l); border: 1px solid #9FE1CB; color: #0F6E56; }
.alert-warning { background: #FFFBEB; border: 1px solid #FDE68A; color: #92400E; }
.alert-error   { background: #FEF2F2; border: 1px solid #FCA5A5; color: #B42318; }

/* ── 表格 ── */
.ss-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.ss-table th { background: var(--c-bg); padding: 10px 14px; text-align: left; font-size: 12px; font-weight: 600; color: var(--c-t3); border-bottom: 1px solid var(--c-bd); white-space: nowrap; }
.ss-table td { padding: 11px 14px; border-bottom: 1px solid var(--c-bg); color: var(--c-t2); vertical-align: middle; }
.ss-table tbody tr:hover td { background: #FAFBFF; }
.ss-table tbody tr:last-child td { border-bottom: none; }
.ss-table a { color: var(--c-blue); font-weight: 500; }
.ss-table a:hover { text-decoration: underline; }

/* 状态徽章 */
.badge { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 11px; font-weight: 500; white-space: nowrap; }
.badge-valid    { background: var(--c-green-l); color: #0F6E56; }
.badge-obsolete { background: #F5F5F5; color: var(--c-t3); }
.badge-soon     { background: #FFFBEB; color: #92400E; }
.badge-blue     { background: var(--c-blue-l); color: var(--c-blue-d); }
.badge-purple   { background: #F3F0FF; color: #5B21B6; }

/* 标准类型徽章 */
.type-badge { display: inline-block; padding: 2px 7px; border-radius: 4px; font-size: 11px; font-weight: 500; }
.type-1 { background: var(--c-blue-l);  color: var(--c-blue-d); }
.type-2 { background: #F0FDF4;          color: #166534; }
.type-3 { background: #FFFBEB;          color: #92400E; }
.type-4 { background: #F3F0FF;          color: #5B21B6; }

/* ── 分页 ── */
.ss-pager { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 5px; margin-top: 20px; }
.ss-pager a, .ss-pager span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 32px;
  padding: 0 8px;
  border-radius: 7px;
  font-size: 13px;
  border: 1px solid var(--c-bd);
  background: var(--c-bg2);
  color: var(--c-t2);
  cursor: pointer;
  transition: all .2s;
  white-space: nowrap;
  text-decoration: none;
}
.ss-pager a:hover  { border-color: var(--c-blue); color: var(--c-blue); background: var(--c-blue-l); }
.ss-pager .cur     { background: var(--c-blue); color: #fff; border-color: var(--c-blue); cursor: default; }
.ss-pager .dis     { color: #D0D0D0; cursor: not-allowed; background: var(--c-bg); }
.ss-pager .sep     { border: none; background: transparent; color: var(--c-t3); }
.pager-jump { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--c-t2); }
.pager-jump input  { width: 50px; height: 32px; border: 1px solid var(--c-bd); border-radius: 7px; text-align: center; font-size: 13px; outline: none; }
.pager-jump input:focus { border-color: var(--c-blue); }
.pager-jump button { height: 32px; padding: 0 12px; border-radius: 7px; border: 1px solid var(--c-bd); background: var(--c-bg2); color: var(--c-t2); font-size: 13px; cursor: pointer; transition: all .2s; }
.pager-jump button:hover { border-color: var(--c-blue); color: var(--c-blue); }

/* ── 统计卡片 ── */
.stat-cards { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 20px; }
.stat-card { background: var(--c-bg2); border: 1px solid var(--c-bd); border-radius: var(--r); padding: 16px 20px; text-align: center; min-width: 100px; }
.stat-card.blue   { background: var(--c-blue-l);  border-color: #B5D4F4; }
.stat-card.green  { background: var(--c-green-l); border-color: #9FE1CB; }
.stat-card.orange { background: #FFFBEB;           border-color: #FDE68A; }
.sc-label { font-size: 12px; color: var(--c-t3); margin-bottom: 4px; }
.sc-val   { font-size: 26px; font-weight: 600; color: var(--c-text); }
.blue  .sc-val   { color: var(--c-blue-d); }
.green .sc-val   { color: #0F6E56; }
.orange .sc-val  { color: #92400E; }

/* ── 空状态 ── */
.ss-empty { text-align: center; padding: 48px 20px; color: var(--c-t3); font-size: 14px; }

/* ── 付款方式 ── */
.pay-methods { display: flex; gap: 12px; flex-wrap: wrap; margin: 16px 0; }
.pay-item { border: 1px solid var(--c-bd); border-radius: var(--r); padding: 14px 20px; cursor: pointer; text-align: center; min-width: 110px; transition: all .2s; }
.pay-item:hover     { border-color: var(--c-blue); background: var(--c-blue-l); }
.pay-item.selected  { border-color: var(--c-blue); background: var(--c-blue-l); }
.pay-name { font-size: 13px; font-weight: 500; color: var(--c-text); margin-top: 6px; }

/* ── 管理后台 ── */
.admin-layout,
.ss-admin-layout {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  width: 100%;
}
.admin-sidebar,
.ss-sidebar {
  width: 224px;
  flex: 0 0 224px;
  position: sticky;
  top: 88px;
  z-index: 5;
}
.admin-main,
.ss-admin-main {
  flex: 1 1 auto;
  min-width: 0;
}
.ss-sidebar .layui-nav-tree {
  width: 224px;
  border-radius: 8px;
  overflow: hidden;
  background: #26313a;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 16px 34px rgba(15,23,42,.12);
  padding: 8px 0;
}
.ss-sidebar .layui-nav-tree .layui-nav-item > a {
  height: 44px;
  line-height: 44px;
  padding: 0 18px !important;
  font-size: 14px;
  color: rgba(255,255,255,.82) !important;
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border-left: 3px solid transparent;
  transition: background .18s, color .18s, border-color .18s;
}
.ss-sidebar .layui-nav-tree .layui-nav-item > a:hover,
.ss-sidebar .layui-nav-tree .layui-this > a {
  background: rgba(25,183,167,.16) !important;
  color: #fff !important;
  border-left-color: var(--c-teal);
}
.ss-sidebar .layui-nav-tree .layui-nav-item a .layui-icon {
  width: 16px;
  margin-right: 0;
  font-size: 15px;
  text-align: center;
}
.ss-sidebar .layui-nav-child {
  position: static !important;
  background: rgba(15,23,42,.14) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 4px 0 6px;
}
.ss-sidebar .layui-nav-child dd > a {
  height: 34px !important;
  line-height: 34px !important;
  padding: 0 18px 0 44px !important;
  color: rgba(255,255,255,.72) !important;
  font-size: 13px !important;
  border-left: 3px solid transparent;
}
.ss-sidebar .layui-nav-child dd.layui-this > a,
.ss-sidebar .layui-nav-child dd > a:hover {
  background: rgba(25,183,167,.14) !important;
  color: #fff !important;
  border-left-color: rgba(25,183,167,.7);
}
.admin-sidebar-nav { background: var(--c-bg2); border: 1px solid var(--c-bd); border-radius: var(--r); overflow: hidden; }
.sn-item { padding: 11px 16px; font-size: 13px; color: var(--c-t2); border-bottom: 1px solid var(--c-bg); transition: all .2s; display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.sn-item:hover   { color: var(--c-blue); background: var(--c-blue-l); }
.sn-item.active  { color: var(--c-blue); background: var(--c-blue-l); font-weight: 500; }
.sn-item:last-child { border-bottom: none; }

.ss-admin-main .ss-card {
  overflow-x: auto;
}
.ss-admin-main > .layui-row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.ss-admin-main > .layui-row > [class*="layui-col-"] {
  padding-left: 0;
}
.ss-admin-main .layui-row.layui-col-space16 {
  display: grid;
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: 16px;
}
.ss-admin-main .layui-row.layui-col-space16:before,
.ss-admin-main .layui-row.layui-col-space16:after {
  display: none;
}
.ss-admin-main .layui-row.layui-col-space16 > [class*="layui-col-"] {
  width: auto;
  float: none;
  padding: 0 !important;
}
.ss-admin-main .layui-form-label,
.admin-form-page .layui-form-label {
  width: 108px;
  padding: 0 14px 0 0;
  line-height: 38px;
  color: var(--c-text);
  white-space: nowrap;
  text-align: right;
}
.ss-admin-main .layui-input-block,
.admin-form-page .layui-input-block {
  margin-left: 120px;
  min-height: 38px;
}
.ss-admin-main .layui-input,
.ss-admin-main .layui-select,
.ss-admin-main .layui-textarea,
.admin-form-page .layui-input,
.admin-form-page .layui-select,
.admin-form-page .layui-textarea {
  border-color: var(--c-bd);
  border-radius: 6px;
}
.ss-admin-main .layui-form-item,
.admin-form-page .layui-form-item {
  margin-bottom: 18px;
}
.ss-admin-main .layui-btn,
.admin-form-page .layui-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  white-space: nowrap;
  border-radius: 6px;
  box-shadow: none;
}
.ss-admin-main .layui-btn-xs,
.admin-form-page .layui-btn-xs {
  height: 26px;
  line-height: 26px;
  padding: 0 9px;
  font-size: 12px;
}
.ss-admin-main .layui-table {
  min-width: 760px;
  margin: 0;
  border-color: #eef1f5;
}
.ss-admin-main .layui-table th {
  color: var(--c-text);
  font-weight: 600;
  white-space: nowrap;
  background: #f8fafc;
  border-color: #eef1f5;
  padding-top: 12px;
  padding-bottom: 12px;
}
.ss-admin-main .layui-table td {
  vertical-align: middle;
  border-color: #eef1f5;
  padding-top: 12px;
  padding-bottom: 12px;
}
.ss-admin-main .layui-table tbody tr:hover td {
  background: #f8fbff;
}
.admin-filter-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.admin-filter-bar .layui-input,
.admin-filter-bar .layui-select {
  height: 40px;
  line-height: 40px;
}
.admin-table-meta {
  color: var(--c-t3);
  font-size: 13px;
  margin: 2px 0 14px;
}
.admin-table-meta strong {
  color: var(--c-blue);
}
.std-admin-table {
  table-layout: fixed;
}
.std-admin-table .std-no-col { width: 170px; }
.std-admin-table .std-type-col { width: 88px; }
.std-admin-table .std-date-col { width: 112px; }
.std-admin-table .std-status-col { width: 78px; }
.std-admin-table .std-action-col { width: 128px; }
.std-no-link {
  display: inline-block;
  max-width: 100%;
  color: var(--c-blue) !important;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}
.std-name-cell {
  display: block;
  max-width: 100%;
  color: var(--c-t2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.admin-table-actions {
  display: flex;
  flex-direction: row;
  gap: 6px;
  align-items: center;
  flex-wrap: nowrap;
}
.admin-table-actions .layui-btn {
  margin: 0 !important;
}
.admin-table-actions .layui-btn:first-child {
  background: var(--c-teal);
}
.admin-table-actions .layui-btn:first-child:hover {
  background: var(--c-teal-d);
}
.admin-table-actions .layui-btn-danger {
  background: #fff !important;
  color: var(--c-red) !important;
  border: 1px solid #fecaca !important;
}
.admin-table-actions .layui-btn-danger:hover {
  background: #fef2f2 !important;
  border-color: #fca5a5 !important;
}
.admin-form-page {
  max-width: 1040px;
  margin: 0 auto;
}
.admin-form-page .ss-card {
  padding: 26px 32px;
}
.admin-form-page .layui-textarea {
  min-height: 86px;
  line-height: 1.65;
  resize: vertical;
}
.form-help {
  color: var(--c-t3);
  font-size: 12px;
  line-height: 1.6;
  margin-top: 6px;
}
.admin-metric-card {
  min-height: 128px;
  text-align: center;
  padding: 22px 16px !important;
  border-radius: 8px;
}
.admin-metric-label {
  font-size: 13px;
  color: var(--c-t3);
  margin-bottom: 10px;
  white-space: nowrap;
}
.admin-metric-value {
  font-size: 36px;
  line-height: 1;
  font-weight: 700;
}
.admin-metric-link {
  display: inline-block;
  margin-top: 10px;
  font-size: 12px;
  color: var(--c-blue);
}

/* ── 登录注册页 ── */
.auth-page { min-height: 100vh; display: flex; align-items: center; justify-content: center; background: var(--c-bg); padding: 24px; }
.auth-card { background: var(--c-bg2); border: 1px solid var(--c-bd); border-radius: var(--rl); padding: 36px 40px; width: 400px; max-width: 100%; }
.auth-logo { text-align: center; margin-bottom: 6px; }
.auth-logo-mark { display: inline-flex; align-items: center; gap: 7px; font-size: 18px; font-weight: 600; color: var(--c-text); }
.auth-logo-dot { width: 8px; height: 8px; background: var(--c-blue); border-radius: 50%; }
.auth-sub { text-align: center; font-size: 14px; color: var(--c-t3); margin-bottom: 26px; }
.auth-field { margin-bottom: 16px; }
.auth-field label { display: block; font-size: 13px; font-weight: 500; color: var(--c-t2); margin-bottom: 6px; }
.auth-btn { width: 100%; height: 42px; background: var(--c-blue); color: #fff; border: none; border-radius: 8px; font-size: 15px; font-weight: 500; cursor: pointer; transition: background .2s; letter-spacing: .5px; margin-top: 4px; }
.auth-btn:hover { background: var(--c-blue-d); }
.auth-links { text-align: center; margin-top: 18px; font-size: 13px; color: var(--c-t3); }
.auth-links a { color: var(--c-blue); }
.auth-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--c-t3);
  font-size: 12px;
  margin: 18px 0;
}
.auth-divider::before,
.auth-divider::after {
  content: "";
  height: 1px;
  background: var(--c-bd);
  flex: 1;
}
.wechat-login-btn {
  width: 100%;
  height: 42px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #15803d;
  background: #f0fdf4;
  font-weight: 600;
}
.wechat-login-btn:hover {
  color: #166534;
  border-color: #86efac;
  background: #dcfce7;
}
.wechat-dot {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #22c55e;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

.portal-page { max-width: 1180px; margin: 0 auto; }
.portal-panel {
  background: #fff;
  border: 1px solid #eef1f5;
  border-radius: 4px;
  padding: 34px 38px;
  min-height: 420px;
}
.portal-section-title {
  font-size: 18px;
  font-weight: 700;
  color: #111827;
  margin-bottom: 26px;
}
.about-grid,
.contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  gap: 34px;
  align-items: start;
}
.about-grid h1,
.contact-grid h1 {
  font-size: 28px;
  font-weight: 700;
  margin: 0 0 16px;
}
.about-lead,
.contact-info p {
  color: #4b5563;
  font-size: 15px;
  line-height: 1.9;
}
.about-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 28px;
}
.about-metrics div,
.about-card,
.contact-form-card {
  background: #f8fafc;
  border: 1px solid #eef1f5;
  border-radius: 6px;
  padding: 20px;
}
.about-metrics strong {
  display: block;
  color: var(--c-teal-d);
  font-size: 16px;
  margin-bottom: 6px;
}
.about-metrics span,
.about-card li {
  color: #64748b;
  line-height: 1.8;
}
.about-card-title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
}
.about-card ul { margin: 0; padding-left: 20px; }
.contact-info {
  background: #f3f4f6;
  border-radius: 6px;
  padding: 28px;
}
.contact-item {
  border-top: 1px solid #e5e7eb;
  padding: 16px 0;
}
.contact-item span {
  display: block;
  color: #64748b;
  font-size: 13px;
  margin-bottom: 5px;
}
.contact-item strong {
  color: #111827;
  font-size: 16px;
  word-break: break-word;
}
.contact-form-card {
  background: #fff;
  padding: 26px;
}
.contact-textarea { min-height: 132px; }
.contact-submit {
  width: 150px;
  margin-top: 18px;
  background: var(--c-teal);
}
.contact-submit:hover { background: var(--c-teal-d); }

.help-page { max-width: 1180px; margin: 0 auto; }
.help-hero {
  background: #fff;
  border: 1px solid #eef1f5;
  border-radius: 6px;
  padding: 34px 38px;
  display: grid;
  grid-template-columns: minmax(0,1fr) 320px;
  gap: 30px;
  align-items: center;
  margin-bottom: 16px;
}
.help-hero h1 { margin: 0 0 12px; font-size: 30px; line-height: 1.25; }
.help-hero p { margin: 0; color: #4b5563; line-height: 1.9; font-size: 15px; }
.help-advantage {
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 22px;
}
.help-advantage strong { display: block; color: var(--c-teal-d); margin-bottom: 8px; }
.help-advantage span { color: #475569; line-height: 1.8; }
.help-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.help-grid a {
  background: #fff;
  border: 1px solid #eef1f5;
  border-radius: 6px;
  color: #334155;
  padding: 13px 16px;
  font-weight: 600;
}
.help-grid a:hover { color: var(--c-teal-d); border-color: rgba(25,183,167,.45); }
.help-section {
  background: #fff;
  border: 1px solid #eef1f5;
  border-radius: 6px;
  padding: 26px 30px;
  margin-bottom: 14px;
}
.help-section h2 { font-size: 20px; margin: 0 0 14px; }
.help-section p, .help-list, .help-steps { color: #475569; line-height: 1.9; }
.help-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.help-card { background: #f8fafc; border: 1px solid #eef1f5; border-radius: 6px; padding: 18px; }
.help-card strong { display:block; margin-bottom: 8px; color:#111827; }
.help-card p { margin:0; font-size:13px; }
.help-callout {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  color: #1e3a8a;
  border-radius: 6px;
  padding: 14px 16px;
  margin-top: 12px;
  line-height: 1.8;
}
.help-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:16px; }

.feedback-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 430px;
  gap: 30px;
  align-items: start;
}
.feedback-copy h1 { font-size: 28px; margin: 0 0 14px; }
.feedback-copy p { color: #4b5563; line-height: 1.9; }
.feedback-note, .feedback-std {
  background: #f8fafc;
  border: 1px solid #eef1f5;
  border-radius: 6px;
  padding: 16px 18px;
  margin-top: 14px;
  line-height: 1.8;
}
.feedback-note strong, .feedback-std span {
  display: block;
  color: var(--c-t3);
  font-size: 13px;
  margin-bottom: 4px;
}
.feedback-std strong { display: block; color: var(--c-blue); font-size: 18px; }
.feedback-std em { display: block; color: #475569; font-style: normal; margin-top: 4px; }

.catalog-head, .catalog-detail-head, .catalog-list-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.catalog-create {
  display: grid;
  grid-template-columns: minmax(220px, 300px) minmax(260px, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-top: 18px;
}
.catalog-list-title {
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid var(--c-bg);
  font-weight: 700;
}
.catalog-list-title strong { color: var(--c-blue); }
.catalog-table .catalog-name { font-size: 15px; font-weight: 700; }
.catalog-stats {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}
.catalog-stats a {
  border: 1px solid #e5e7eb;
  background: #fff;
  border-radius: 6px;
  padding: 14px 16px;
  color: #334155;
}
.catalog-stats a.active, .catalog-stats a:hover {
  border-color: rgba(25,183,167,.55);
  background: #f0fdfa;
}
.catalog-stats span { display: block; color: #64748b; font-size: 12px; margin-bottom: 4px; }
.catalog-stats strong { font-size: 24px; color: var(--c-text); }
.catalog-workbench {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
.catalog-file { padding-top: 8px; }
.catalog-check {
  display: flex;
  gap: 8px;
  align-items: center;
  color: var(--c-t2);
  font-size: 13px;
  margin: 12px 0;
}
.catalog-items-table th:first-child, .catalog-items-table td:first-child { width: 46px; }

/* ── 引导提示框 ── */
.ss-guide { background: var(--c-blue-l); border: 1px solid #B5D4F4; border-radius: 8px; padding: 14px 18px; font-size: 13px; color: var(--c-t2); line-height: 1.75; margin-bottom: 16px; }
.ss-guide ol { padding-left: 18px; }
.ss-guide li { margin-bottom: 4px; }

/* ── VIP状态 ── */
.vip-active  { color: #0F6E56; font-weight: 500; }
.vip-expired { color: #B42318; }
.vip-none    { color: var(--c-t3); }

/* ── 响应式 ── */
@media (max-width: 1320px) {
  .ss-logo { width: 158px; flex-basis: 158px; font-size: 18px; gap: 8px; }
  .ss-nav .layui-nav-item > a { padding: 0 14px !important; font-size: 14px !important; }
}

@media (max-width: 1180px) {
  .ss-nav { display: none; }
  .ss-nav-right { display: none; }
  .nav-toggle { display: flex; }
  .mobile-nav { display: none; }
  .mobile-nav.open { display: block; }
}

@media (max-width: 768px) {
  .hinner { padding: 0 16px; }
  .ss-logo { width: auto; border-right: 0; padding-right: 12px; }
  .ss-main { padding: 16px 0; }
  .ss-container { padding: 0 16px; }
  .ss-card { padding: 16px; }
  .form-grid { grid-template-columns: 1fr; }
  .admin-layout,
  .ss-admin-layout { flex-direction: column; gap: 14px; }
  .admin-sidebar,
  .ss-sidebar { position: static; width: 100%; flex: none; }
  .ss-sidebar .layui-nav-tree { width: 100%; display: flex; flex-wrap: wrap; border-radius: 8px; }
  .ss-sidebar .layui-nav-tree .layui-nav-item { flex: 1 0 140px; }
  .ss-sidebar .layui-nav-tree .layui-nav-item > a { justify-content: center; padding: 0 12px !important; }
  .ss-sidebar .layui-nav-child { display: none !important; }
  .ss-admin-main .layui-row.layui-col-space16 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-sidebar-nav { display: flex; flex-wrap: wrap; }
  .sn-item { flex: 1 0 auto; border-right: 1px solid var(--c-bg); border-bottom: none; justify-content: center; }
  .ss-admin-main .layui-form-label,
  .admin-form-page .layui-form-label { float: none; width: 100%; text-align: left; line-height: 1.4; margin-bottom: 6px; padding: 0; }
  .ss-admin-main .layui-input-block,
  .admin-form-page .layui-input-block { margin-left: 0; }
  .auth-card { padding: 24px 20px; }
  .stat-cards { gap: 8px; }
  .stat-card { min-width: 80px; padding: 12px 14px; }
  .sc-val { font-size: 22px; }
  .ss-pager a, .ss-pager span { min-width: 28px; height: 28px; font-size: 12px; }
  .layui-table { font-size: 12px; overflow-x: auto; display: block; }
  .ss-footer { position: static; }
  .ss-footer .ss-container { display: block; line-height: 1.8; }
  .footer-copy { display: block; margin-left: 0; }
  .about-grid,
  .contact-grid { grid-template-columns: 1fr; }
  .portal-panel { padding: 22px 18px; }
  .about-metrics { grid-template-columns: 1fr; }
  .help-hero,
  .feedback-layout,
  .catalog-workbench { grid-template-columns: 1fr; }
  .help-grid,
  .help-card-grid,
  .catalog-stats { grid-template-columns: 1fr; }
  .catalog-create { grid-template-columns: 1fr; }
}

/* Final public portal brand refinements. */
.about-positioning>strong{font-size:21px}
.ss-nav .layui-nav-item>a.is-active{color:var(--portal-green)!important}
.ss-nav .layui-nav-item>a.is-active::after{background:var(--portal-green)!important}

@media (max-width: 520px) {
  .ss-admin-main .layui-row.layui-col-space16 { grid-template-columns: 1fr; }
  .admin-filter-bar .layui-input,
  .admin-filter-bar .layui-select,
  .admin-filter-bar .layui-btn { width: 100% !important; }
}

.stats-dashboard { max-width: 1280px; }
.stats-head {
  background: linear-gradient(135deg, #0f766e, #1d4ed8);
  border-radius: 8px;
  color: #fff;
  padding: 28px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}
.stats-head h1 {
  margin: 4px 0 8px;
  font-size: 26px;
  font-weight: 800;
  letter-spacing: 0;
}
.stats-head p { margin: 0; color: rgba(255,255,255,.82); line-height: 1.8; }
.stats-eyebrow { color: rgba(255,255,255,.72); font-size: 12px; font-weight: 700; }
.stats-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 16px;
}
.stats-kpi {
  background: #fff;
  border: 1px solid #eef1f5;
  border-radius: 8px;
  padding: 20px 22px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
}
.stats-kpi span, .stats-source-grid span {
  color: #64748b;
  display: block;
  font-size: 13px;
}
.stats-kpi strong {
  color: #0f172a;
  display: block;
  font-size: 32px;
  font-weight: 800;
  line-height: 1.2;
  margin: 8px 0 4px;
}
.stats-kpi em { color: #2563eb; font-style: normal; font-size: 13px; }
.stats-kpi.primary strong { color: #0f766e; }
.stats-kpi.warn strong { color: #ea580c; }
.stats-panels {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr);
  gap: 16px;
}
.stats-panel {
  background: #fff;
  border: 1px solid #eef1f5;
  border-radius: 8px;
  padding: 24px;
}
.stats-panel-title {
  color: #111827;
  font-size: 17px;
  font-weight: 800;
  margin-bottom: 18px;
}
.stats-row {
  display: grid;
  grid-template-columns: minmax(100px, 1fr) 150px 72px;
  gap: 12px;
  align-items: center;
  min-height: 48px;
  position: relative;
  padding-bottom: 14px;
  margin-bottom: 12px;
}
.stats-row span { color: #334155; }
.stats-row strong { color: #111827; text-align: right; }
.stats-row em { color: #64748b; font-style: normal; text-align: right; }
.stats-row:after, .stats-row i {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 6px;
  border-radius: 99px;
}
.stats-row:after { background: #eef2f7; }
.stats-row i {
  right: auto;
  min-width: 3px;
  background: linear-gradient(90deg, #14b8a6, #3b82f6);
  z-index: 1;
}
.stats-source-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.stats-source-grid div {
  background: #f8fafc;
  border: 1px solid #eef1f5;
  border-radius: 8px;
  padding: 16px;
}
.stats-source-grid strong {
  display: block;
  color: #0f172a;
  font-size: 24px;
  font-weight: 800;
  margin-top: 8px;
}
.stats-note {
  background: #f0fdfa;
  border: 1px solid #ccfbf1;
  border-radius: 8px;
  color: #0f766e;
  line-height: 1.8;
  margin-top: 16px;
  padding: 14px 16px;
}

@media (max-width: 900px) {
  .stats-head,
  .stats-panels { grid-template-columns: 1fr; }
  .stats-head { display: block; }
  .stats-head .layui-btn { margin-top: 14px; }
  .stats-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 560px) {
  .stats-kpi-grid,
  .stats-source-grid { grid-template-columns: 1fr; }
  .stats-row { grid-template-columns: 1fr auto; }
  .stats-row em { display: none; }
}

.register-card {
  width: 520px;
  max-width: calc(100vw - 32px);
  padding: 44px 50px 34px;
}
.register-form {
  margin-top: 28px;
}
.register-fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
.register-fields .auth-field {
  width: 100%;
}
.register-fields .auth-field label {
  margin-bottom: 8px;
}
.register-fields .inp {
  width: 100%;
  box-sizing: border-box;
}
.register-submit {
  margin-top: 26px;
}
.auth-narrow-card {
  width: 440px;
  max-width: calc(100vw - 32px);
  padding: 44px 46px 34px;
}
.auth-single-form {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  margin-top: 28px;
}
.auth-single-form .auth-field {
  width: 100%;
}
.auth-single-form .inp {
  width: 100%;
  box-sizing: border-box;
}
.auth-single-form .auth-btn {
  margin-top: 8px;
}

@media (max-width: 560px) {
  .register-card {
    padding: 34px 24px 28px;
  }
  .register-form {
    margin-top: 22px;
  }
  .auth-narrow-card {
    padding: 34px 24px 28px;
  }
}

/* 2026 interface polish */
:root {
  --c-blue: #2563eb;
  --c-blue-l: #eff6ff;
  --c-blue-d: #1d4ed8;
  --c-green: #059669;
  --c-green-l: #ecfdf5;
  --c-teal: #0f766e;
  --c-teal-d: #115e59;
  --c-orange: #d97706;
  --c-red: #dc2626;
  --c-text: #111827;
  --c-t2: #475569;
  --c-t3: #7b8794;
  --c-bg: #f4f7fb;
  --c-bg2: #ffffff;
  --c-bd: #e2e8f0;
  --r: 8px;
  --rl: 8px;
  --shadow-sm: 0 8px 22px rgba(15, 23, 42, .05);
  --shadow-md: 0 18px 44px rgba(15, 23, 42, .08);
}

html { font-size: 15px; }
body {
  background:
    linear-gradient(180deg, #f7fafc 0%, #f1f5f9 280px, #f4f7fb 100%);
  color: var(--c-text);
}
a { color: var(--c-blue); }
a:hover { color: var(--c-blue-d); }

.ss-header {
  height: 68px;
  line-height: 68px;
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid rgba(226, 232, 240, .9);
  backdrop-filter: saturate(140%) blur(10px);
}
.ss-header.scrolled { box-shadow: 0 10px 28px rgba(15, 23, 42, .08); }
.hinner {
  max-width: 1360px;
  height: 68px;
  padding: 0 24px;
  gap: 10px;
}
.ss-logo {
  width: auto;
  min-width: 188px;
  height: 68px;
  flex: 0 0 auto;
  border-right: 0;
  gap: 10px;
  padding-right: 18px;
  font-size: 18px;
}
.ss-logo-mark {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  color: #fff;
  background: linear-gradient(135deg, #2563eb, #0f766e);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 20px rgba(37, 99, 235, .22);
}
.ss-logo-mark .layui-icon { font-size: 18px; }
.ss-logo-text {
  max-width: 190px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ss-nav .layui-nav-item > a {
  height: 40px !important;
  line-height: 40px !important;
  margin: 14px 2px;
  padding: 0 13px !important;
  border-right: 0;
  border-radius: 8px !important;
  color: #334155 !important;
}
.ss-nav .layui-nav-item > a:hover,
.ss-nav .layui-nav-item > a.is-active {
  color: var(--c-blue-d) !important;
  background: var(--c-blue-l) !important;
}
.ss-nav-right .layui-nav-item > a {
  height: 38px !important;
  line-height: 38px !important;
  margin: 15px 0;
  border-radius: 8px !important;
}
.nav-btn {
  height: 36px !important;
  line-height: 36px !important;
  border-radius: 8px !important;
  background: #111827 !important;
  padding: 0 17px !important;
}
.nav-btn:hover { background: #0f766e !important; }
.layui-nav-child {
  border-radius: 8px !important;
  border-color: rgba(226, 232, 240, .95) !important;
  box-shadow: 0 18px 40px rgba(15, 23, 42, .13) !important;
  padding: 6px !important;
}
.layui-nav-child dd > a {
  border-radius: 6px !important;
}
.layui-nav-child dd > a:hover {
  background: #f8fafc !important;
  color: var(--c-blue-d) !important;
}
.nav-toggle {
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--c-bd);
  border-radius: 8px;
  background: #fff;
}
.mobile-nav {
  top: 68px;
  border-color: rgba(226, 232, 240, .95);
  box-shadow: var(--shadow-md);
}
.mobile-nav a {
  padding: 14px 24px;
  color: #334155;
}
.mobile-nav a.is-active {
  color: var(--c-blue-d);
  background: var(--c-blue-l);
  font-weight: 700;
}

.ss-main { padding: 24px 0 88px; }
.ss-container {
  max-width: 1360px;
  padding: 0 24px;
}
.ss-footer {
  padding: 14px 0;
  border-top-color: rgba(226, 232, 240, .9);
  color: #475569;
}
.footer-copy { color: #64748b; }

.ss-card {
  border: 1px solid rgba(226, 232, 240, .92);
  border-radius: 8px;
  padding: 24px;
  box-shadow: var(--shadow-sm);
}
.ss-card-title {
  font-size: 16px;
  padding-bottom: 13px;
  border-bottom-color: #eef2f7;
}
.ss-card-title::before {
  width: 4px;
  height: 18px;
  background: linear-gradient(180deg, var(--c-blue), var(--c-teal));
}

.btn,
.layui-btn {
  border-radius: 8px !important;
  box-shadow: none;
}
.btn {
  min-height: 36px;
  letter-spacing: 0;
}
.btn-primary {
  background: var(--c-blue);
  box-shadow: 0 10px 20px rgba(37, 99, 235, .16);
}
.btn-primary:hover {
  background: var(--c-blue-d);
  transform: translateY(-1px);
}
.btn-ghost {
  background: #fff;
  color: #334155;
  border-color: #dbe4ef;
}
.btn-ghost:hover {
  color: var(--c-blue-d);
  border-color: #bfdbfe;
  background: #eff6ff;
}
.inp,
.layui-input,
.layui-select,
.layui-textarea {
  border-color: #dbe4ef;
  border-radius: 8px;
}
.inp {
  height: 42px;
}
.inp:focus,
.layui-input:focus,
.layui-textarea:focus {
  border-color: var(--c-blue) !important;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, .10);
}

.badge,
.type-badge {
  border-radius: 999px;
  padding: 3px 9px;
  font-weight: 700;
}
.badge-valid { background: #dcfce7; color: #166534; }
.badge-obsolete { background: #f1f5f9; color: #64748b; }
.badge-soon { background: #fef3c7; color: #92400e; }
.badge-blue { background: #dbeafe; color: #1d4ed8; }
.type-1 { background: #dbeafe; color: #1d4ed8; }
.type-2 { background: #dcfce7; color: #166534; }
.type-3 { background: #fef3c7; color: #92400e; }
.type-4 { background: #ede9fe; color: #5b21b6; }

.ss-table {
  font-size: 13px;
  border-collapse: separate;
  border-spacing: 0;
}
.ss-table th {
  background: #f8fafc;
  color: #64748b;
  padding: 12px 16px;
  border-bottom: 1px solid #e2e8f0;
}
.ss-table td {
  padding: 14px 16px;
  border-bottom: 1px solid #eef2f7;
}
.ss-table tbody tr:hover td { background: #f8fbff; }
.table-scroll {
  overflow-x: auto;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}
.table-scroll .ss-table th:first-child { border-top-left-radius: 8px; }
.table-scroll .ss-table th:last-child { border-top-right-radius: 8px; }

.ss-page-head,
.search-panel {
  border: 1px solid rgba(226, 232, 240, .95);
  border-radius: 8px;
  background: #fff;
  box-shadow: var(--shadow-sm);
}
.ss-page-head {
  padding: 26px 30px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.ss-eyebrow {
  color: var(--c-teal);
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 8px;
}
.ss-page-title,
.batch-title {
  color: var(--c-text);
  font-size: 26px;
  font-weight: 800;
  line-height: 1.2;
  margin: 0 0 8px;
}
.ss-page-sub,
.batch-sub {
  color: #64748b;
  font-size: 14px;
  line-height: 1.8;
  margin: 0;
}
.ss-head-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.search-panel {
  padding: 26px;
  margin-bottom: 16px;
}
.search-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}
.search-panel-title {
  font-size: 18px;
  font-weight: 800;
  color: var(--c-text);
}
.search-panel-note {
  color: #64748b;
  font-size: 13px;
  margin-top: 5px;
}
.search-form-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.1fr) minmax(220px, 1.1fr) minmax(160px, .7fr) minmax(150px, .7fr);
  gap: 14px;
  align-items: end;
}
.search-form-grid .form-item label {
  color: #334155;
  font-weight: 700;
}
.search-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 18px;
}
.quick-route-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.quick-route {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 34px;
  padding: 0 12px;
  border-radius: 8px;
  color: #334155;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  font-size: 13px;
  font-weight: 700;
}
.quick-route:hover {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: var(--c-blue-d);
}

.result-card {
  padding: 0;
  overflow: hidden;
}
.result-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 20px;
  border-bottom: 1px solid #eef2f7;
  background: #fff;
}
.result-meta {
  color: #64748b;
  font-size: 13px;
}
.result-meta strong {
  color: #0f172a;
  font-size: 18px;
}
.result-hint {
  color: #7b8794;
  font-size: 12px;
}
.std-no-link {
  color: var(--c-blue-d) !important;
  font-weight: 800 !important;
}
.std-name-clamp {
  max-width: 420px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #334155;
}
.std-muted {
  color: #7b8794;
  font-size: 12px;
}
.relation-cell {
  color: #64748b;
  font-size: 12px;
  line-height: 1.6;
}
.inline-muted-link {
  color: #94a3b8 !important;
  font-size: 12px;
  font-weight: 400 !important;
}
.empty-state {
  padding: 44px 20px;
  text-align: center;
  color: #64748b;
}
.empty-state strong {
  display: block;
  color: #111827;
  font-size: 16px;
  margin-bottom: 8px;
}
.pager-wrap {
  padding: 16px 20px;
  border-top: 1px solid #eef2f7;
  background: #fff;
}
.pager-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
}

.detail-header {
  background: #fff;
  border: 1px solid #dbeafe;
  border-left: 4px solid var(--c-blue);
  border-radius: 8px;
  box-shadow: var(--shadow-sm);
}
.detail-stdno {
  color: var(--c-blue-d);
  font-size: 24px;
}
.detail-name {
  color: #1f2937;
  font-size: 17px;
}
.detail-meta {
  gap: 12px;
}
.detail-meta-item {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 8px 10px;
  color: #475569;
}
.timeline {
  padding: 10px 0 4px;
}
.tl-circle {
  border-radius: 8px;
}
.tl-circle.current {
  background: var(--c-blue);
  box-shadow: 0 12px 24px rgba(37, 99, 235, .22);
}
.tl-arrow { color: #94a3b8; }
.std-card {
  border-color: #e2e8f0;
  background: #fff;
  box-shadow: 0 6px 18px rgba(15, 23, 42, .04);
}
.std-card:hover {
  border-color: #bfdbfe;
  background: #f8fbff;
}
.std-card-no,
.std-card-no a {
  color: var(--c-blue-d);
}
.ref-tag {
  border-radius: 999px;
}

.batch-head,
.catalog-head,
.catalog-detail-head {
  padding: 26px 28px;
  margin: -24px -24px 22px;
  border-bottom: 1px solid #eef2f7;
  background: #fbfdff;
  border-radius: 8px 8px 0 0;
}
.batch-panel {
  border-color: #e2e8f0;
  border-radius: 8px;
  background: #fff;
  padding: 20px;
  box-shadow: 0 6px 18px rgba(15, 23, 42, .04);
}
.batch-panel-title {
  font-size: 16px;
  font-weight: 800;
}
.batch-tip {
  background: #f0fdfa;
  border-color: #99f6e4;
  color: #115e59;
}
.batch-upload input[type=file] {
  height: 42px;
  border-color: #dbe4ef;
}
.batch-metric {
  border-color: #e2e8f0;
  background: #f8fafc;
}
.batch-metric strong {
  font-size: 28px;
  font-weight: 800;
}
.batch-result-wrap {
  border-color: #e2e8f0;
  border-radius: 8px;
}
.batch-empty {
  border-color: #cbd5e1;
  background: #f8fafc;
}
.catalog-create {
  grid-template-columns: minmax(220px, 310px) minmax(260px, 1fr) auto;
}
.catalog-list-title {
  padding: 18px 22px;
  border-bottom-color: #eef2f7;
  background: #fff;
}
.catalog-table .catalog-name {
  color: #0f172a;
}

@media (max-width: 1180px) {
  .ss-logo { min-width: auto; }
  .ss-logo-text { max-width: 220px; }
}

@media (max-width: 900px) {
  .ss-main { padding: 18px 0 32px; }
  .ss-page-head,
  .search-panel-head,
  .result-toolbar,
  .batch-head,
  .catalog-head,
  .catalog-detail-head {
    display: block;
  }
  .ss-head-actions,
  .quick-route-row {
    justify-content: flex-start;
    margin-top: 14px;
  }
  .search-form-grid {
    grid-template-columns: 1fr;
  }
  .std-name-clamp { max-width: 260px; }
}

@media (max-width: 768px) {
  .hinner { padding: 0 16px; }
  .ss-logo { height: 68px; padding-right: 0; }
  .ss-logo-mark { width: 34px; height: 34px; }
  .ss-container { padding: 0 14px; }
  .ss-card { padding: 18px; }
  .ss-page-head,
  .search-panel {
    padding: 20px;
  }
  .ss-page-title,
  .batch-title {
    font-size: 22px;
  }
  .batch-head,
  .catalog-head,
  .catalog-detail-head {
    margin: -18px -18px 18px;
    padding: 20px;
  }
  .result-toolbar {
    padding: 14px 16px;
  }
  .ss-table td,
  .ss-table th {
    padding: 12px;
  }
  .search-actions .btn,
  .quick-route,
  .catalog-create .btn {
    width: 100%;
  }
}

/* 2026 premium product interface */
:root {
  --premium-ink: #101820;
  --premium-ink-2: #17212d;
  --premium-panel: #ffffff;
  --premium-soft: #f6f8fb;
  --premium-line: #d8e1ec;
  --premium-blue: #2f64e9;
  --premium-blue-2: #1f4fd0;
  --premium-teal: #0f8f86;
  --premium-teal-2: #0b6f68;
  --premium-gold: #b88a2f;
  --premium-text: #101828;
  --premium-muted: #667085;
  --premium-shadow: 0 22px 60px rgba(16, 24, 40, .10);
  --premium-shadow-soft: 0 12px 32px rgba(16, 24, 40, .07);
}

body {
  background:
    linear-gradient(180deg, #edf2f7 0%, #f7f9fc 310px, #f4f7fb 100%);
  color: var(--premium-text);
}

.ss-header {
  height: 72px;
  line-height: 72px;
  background: var(--premium-ink);
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 0 16px 44px rgba(16, 24, 40, .18);
}
.ss-header.scrolled {
  box-shadow: 0 18px 46px rgba(16, 24, 40, .22);
}
.hinner {
  height: 72px;
  max-width: 1440px;
}
.ss-logo {
  height: 72px;
  color: #fff !important;
}
.ss-logo-mark {
  background: #ffffff;
  color: var(--premium-ink);
  box-shadow: none;
}
.ss-logo-text {
  color: #fff;
  font-weight: 800;
}
.ss-nav .layui-nav-item > a,
.ss-nav-right .layui-nav-item > a {
  color: rgba(255, 255, 255, .78) !important;
}
.ss-nav .layui-nav-item > a {
  height: 38px !important;
  line-height: 38px !important;
  margin: 17px 2px;
  border: 1px solid transparent;
}
.ss-nav .layui-nav-item > a:hover,
.ss-nav .layui-nav-item > a.is-active {
  color: #fff !important;
  background: rgba(255, 255, 255, .10) !important;
  border-color: rgba(255, 255, 255, .12);
}
.ss-nav-right .layui-nav-item > a:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, .08) !important;
}
.nav-btn {
  color: #101820 !important;
  background: #fff !important;
  font-weight: 800 !important;
}
.nav-btn:hover {
  background: #dffcf9 !important;
  color: var(--premium-ink) !important;
}
.ss-vip-tag {
  border-radius: 999px;
  background: #fff7ed;
  color: #9a3412;
}
.nav-toggle {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .14);
  color: #fff;
}
.mobile-nav {
  top: 72px;
}

.ss-main {
  padding-top: 28px;
}
.ss-container {
  max-width: 1440px;
}
.ss-card,
.search-panel,
.ss-page-head {
  border-color: rgba(216, 225, 236, .92);
  background: var(--premium-panel);
  box-shadow: var(--premium-shadow-soft);
}

.premium-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(430px, 520px);
  gap: 34px;
  align-items: stretch;
  border-radius: 8px;
  padding: 38px;
  margin-bottom: 16px;
  color: #fff;
  background: linear-gradient(135deg, #101820 0%, #17212d 54%, #0e5f5a 100%);
  border: 1px solid rgba(255, 255, 255, .08);
  box-shadow: var(--premium-shadow);
}
.premium-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 330px;
}
.premium-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  color: #b8fff8;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 18px;
}
.premium-kicker span {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #34d399;
  box-shadow: 0 0 0 5px rgba(52, 211, 153, .14);
}
.premium-hero h1 {
  margin: 0;
  max-width: 720px;
  color: #fff;
  font-size: 44px;
  line-height: 1.18;
  font-weight: 900;
}
.premium-hero p {
  max-width: 670px;
  color: rgba(255, 255, 255, .76);
  font-size: 16px;
  line-height: 1.9;
  margin: 20px 0 0;
}
.premium-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}
.premium-trust-row span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  color: rgba(255, 255, 255, .88);
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .12);
  font-size: 13px;
  font-weight: 700;
}
.premium-trust-row .layui-icon {
  color: #6ee7b7;
}

.premium-query-console {
  background: #fff;
  color: var(--premium-text);
  border-radius: 8px;
  padding: 26px;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .20);
  border: 1px solid rgba(255, 255, 255, .66);
}
.console-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 18px;
  margin-bottom: 18px;
  border-bottom: 1px solid #edf1f6;
}
.console-topline strong {
  display: block;
  color: var(--premium-text);
  font-size: 20px;
  font-weight: 900;
  line-height: 1.2;
}
.console-topline span {
  display: block;
  color: var(--premium-muted);
  font-size: 13px;
  line-height: 1.7;
  margin-top: 4px;
}
.console-reset {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  color: var(--premium-muted);
  background: #f7f9fc;
  border: 1px solid #e6edf5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.console-reset:hover {
  color: var(--premium-blue);
  border-color: #c6d7ff;
  background: #f1f6ff;
}
.console-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.console-field {
  min-width: 0;
}
.console-field.wide {
  grid-column: span 2;
}
.console-field label {
  display: block;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 7px;
}
.premium-input {
  height: 46px;
  border-color: #d8e1ec;
  background: #fbfcfe;
  color: var(--premium-text);
  font-size: 14px;
}
.premium-input:hover {
  border-color: #bfcee0;
}
.premium-search-btn {
  width: 100%;
  height: 48px;
  margin-top: 18px;
  border: 0;
  border-radius: 8px;
  color: #fff;
  background: linear-gradient(135deg, var(--premium-blue), var(--premium-teal));
  box-shadow: 0 14px 28px rgba(47, 100, 233, .20);
  font-size: 15px;
  font-weight: 900;
  cursor: pointer;
}
.premium-search-btn:hover {
  background: linear-gradient(135deg, var(--premium-blue-2), var(--premium-teal-2));
}
.premium-search-btn .layui-icon {
  margin-right: 6px;
}

.premium-route-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}
.premium-route-card {
  min-height: 104px;
  border-radius: 8px;
  padding: 18px;
  color: var(--premium-text);
  background: #fff;
  border: 1px solid rgba(216, 225, 236, .95);
  box-shadow: var(--premium-shadow-soft);
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 5px 12px;
  align-items: center;
}
.premium-route-card:hover {
  color: var(--premium-text);
  transform: translateY(-2px);
  border-color: #c7d6e8;
  box-shadow: var(--premium-shadow);
}
.premium-route-card > i {
  grid-row: span 2;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: #eef6ff;
  color: var(--premium-blue);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.premium-route-card:nth-child(2) > i { background: #ecfdf5; color: #03906f; }
.premium-route-card:nth-child(3) > i { background: #fff7ed; color: #b45309; }
.premium-route-card:nth-child(4) > i { background: #f5f3ff; color: #6d28d9; }
.premium-route-card strong {
  min-width: 0;
  color: var(--premium-text);
  font-size: 16px;
  font-weight: 900;
}
.premium-route-card span {
  color: var(--premium-muted);
  font-size: 13px;
}

.premium-result-card {
  border-color: rgba(216, 225, 236, .95);
}
.result-toolbar {
  padding: 20px 24px;
  background: #fff;
}
.result-meta {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.result-meta em {
  color: var(--premium-text);
  font-style: normal;
  font-size: 17px;
  font-weight: 900;
}
.result-meta strong {
  font-size: 24px;
  color: var(--premium-blue);
}
.result-meta small {
  color: var(--premium-muted);
  font-size: 12px;
}
.result-hint {
  color: var(--premium-muted);
}
.table-scroll {
  border: 0;
  border-radius: 0;
}
.premium-result-card .ss-table th {
  background: #f5f8fc;
  color: #667085;
  font-weight: 900;
}
.premium-result-card .ss-table td {
  padding-top: 16px;
  padding-bottom: 16px;
}
.std-no-link {
  color: var(--premium-blue-2) !important;
}
.std-name-clamp {
  color: #243043;
  font-weight: 600;
}

.batch-head,
.catalog-head,
.catalog-detail-head {
  background: linear-gradient(135deg, #101820 0%, #17212d 70%, #0e5f5a 100%);
  border-bottom: 0;
  color: #fff;
}
.batch-head .ss-eyebrow,
.catalog-head .ss-eyebrow,
.catalog-detail-head .ss-eyebrow {
  color: #b8fff8;
}
.batch-head .batch-title,
.catalog-head .batch-title,
.catalog-detail-head .batch-title,
.batch-head .ss-page-title,
.catalog-head .ss-page-title,
.catalog-detail-head .ss-page-title {
  color: #fff;
}
.batch-head .batch-sub,
.catalog-head .batch-sub,
.catalog-detail-head .batch-sub {
  color: rgba(255, 255, 255, .76);
}
.batch-head .btn,
.catalog-head .btn,
.catalog-detail-head .btn {
  color: var(--premium-ink);
  background: #fff;
  border-color: rgba(255, 255, 255, .62);
  font-weight: 900;
}
.batch-panel {
  padding: 22px;
  border-color: #dce5ef;
  box-shadow: var(--premium-shadow-soft);
}
.batch-panel-title {
  color: var(--premium-text);
  font-size: 17px;
  font-weight: 900;
}
.batch-panel-title i {
  color: var(--premium-teal);
}
.batch-tip {
  background: #f1fbfa;
  border-color: #bcebe5;
  color: #0b5f59;
}
.batch-result-wrap {
  border-color: #dce5ef;
}
.batch-record-active td {
  background: #eef6ff !important;
}
.catalog-create {
  padding: 4px 0 2px;
}
.catalog-list-title {
  background: #fff;
  font-size: 16px;
}
.catalog-list-title span {
  color: var(--premium-text);
  font-weight: 900;
}
.catalog-list-title strong {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  color: #fff;
  background: var(--premium-blue);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.catalog-table .catalog-name {
  color: var(--premium-blue-2);
}

.detail-header {
  border-left-color: var(--premium-teal);
  box-shadow: var(--premium-shadow-soft);
}
.detail-stdno {
  color: var(--premium-blue-2);
  font-size: 26px;
  font-weight: 900;
}
.detail-name {
  color: #243043;
}

@media (max-width: 1180px) {
  .premium-hero {
    grid-template-columns: 1fr;
  }
  .premium-hero-copy {
    min-height: auto;
  }
  .premium-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .ss-header,
  .hinner,
  .ss-logo {
    height: 64px;
    line-height: 64px;
  }
  .mobile-nav {
    top: 64px;
  }
  .premium-hero {
    padding: 22px;
    gap: 22px;
  }
  .premium-hero h1 {
    font-size: 30px;
  }
  .premium-hero p {
    font-size: 14px;
  }
  .premium-query-console {
    padding: 18px;
  }
  .console-fields {
    grid-template-columns: 1fr;
  }
  .console-field.wide {
    grid-column: span 1;
  }
  .premium-route-grid {
    grid-template-columns: 1fr;
  }
  .premium-route-card {
    min-height: 90px;
  }
  .result-toolbar,
  .result-meta {
    display: block;
  }
  .result-meta small {
    display: block;
    margin-top: 4px;
  }
  .result-hint {
    display: block;
    margin-top: 8px;
  }
}

/* 2026 Nature-inspired editorial palette */
:root {
  --nature-ink: #131c26;
  --nature-ink-2: #1e2b35;
  --nature-paper: #f7f4ee;
  --nature-panel: #fffdf9;
  --nature-panel-2: #fbf8f1;
  --nature-line: #ddd6ca;
  --nature-muted: #6d746f;
  --nature-sage: #687b6a;
  --nature-sage-2: #4f6656;
  --nature-mist: #e7ece7;
  --nature-bluegray: #5d7480;
  --nature-clay: #a86f4c;
  --nature-gold: #a98242;
  --premium-ink: var(--nature-ink);
  --premium-ink-2: var(--nature-ink-2);
  --premium-panel: var(--nature-panel);
  --premium-soft: #f1eee7;
  --premium-line: var(--nature-line);
  --premium-blue: var(--nature-sage);
  --premium-blue-2: var(--nature-sage-2);
  --premium-teal: var(--nature-bluegray);
  --premium-teal-2: #475f6a;
  --premium-gold: var(--nature-gold);
  --premium-text: #1a242d;
  --premium-muted: var(--nature-muted);
  --premium-shadow: 0 24px 60px rgba(31, 41, 55, .10);
  --premium-shadow-soft: 0 12px 30px rgba(31, 41, 55, .06);
  --c-blue: var(--nature-sage);
  --c-blue-l: #eef2ed;
  --c-blue-d: var(--nature-sage-2);
  --c-teal: var(--nature-bluegray);
  --c-teal-d: #475f6a;
  --c-green: #607861;
  --c-green-l: #eef3ec;
  --c-orange: var(--nature-clay);
  --c-text: #1a242d;
  --c-t2: #4f5f59;
  --c-t3: #7c8580;
  --c-bg: var(--nature-paper);
  --c-bg2: var(--nature-panel);
  --c-bd: var(--nature-line);
}

body {
  background:
    linear-gradient(180deg, #f3efe6 0%, var(--nature-paper) 360px, #f8f6f1 100%);
  color: #1a242d;
}

.ss-header {
  background: var(--nature-ink);
  border-bottom: 1px solid rgba(255, 255, 255, .10);
  box-shadow: 0 14px 38px rgba(19, 28, 38, .18);
}
.ss-header.scrolled {
  box-shadow: 0 16px 42px rgba(19, 28, 38, .22);
}
.ss-logo-mark {
  background: #f7f4ee;
  color: var(--nature-ink);
}
.ss-nav .layui-nav-item > a:hover,
.ss-nav .layui-nav-item > a.is-active,
.ss-nav-right .layui-nav-item > a:hover {
  background: rgba(247, 244, 238, .10) !important;
  border-color: rgba(247, 244, 238, .16);
}
.nav-btn {
  background: #f7f4ee !important;
  color: var(--nature-ink) !important;
}
.nav-btn:hover {
  background: #e7ece7 !important;
}

.ss-card,
.search-panel,
.ss-page-head,
.premium-query-console,
.premium-route-card {
  background: var(--nature-panel);
  border-color: rgba(221, 214, 202, .95);
}

.premium-hero {
  color: var(--nature-ink);
  background:
    linear-gradient(90deg, rgba(104, 123, 106, .10), rgba(255, 253, 249, 0) 42%),
    var(--nature-panel);
  border: 1px solid rgba(221, 214, 202, .95);
  box-shadow: var(--premium-shadow);
}
.premium-hero-copy {
  min-height: 300px;
}
.premium-kicker {
  color: var(--nature-sage-2);
}
.premium-kicker span {
  background: var(--nature-sage);
  box-shadow: 0 0 0 5px rgba(104, 123, 106, .14);
}
.premium-hero h1 {
  color: var(--nature-ink);
  max-width: 760px;
  font-weight: 900;
}
.premium-hero p {
  color: #53605a;
}
.premium-trust-row span {
  color: #33433a;
  background: #f1eee7;
  border-color: #ded7cc;
}
.premium-trust-row .layui-icon {
  color: var(--nature-sage-2);
}

.premium-query-console {
  box-shadow: 0 18px 50px rgba(52, 64, 84, .10);
}
.console-topline {
  border-bottom-color: #e6dfd4;
}
.console-topline strong {
  color: var(--nature-ink);
}
.console-topline span,
.console-field label,
.premium-route-card span,
.result-hint {
  color: var(--nature-muted);
}
.console-reset {
  background: var(--nature-panel-2);
  border-color: var(--nature-line);
  color: var(--nature-muted);
}
.console-reset:hover {
  color: var(--nature-sage-2);
  border-color: #c9cfc6;
  background: var(--nature-mist);
}
.premium-input,
.inp {
  background: #fffefa;
  border-color: #d9d0c3;
}
.premium-input:focus,
.inp:focus {
  border-color: var(--nature-sage) !important;
  box-shadow: 0 0 0 4px rgba(104, 123, 106, .14);
}
.premium-search-btn {
  background: var(--nature-ink);
  box-shadow: 0 14px 28px rgba(19, 28, 38, .16);
}
.premium-search-btn:hover {
  background: var(--nature-ink-2);
}

.premium-route-card:hover {
  border-color: #c8c0b4;
  box-shadow: var(--premium-shadow);
}
.premium-route-card > i {
  background: var(--nature-mist);
  color: var(--nature-sage-2);
}
.premium-route-card:nth-child(2) > i {
  background: #ece8df;
  color: var(--nature-gold);
}
.premium-route-card:nth-child(3) > i {
  background: #f1e5dc;
  color: var(--nature-clay);
}
.premium-route-card:nth-child(4) > i {
  background: #e8edf0;
  color: var(--nature-bluegray);
}
.premium-route-card strong {
  color: var(--nature-ink);
}

.result-toolbar {
  background: var(--nature-panel);
  border-bottom-color: #e7dfd3;
}
.result-meta em {
  color: var(--nature-ink);
}
.result-meta strong {
  color: var(--nature-sage-2);
}
.premium-result-card .ss-table th,
.ss-table th {
  background: #f1eee7;
  color: #68726c;
}
.premium-result-card .ss-table td,
.ss-table td {
  border-bottom-color: #ece5da;
}
.ss-table tbody tr:hover td {
  background: #fbf8f1;
}
.std-no-link,
.catalog-table .catalog-name,
.detail-stdno {
  color: var(--nature-sage-2) !important;
}
.std-name-clamp {
  color: #25313a;
}

.badge-valid {
  background: #e8f0e6;
  color: #50694d;
}
.badge-obsolete {
  background: #eee9e1;
  color: #6c675f;
}
.badge-soon {
  background: #f2e4d9;
  color: #935f41;
}
.badge-blue {
  background: #e8edf0;
  color: #4f6875;
}
.type-1 {
  background: #e8edf0;
  color: #4f6875;
}
.type-2 {
  background: #e8f0e6;
  color: #50694d;
}
.type-3 {
  background: #f1e5dc;
  color: #935f41;
}
.type-4 {
  background: #eee9e1;
  color: #5f5a52;
}

.batch-head,
.catalog-head,
.catalog-detail-head {
  color: var(--nature-ink);
  background:
    linear-gradient(90deg, rgba(104, 123, 106, .12), rgba(255, 253, 249, 0) 50%),
    var(--nature-panel);
  border-bottom: 1px solid #e7dfd3;
}
.batch-head .ss-eyebrow,
.catalog-head .ss-eyebrow,
.catalog-detail-head .ss-eyebrow {
  color: var(--nature-sage-2);
}
.batch-head .batch-title,
.catalog-head .batch-title,
.catalog-detail-head .batch-title,
.batch-head .ss-page-title,
.catalog-head .ss-page-title,
.catalog-detail-head .ss-page-title {
  color: var(--nature-ink);
}
.batch-head .batch-sub,
.catalog-head .batch-sub,
.catalog-detail-head .batch-sub {
  color: var(--nature-muted);
}
.batch-head .btn,
.catalog-head .btn,
.catalog-detail-head .btn {
  color: var(--nature-ink);
  background: #f7f4ee;
  border-color: var(--nature-line);
}
.batch-panel {
  background: var(--nature-panel);
  border-color: var(--nature-line);
}
.batch-panel-title i {
  color: var(--nature-sage-2);
}
.batch-tip {
  background: #eef3ec;
  border-color: #d2ddcf;
  color: #405845;
}
.batch-result-wrap {
  border-color: var(--nature-line);
}
.batch-record-active td {
  background: #edf2ee !important;
}
.catalog-list-title {
  background: var(--nature-panel);
  border-bottom-color: #e7dfd3;
}
.catalog-list-title strong {
  background: var(--nature-sage);
}

.btn-primary {
  background: var(--nature-ink);
  box-shadow: 0 10px 20px rgba(19, 28, 38, .12);
}
.btn-primary:hover {
  background: var(--nature-ink-2);
}
.btn-ghost {
  background: #fffdf9;
  border-color: var(--nature-line);
  color: #33433a;
}
.btn-ghost:hover {
  color: var(--nature-sage-2);
  background: var(--nature-mist);
  border-color: #c9cfc6;
}
.ss-pager .cur {
  background: var(--nature-ink);
  border-color: var(--nature-ink);
}
.ss-pager a:hover {
  border-color: var(--nature-sage);
  color: var(--nature-sage-2);
  background: var(--nature-mist);
}
.detail-header {
  background: var(--nature-panel);
  border-color: #d8d0c5;
  border-left-color: var(--nature-sage);
}
.detail-meta-item {
  background: var(--nature-panel-2);
  border-color: var(--nature-line);
}
.tl-circle.current {
  background: var(--nature-ink);
  box-shadow: 0 12px 24px rgba(19, 28, 38, .18);
}

@media (max-width: 768px) {
  .premium-hero {
    background: var(--nature-panel);
  }
}

/* 2026 scientific figure palette: white + orange + green + red */
:root {
  --fig-bg: #F7F8F6;
  --fig-card: #FFFFFF;
  --fig-text: #222222;
  --fig-muted: #666666;
  --fig-soft: #F3F5F2;
  --fig-line: #D9D9D9;
  --fig-line-soft: #E5E7DF;
  --fig-orange: #F28C18;
  --fig-orange-hover: #D97806;
  --fig-green: #178A2F;
  --fig-green-link: #1F7A3A;
  --fig-green-soft: #EAF5EC;
  --fig-red: #D93636;
  --fig-red-soft: #FBEAEA;
  --fig-amber: #E6A23C;
  --fig-amber-soft: #FFF3E0;
  --fig-bluegray: #7F97A6;
  --c-blue: var(--fig-green-link);
  --c-blue-l: var(--fig-green-soft);
  --c-blue-d: #155E2D;
  --c-green: var(--fig-green);
  --c-green-l: var(--fig-green-soft);
  --c-teal: var(--fig-green-link);
  --c-teal-d: #155E2D;
  --c-orange: var(--fig-orange);
  --c-red: var(--fig-red);
  --c-text: var(--fig-text);
  --c-t2: var(--fig-muted);
  --c-t3: #888888;
  --c-bg: var(--fig-bg);
  --c-bg2: var(--fig-card);
  --c-bd: var(--fig-line-soft);
  --premium-ink: var(--fig-text);
  --premium-ink-2: #333333;
  --premium-panel: var(--fig-card);
  --premium-soft: var(--fig-soft);
  --premium-line: var(--fig-line);
  --premium-blue: var(--fig-green-link);
  --premium-blue-2: #155E2D;
  --premium-teal: var(--fig-green);
  --premium-teal-2: #126B28;
  --premium-gold: var(--fig-orange);
  --premium-text: var(--fig-text);
  --premium-muted: var(--fig-muted);
  --premium-shadow: 0 18px 45px rgba(31, 41, 55, .08);
  --premium-shadow-soft: 0 8px 24px rgba(31, 41, 55, .055);
}

body {
  background: var(--fig-bg);
  color: var(--fig-text);
}
a {
  color: var(--fig-green-link);
}
a:hover {
  color: #155E2D;
}

.ss-header {
  height: 68px;
  line-height: 68px;
  background: #FFFFFF;
  border-bottom: 1px solid var(--fig-line-soft);
  box-shadow: 0 3px 18px rgba(31, 41, 55, .055);
}
.ss-header.scrolled {
  box-shadow: 0 8px 24px rgba(31, 41, 55, .08);
}
.hinner,
.ss-logo {
  height: 68px;
}
.ss-logo {
  color: var(--fig-text) !important;
}
.ss-logo-text {
  color: var(--fig-text);
}
.ss-logo-mark {
  background: var(--fig-red);
  color: #FFFFFF;
  box-shadow: none;
}
.ss-nav,
.ss-nav-right {
  background: transparent !important;
}
.ss-nav .layui-nav-item > a,
.ss-nav-right .layui-nav-item > a {
  color: #333333 !important;
}
.ss-nav .layui-nav-item > a {
  height: 38px !important;
  line-height: 38px !important;
  margin: 15px 2px;
  border: 0;
  border-radius: 6px !important;
  position: relative;
}
.ss-nav .layui-nav-item > a:hover {
  color: var(--fig-green-link) !important;
  background: var(--fig-green-soft) !important;
}
.ss-nav .layui-nav-item > a.is-active {
  color: var(--fig-red) !important;
  background: transparent !important;
  font-weight: 800;
}
.ss-nav .layui-nav-item > a.is-active::after {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 4px;
  height: 3px;
  border-radius: 99px;
  background: var(--fig-red);
}
.ss-nav-right .layui-nav-item > a:hover {
  color: var(--fig-green-link) !important;
  background: var(--fig-green-soft) !important;
}
.nav-btn {
  background: var(--fig-orange) !important;
  color: #FFFFFF !important;
  font-weight: 800 !important;
}
.nav-btn:hover {
  background: var(--fig-orange-hover) !important;
  color: #FFFFFF !important;
}
.nav-toggle {
  background: #FFFFFF;
  border-color: var(--fig-line);
  color: var(--fig-text);
}
.mobile-nav {
  top: 68px;
  background: #FFFFFF;
  border-color: var(--fig-line-soft);
}
.mobile-nav a {
  color: #333333;
}
.mobile-nav a.is-active {
  color: var(--fig-red);
  background: var(--fig-red-soft);
}

.ss-main {
  padding-top: 24px;
}
.ss-card,
.search-panel,
.ss-page-head,
.premium-query-console,
.premium-route-card,
.batch-panel,
.portal-panel,
.help-hero,
.help-section {
  background: #FFFFFF;
  border-color: var(--fig-line-soft);
  box-shadow: var(--premium-shadow-soft);
}

.premium-hero {
  color: var(--fig-text);
  background: #FFFFFF;
  border: 1px solid var(--fig-line-soft);
  box-shadow: var(--premium-shadow-soft);
}
.premium-hero-copy {
  min-height: 288px;
}
.premium-kicker {
  color: var(--fig-green-link);
}
.premium-kicker span {
  background: var(--fig-orange);
  box-shadow: 0 0 0 5px rgba(242, 140, 24, .13);
}
.premium-hero h1 {
  color: var(--fig-text);
}
.premium-hero p {
  color: var(--fig-muted);
}
.premium-trust-row span {
  color: #3F3F3F;
  background: var(--fig-soft);
  border-color: var(--fig-line-soft);
}
.premium-trust-row .layui-icon {
  color: var(--fig-green);
}

.console-topline {
  border-bottom-color: var(--fig-line-soft);
}
.console-topline strong {
  color: var(--fig-text);
}
.console-topline span,
.console-field label,
.premium-route-card span,
.result-hint,
.batch-sub {
  color: var(--fig-muted);
}
.console-reset {
  background: var(--fig-soft);
  border-color: var(--fig-line-soft);
  color: var(--fig-muted);
}
.console-reset:hover {
  color: var(--fig-green-link);
  border-color: #BFD8C5;
  background: var(--fig-green-soft);
}
.premium-input,
.inp {
  background: #FFFFFF;
  border-color: var(--fig-line);
  color: var(--fig-text);
}
.premium-input:focus,
.inp:focus,
.layui-input:focus,
.layui-textarea:focus {
  border-color: var(--fig-green) !important;
  box-shadow: 0 0 0 4px rgba(23, 138, 47, .10);
}
.premium-search-btn,
.btn-primary {
  background: var(--fig-orange);
  color: #FFFFFF;
  box-shadow: 0 10px 22px rgba(242, 140, 24, .18);
}
.premium-search-btn:hover,
.btn-primary:hover {
  background: var(--fig-orange-hover);
  color: #FFFFFF;
}

.premium-route-card {
  color: var(--fig-text);
}
.premium-route-card:hover {
  border-color: #CFCFCF;
  box-shadow: var(--premium-shadow);
}
.premium-route-card > i {
  background: var(--fig-green-soft);
  color: var(--fig-green);
}
.premium-route-card:nth-child(2) > i {
  background: var(--fig-amber-soft);
  color: var(--fig-orange);
}
.premium-route-card:nth-child(3) > i {
  background: var(--fig-red-soft);
  color: var(--fig-red);
}
.premium-route-card:nth-child(4) > i {
  background: #EAF0F3;
  color: var(--fig-bluegray);
}
.premium-route-card strong,
.result-meta em,
.catalog-list-title span {
  color: var(--fig-text);
}

.result-toolbar,
.catalog-list-title {
  background: #FFFFFF;
  border-bottom-color: var(--fig-line-soft);
}
.result-meta strong {
  color: var(--fig-green);
}
.premium-result-card .ss-table th,
.ss-table th {
  background: var(--fig-soft);
  color: #555555;
}
.premium-result-card .ss-table td,
.ss-table td {
  border-bottom-color: var(--fig-line-soft);
}
.ss-table tbody tr:hover td {
  background: #FBFCFA;
}
.std-no-link,
.catalog-table .catalog-name,
.detail-stdno {
  color: var(--fig-green-link) !important;
}

.badge-valid {
  background: var(--fig-green-soft);
  color: var(--fig-green);
}
.badge-obsolete {
  background: var(--fig-red-soft);
  color: var(--fig-red);
}
.badge-soon {
  background: var(--fig-amber-soft);
  color: #A56500;
}
.badge-blue {
  background: #EAF0F3;
  color: #5D7280;
}
.type-1 {
  background: #EAF0F3;
  color: #5D7280;
}
.type-2 {
  background: var(--fig-green-soft);
  color: var(--fig-green);
}
.type-3 {
  background: var(--fig-amber-soft);
  color: #A56500;
}
.type-4 {
  background: #F1F1F1;
  color: #555555;
}

.batch-head,
.catalog-head,
.catalog-detail-head {
  color: var(--fig-text);
  background: #FFFFFF;
  border-bottom: 1px solid var(--fig-line-soft);
}
.batch-head .ss-eyebrow,
.catalog-head .ss-eyebrow,
.catalog-detail-head .ss-eyebrow {
  color: var(--fig-red);
}
.batch-head .batch-title,
.catalog-head .batch-title,
.catalog-detail-head .batch-title,
.batch-head .ss-page-title,
.catalog-head .ss-page-title,
.catalog-detail-head .ss-page-title {
  color: var(--fig-text);
}
.batch-head .batch-sub,
.catalog-head .batch-sub,
.catalog-detail-head .batch-sub {
  color: var(--fig-muted);
}
.batch-head .btn,
.catalog-head .btn,
.catalog-detail-head .btn,
.btn-ghost {
  background: #FFFFFF;
  color: var(--fig-green-link);
  border-color: var(--fig-line);
}
.batch-head .btn:hover,
.catalog-head .btn:hover,
.catalog-detail-head .btn:hover,
.btn-ghost:hover {
  color: var(--fig-green-link);
  background: var(--fig-green-soft);
  border-color: #BFD8C5;
}
.batch-panel-title i {
  color: var(--fig-green);
}
.batch-tip {
  background: var(--fig-green-soft);
  border-color: #CFE6D4;
  color: #286C39;
}
.batch-record-active td {
  background: var(--fig-green-soft) !important;
}
.catalog-list-title strong {
  background: var(--fig-orange);
}

.alert-info {
  background: #EAF0F3;
  border-color: #C8D6DD;
  color: #4F6572;
}
.alert-success {
  background: var(--fig-green-soft);
  border-color: #CFE6D4;
  color: var(--fig-green);
}
.alert-warning {
  background: var(--fig-amber-soft);
  border-color: #F4D59A;
  color: #9B6200;
}
.alert-error,
.alert-danger {
  background: var(--fig-red-soft);
  border-color: #F0C6C6;
  color: var(--fig-red);
}
.btn-danger {
  color: var(--fig-red);
  border-color: #F0C6C6;
}
.btn-danger:hover {
  background: var(--fig-red-soft);
}

.ss-pager .cur {
  background: var(--fig-orange);
  border-color: var(--fig-orange);
}
.ss-pager a:hover {
  border-color: var(--fig-green);
  color: var(--fig-green-link);
  background: var(--fig-green-soft);
}

.detail-header {
  background: #FFFFFF;
  border-color: var(--fig-line-soft);
  border-left-color: var(--fig-orange);
}
.detail-meta-item {
  background: var(--fig-soft);
  border-color: var(--fig-line-soft);
}
.tl-circle.current {
  background: var(--fig-orange);
  box-shadow: 0 10px 20px rgba(242, 140, 24, .18);
}
.tl-circle.active {
  background: var(--fig-green-soft);
  border-color: #BFD8C5;
  color: var(--fig-green);
}
.tl-circle.obsolete {
  background: var(--fig-red-soft);
  border-color: #F0C6C6;
  color: var(--fig-red);
}

@media (max-width: 768px) {
  .ss-header,
  .hinner,
  .ss-logo {
    height: 64px;
    line-height: 64px;
  }
  .mobile-nav {
    top: 64px;
  }
  .premium-hero {
    background: #FFFFFF;
  }
}

/* About page visual revision: lighter editorial layout. */
.about-page-v2{width:auto;margin:-16px -24px 0;background:#fff}
.about-hero-v2{grid-template-columns:minmax(0,1fr) minmax(420px,.85fr);gap:58px;padding-top:68px;padding-bottom:68px;background:#fff}
.about-hero-copy h1{font-size:50px}.about-hero-copy>p{max-width:680px;color:#5b6964}
.about-hero-visual{position:relative;height:430px;margin:0;overflow:hidden;background:#e8efeb}
.about-hero-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:62% center}
.about-hero-visual figcaption{position:absolute;right:0;bottom:0;left:0;padding:22px 24px;background:rgba(255,255,255,.94);border-top:3px solid var(--portal-green)}
.about-hero-visual span,.about-hero-visual strong,.about-hero-visual small{display:block}.about-hero-visual span{color:var(--portal-green);font-size:11px;font-weight:800}.about-hero-visual strong{margin:6px 0;font-size:19px}.about-hero-visual small{color:var(--portal-muted)}
.about-intro-v2{padding-top:88px;padding-bottom:88px}.about-intro-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.about-capability-v2{background:#f7f9f8}.about-capability-grid>a{background:#fff}
.about-method-v2{grid-template-columns:410px minmax(0,1fr);gap:95px;background:#eef3f0;color:var(--portal-ink);border-top:1px solid #dce6e1;border-bottom:1px solid #dce6e1}
.about-method-copy h2{color:var(--portal-ink)}.about-method-copy p{color:var(--portal-muted)}.about-method-copy>a{display:inline-block;margin-top:16px;color:var(--portal-green);font-weight:700;text-decoration:none}
.about-method-v2 ol{display:block;border:0;border-top:1px solid #bfcfc7}
.about-method-v2 li{position:relative;grid-template-columns:56px 1fr;min-height:0;padding:22px 0;border:0;border-bottom:1px solid #bfcfc7}
.about-method-v2 li:before{content:"";position:absolute;top:30px;left:-5px;width:9px;height:9px;border-radius:50%;background:var(--portal-green)}
.about-method-v2 em{padding-left:18px;color:var(--portal-green)}.about-method-v2 strong{color:var(--portal-ink);font-size:18px}.about-method-v2 li p{color:var(--portal-muted)}
.about-audience-v2{background:#fff}
@media(max-width:980px){.about-page-v2{margin-left:-24px;margin-right:-24px}.about-hero-v2{grid-template-columns:1fr;gap:30px}.about-hero-visual{height:380px}.about-method-v2{grid-template-columns:1fr;gap:35px}}
@media(max-width:680px){.about-page-v2{margin-left:-16px;margin-right:-16px}.about-hero-v2{padding:44px 16px}.about-hero-copy h1{font-size:35px}.about-hero-visual{height:330px}.about-intro-v2{padding-top:54px;padding-bottom:54px}.about-method-v2{padding:54px 16px}.about-method-v2 li{grid-template-columns:48px 1fr}}
