@charset "UTF-8";
/* ---- site.css ---- */
@font-face{font-family:"GD Serif";src:url("assets/fonts/NotoSerifSC-Bold-subset.woff2") format("woff2");font-weight:600 900;font-display:swap}:root{--ink:#0F2A25;--p:#1E5A4C;--ph:#164638;--ps:#E8F0EC;--pl:#C9DCD4;
  --bg:#F5F6F3;--sf:#FFFFFF;--ln:#E2E6E1;--ln2:#D2D9D4;
  --tx:#17201C;--t2:#46524D;--mu:#5F6B65;
  --ok:#1F7A4D;--oks:#E5F3EB;--wa:#8A5208;--was:#FBF1E2;--da:#B3261E;--das:#FBEAE8;--in:#2C5D8F;--ins:#E8EFF7;
  --sans:"PingFang SC","Microsoft YaHei","Noto Sans SC","Hiragino Sans GB",system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:"GD Serif","Noto Serif SC","Source Han Serif SC","Songti SC",serif;
  --mono:"JetBrains Mono","SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  --r:8px;--r-lg:12px;--shadow:0 8px 28px rgba(16,32,28,.08);--shadow-lg:0 18px 48px rgba(16,32,28,.16);
  /* legacy aliases used by older page styles */
  --green:var(--p);--line:var(--ln);--paper:var(--bg);--muted:var(--mu);--mint:var(--pl)}
*,*::before,*::after{box-sizing:border-box}
html{font-size:112.5%;scroll-behavior:smooth;scroll-padding-top:88px;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:15px;line-height:1.65;color:var(--tx);background:var(--bg);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none}
h1,h2,h3,h4{margin:0;line-height:1.3}
p{margin:0}
:focus-visible{outline:2px solid var(--p);outline-offset:2px}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.serif{font-family:var(--serif)}
.mono{font-family:var(--mono)}
.icon,.ui-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;display:inline-block;vertical-align:middle}
.container{width:100%;max-width:1328px;margin:0 auto;padding:0 24px}
.page-shell{padding-top:24px;padding-bottom:88px}
.page-kicker,.eyebrow,.cap{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mu)}
.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:6px;border:1px solid var(--ln2);background:var(--sf);color:var(--tx);font-size:14px;font-weight:500;line-height:1.2;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,color .15s;text-decoration:none}
.ui-btn:hover{border-color:var(--p);color:var(--p)}
.ui-btn .ui-icon{width:16px;height:16px}
.ui-btn.primary{background:var(--p);border-color:var(--p);color:#fff}
.ui-btn.primary:hover{background:var(--ph);border-color:var(--ph);color:#fff}
.ui-btn.secondary{background:var(--sf)}
.ui-btn.ghost{background:transparent;border-color:transparent;color:var(--t2)}
.ui-btn.ghost:hover{color:var(--p);background:var(--ps)}
.ui-btn.danger{color:var(--da)}
.ui-btn.danger:hover{border-color:var(--da)}
.ui-btn.small{min-height:34px;padding:0 12px;font-size:13px}
.ui-btn.large{min-height:50px;padding:0 26px;font-size:15px}
.ui-btn:disabled,.ui-btn[aria-disabled="true"]{opacity:.5;cursor:not-allowed;pointer-events:none}
.ui-btn-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.text-link{display:inline-flex;align-items:center;gap:6px;color:var(--p);font-weight:500}
.text-link:hover{color:var(--ph)}
.ui-input,.ui-select,.ui-textarea{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--ln2);border-radius:6px;background:var(--sf);color:var(--tx);font-size:14px;transition:border-color .15s,box-shadow .15s}
.ui-textarea{padding:10px 12px;line-height:1.7;resize:vertical}
.ui-input:focus,.ui-select:focus,.ui-textarea:focus{outline:none;border-color:var(--p);box-shadow:0 0 0 3px var(--ps)}
.ui-input[aria-invalid="true"],.ui-select[aria-invalid="true"],.ui-textarea[aria-invalid="true"]{border-color:var(--da);box-shadow:0 0 0 3px var(--das)}
.ui-label{display:block;font-size:13px;color:var(--t2);margin:14px 0 6px}
input[type=checkbox],input[type=radio]{accent-color:var(--p)}
.ui-panel{background:var(--sf);border:1px solid var(--ln);border-radius:var(--r-lg);padding:24px}
.ui-tag{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border-radius:4px;background:var(--ps);color:var(--p);font-size:12px;font-weight:500;white-space:nowrap}
.ui-tag.amber{background:var(--was);color:var(--wa)}
.ui-tag.green{background:var(--ps);color:var(--p)}
.ui-tag.muted{background:var(--bg);color:var(--mu)}
.ui-tag.danger{background:var(--das);color:var(--da)}
.ui-tag.info{background:var(--ins);color:var(--in)}
.ui-pills{display:flex;flex-wrap:wrap;gap:6px}
.ui-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.ui-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px}
.ui-split{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;align-items:start}
.ui-muted{color:var(--mu)}
.ui-table-wrap{overflow-x:auto;border:1px solid var(--ln);border-radius:var(--r)}
.ui-table{width:100%;border-collapse:collapse;font-size:14px}
.ui-table th,.ui-table td{padding:12px 16px;border-bottom:1px solid var(--ln);text-align:left;vertical-align:top}
.ui-table tr:last-child td{border-bottom:0}
.ui-table th{background:var(--bg);font-weight:500;color:var(--mu);font-size:13px}
.ui-table td:first-child{color:var(--mu);width:180px;background:#FAFBF9}
.ui-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:56px 24px;background:var(--sf);border:1px dashed var(--ln2);border-radius:var(--r-lg)}
.ui-empty h2{font-size:18px}
.ui-empty p{color:var(--t2);max-width:440px}
.ui-empty-icon{width:48px;height:48px;border-radius:50%;background:var(--ps);color:var(--p);display:inline-flex;align-items:center;justify-content:center}
.ui-empty .ui-btn{margin-top:6px}
.live-notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--r);background:var(--ins);color:var(--in);font-size:13px;line-height:1.6;margin-top:14px}
.ui-toast{position:fixed;left:50%;bottom:28px;z-index:200;transform:translate(-50%,20px);max-width:min(560px,calc(100vw - 32px));padding:12px 18px;border-radius:8px;background:var(--ink);color:#fff;font-size:14px;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
.ui-toast.visible{opacity:1;transform:translate(-50%,0)}
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:13px;color:var(--mu);margin-bottom:16px}
.breadcrumbs a{color:var(--mu)}
.breadcrumbs a:hover{color:var(--p)}
.breadcrumbs .ui-icon{width:14px;height:14px;opacity:.6}
.breadcrumbs [aria-current]{color:var(--tx)}
.page-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px}
.page-heading h1{font-family:var(--serif);font-size:34px;font-weight:700;margin-top:6px;letter-spacing:.01em}
.page-heading p{margin-top:8px;color:var(--t2);max-width:720px}
.page-heading>div:last-child:not(:first-child){display:flex;gap:10px;flex-wrap:wrap}
.live-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--ln);margin-bottom:24px}
.live-tabs a{padding:10px 12px;margin-bottom:-1px;border-bottom:2px solid transparent;color:var(--t2);font-size:14px}
.live-tabs a:hover{color:var(--tx)}
.live-tabs a[aria-current],.live-tabs a.active{color:var(--tx);font-weight:700;border-bottom-color:var(--p)}
.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--ln)}
.header-inner{display:flex;align-items:center;gap:28px;min-height:68px}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;color:var(--tx)}
.brand-mark{width:34px;height:34px}
.brand-mark svg{width:100%;height:100%}
.brand-type{display:flex;flex-direction:column;line-height:1.25}
.brand-type strong{font-size:16px;font-weight:700;letter-spacing:.02em}
.brand-type>span{font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--mu)}
.main-nav{display:flex;align-items:stretch;align-self:stretch;flex:1}
.main-nav>a{display:inline-flex;align-items:center;padding:0 14px;color:var(--t2);font-size:15px;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.main-nav>a:hover{color:var(--tx)}
.main-nav>a.active{color:var(--tx);font-weight:700;border-bottom-color:var(--p)}
.main-nav .mobile-workspace{display:none}
.header-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.header-cart,.notification-entry{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border-radius:6px;color:var(--t2);font-size:14px;white-space:nowrap}
.header-cart:hover,.notification-entry:hover{background:var(--bg);color:var(--tx)}
.header-cart .count,.notification-entry .count{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--ps);color:var(--p);font-family:var(--mono);font-size:12px;display:inline-flex;align-items:center;justify-content:center}
.header-cart .count[data-empty]{background:var(--bg);color:var(--mu)}
.notification-entry .count{background:var(--das);color:var(--da)}
.header-workspace{margin-left:4px}
.nav-toggle{display:none;min-height:40px;padding:0 12px;border:1px solid var(--ln2);border-radius:6px;background:var(--sf);color:var(--tx);font-size:14px}
.site-footer{margin-top:0;background:var(--sf);border-top:1px solid var(--ln)}
.footer-main{display:flex;flex-wrap:wrap;justify-content:space-between;gap:40px;padding:56px 0 36px}
.footer-about{max-width:360px;display:flex;flex-direction:column;gap:12px}
.footer-tagline{color:var(--t2);font-size:14px}
.footer-cols{display:flex;flex-wrap:wrap;gap:64px}
.footer-col{display:flex;flex-direction:column;gap:10px;font-size:14px}
.footer-col strong{font-size:14px;color:var(--tx)}
.footer-col a{color:var(--t2)}
.footer-col a:hover{color:var(--p)}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:18px 0 28px;border-top:1px solid var(--ln);font-size:13px;color:var(--mu)}
.footer-beian{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 20px;margin-top:-12px;padding:0 0 24px;font-size:12.5px}
.footer-beian[hidden]{display:none}
.footer-beian a{color:var(--mu)}
.footer-beian a:hover{color:var(--p);text-decoration:underline}
.hero{position:relative;min-height:600px;display:flex;align-items:center;background:#0C1916;color:#fff;overflow:hidden}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92}
.hero-scrim{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(8,20,18,.78) 0%,rgba(8,20,18,.62) 55%,rgba(8,20,18,.42) 100%)}
.hero-inner{position:relative;padding-top:96px;padding-bottom:88px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:26px}
.hero-kicker{display:flex;align-items:center;gap:12px;font-size:14px;letter-spacing:.12em;color:rgba(255,255,255,.86)}
.hero-kicker b{padding:3px 10px;border-radius:999px;background:#BFE3D2;color:var(--ink);font-weight:700;letter-spacing:.08em}
.hero-kicker::before,.hero-kicker::after{content:"";width:28px;height:1px;background:rgba(255,255,255,.6)}
.hero-title{font-family:var(--serif);font-size:52px;line-height:1.22;font-weight:700;color:#fff;max-width:900px;letter-spacing:.01em}
.hero-title em{font-style:normal;color:#BFE3D2}
.hero-description{font-size:17px;line-height:1.8;color:rgba(255,255,255,.84);max-width:620px;white-space:pre-line}
.hero-search{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:780px}
.hero-search .search-box{width:100%;text-align:left}
.search-box{display:flex;align-items:center;gap:12px;background:#fff;border-radius:8px;padding:6px 6px 6px 18px;box-shadow:0 14px 40px rgba(0,0,0,.28)}
.search-box .ui-icon,.search-box .icon{color:var(--mu);width:20px;height:20px}
.search-box input{flex:1;min-width:0;height:50px;border:0;outline:none;background:transparent;color:var(--tx);font-size:16px}
.search-box button{display:inline-flex;align-items:center;gap:8px;height:50px;padding:0 26px;border:0;border-radius:6px;background:var(--p);color:#fff;font-size:15px;font-weight:500}
.search-box button:hover{background:var(--ph)}

.hero-service-note{font-size:14px;color:rgba(255,255,255,.7);max-width:620px;white-space:pre-line}
.hero-credit{position:absolute;right:24px;bottom:18px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:rgba(255,255,255,.58)}
.home-section{padding-top:80px}
.home-section:last-of-type{padding-bottom:96px}
.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px}
.section-head h2{font-family:var(--serif);font-size:32px;font-weight:700;margin-top:6px}
.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.theme-card{display:flex;flex-direction:column;background:var(--sf);border:1px solid var(--ln);border-radius:10px;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.theme-card:hover{border-color:var(--pl);box-shadow:var(--shadow)}
.theme-card img{width:100%;height:112px;object-fit:cover}
.theme-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:4px}
.theme-card-body div{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.theme-card strong{font-size:16px}
.theme-card .n{font-family:var(--mono);font-size:12px;color:var(--mu)}
.theme-card-body>span{font-size:13px;color:var(--t2)}
.theme-card.all{justify-content:center;align-items:flex-start;padding:22px;background:var(--ps);border-color:var(--pl)}
.theme-card.all strong{color:var(--p)}

.cta-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px;padding:48px 56px;border-radius:var(--r-lg);background:var(--ink);color:#fff}
.cta-band h2{font-family:var(--serif);font-size:30px;color:#fff;margin-top:8px}
.cta-band p{color:rgba(255,255,255,.78);margin-top:8px;max-width:620px}
.cta-band .eyebrow{color:rgba(255,255,255,.6)}
.cta-band .ui-btn{border-color:rgba(255,255,255,.4);background:transparent;color:#fff}
.cta-band .ui-btn:hover{background:rgba(255,255,255,.08)}
.cta-band .ui-btn.primary{background:#fff;border-color:#fff;color:var(--ink)}
.browse-all{display:flex;align-items:center;gap:18px;margin-top:22px;padding:22px 26px;border-radius:var(--r-lg);background:var(--p);color:#fff;box-shadow:var(--shadow);transition:background .15s,transform .15s}
.browse-all:hover{background:var(--ph);transform:translateY(-1px)}
.browse-all-icon{width:48px;height:48px;border-radius:10px;background:rgba(255,255,255,.14);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.browse-all-icon .ui-icon{width:22px;height:22px}
.browse-all-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.browse-all-text strong{font-size:18px}
.browse-all-text small{font-size:13px;color:rgba(255,255,255,.78)}
.browse-all-arrow{font-size:24px}
.cat-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:26px 32px;border-radius:var(--r-lg);background:var(--ink);color:#fff}
.cat-cta h2{font-family:var(--serif);font-size:24px;color:#fff;margin-top:4px}
.cat-hero .cat-cta p{color:rgba(255,255,255,.78);margin-top:6px;font-size:14px;max-width:640px}
.cat-cta .eyebrow{color:rgba(255,255,255,.6)}
.cat-cta .ui-btn{border-color:rgba(255,255,255,.4);background:transparent;color:#fff}
.cat-cta .ui-btn:hover{background:rgba(255,255,255,.08);color:#fff}
.cat-cta .ui-btn.primary{background:#fff;border-color:#fff;color:var(--ink)}
.ds-card{position:relative;display:flex;flex-direction:column;background:var(--sf);border:1px solid var(--ln);border-radius:10px;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.ds-card:hover{border-color:var(--pl);box-shadow:var(--shadow)}
.ds-card-media{position:relative;display:block;aspect-ratio:16/10;background:var(--ps);overflow:hidden}
.ds-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.ds-card:hover .ds-card-media img{transform:scale(1.03)}
.ds-kinds{position:absolute;left:12px;top:12px;display:flex;gap:4px}
.ds-kinds span{height:22px;padding:0 8px;border-radius:4px;background:rgba(255,255,255,.94);color:var(--p);font-size:12px;font-weight:500;display:inline-flex;align-items:center}
.ds-demo{position:absolute;right:12px;top:12px;height:22px;padding:0 8px;border-radius:4px;background:var(--was);color:var(--wa);font-size:12px;font-weight:500;display:inline-flex;align-items:center}
.ds-card-body{flex:1;display:flex;flex-direction:column;gap:8px;padding:18px 20px 18px}
.ds-card-cat{font-size:12px;letter-spacing:.06em;color:var(--mu)}
.ds-card h3{font-size:17px;line-height:1.45;font-weight:700}
.ds-card h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.ds-card h3 a:focus-visible{outline:none}
.ds-card:focus-within{outline:2px solid var(--p);outline-offset:2px}
.ds-card-meta{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1.05fr);gap:8px;margin:6px 0 0;padding-top:12px;border-top:1px solid var(--ln);font-family:var(--mono);font-size:12px}
.ds-card-meta dt{color:var(--mu)}
.ds-card-meta dd{margin:0;color:var(--tx);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ds-card-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:8px;font-size:12px;color:var(--t2)}
.ds-access{display:inline-flex;align-items:center;gap:6px}
.ds-access::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--mu)}
.ds-access.is-online::before{background:var(--ok)}
.ds-access.is-manual::before{background:var(--wa)}
.ds-access.is-demo::before{background:var(--wa)}
.cat-hero{background:var(--sf);border-bottom:1px solid var(--ln)}
.cat-hero-inner{padding-top:28px;padding-bottom:28px;display:flex;flex-direction:column;gap:14px}
.cat-hero h1{font-family:var(--serif);font-size:34px}
.cat-hero p{color:var(--t2)}
.cat-search{display:flex;gap:10px;max-width:880px;flex-wrap:wrap}
.cat-search-field{flex:1 1 380px;display:flex;align-items:center;gap:10px;height:50px;padding:0 14px;border:1px solid var(--ln2);border-radius:8px;background:var(--sf)}
.cat-search-field:focus-within{border-color:var(--p);box-shadow:0 0 0 3px var(--ps)}
.cat-search-field .ui-icon{color:var(--mu)}
.cat-search-field input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-size:15px}
.cat-search .ui-btn{min-height:50px;padding:0 26px}
.cat-layout{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start;padding-top:28px;padding-bottom:88px}
.cat-filters{flex:1 1 240px;max-width:280px;display:flex;flex-direction:column;gap:22px;padding:20px;background:var(--sf);border:1px solid var(--ln);border-radius:var(--r-lg);position:sticky;top:88px}
.cat-filters-details>summary{list-style:none;cursor:pointer}
.cat-filters-details>summary::-webkit-details-marker{display:none}
.cat-filters-body{display:flex;flex-direction:column;gap:22px;margin-top:18px}
.cat-filters-head{display:flex;justify-content:space-between;align-items:center}
.cat-filters-head strong{font-size:15px}
.cat-filters-head a{font-size:13px;color:var(--p)}
.cat-facet{display:flex;flex-direction:column;gap:2px}
.cat-facet>.cap{margin-bottom:6px}
.cat-facet a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:0 10px;border-radius:6px;color:var(--t2);font-size:14px}
.cat-facet a:hover{background:var(--bg);color:var(--tx)}
.cat-facet a[aria-current]{background:var(--ps);color:var(--p);font-weight:700}
.cat-facet a .n{font-family:var(--mono);font-size:12px;color:var(--mu)}
.cat-facet a[aria-current] .n{color:var(--p)}
.cat-main{flex:999 1 640px;min-width:0;display:flex;flex-direction:column;gap:16px}
.cat-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}
.cat-count{display:flex;align-items:baseline;gap:8px}
.cat-count strong{font-size:16px}
.cat-count .n{font-family:var(--mono);font-size:20px;color:var(--p)}
.cat-count small{color:var(--mu);font-size:13px}
.cat-tools{display:flex;align-items:center;gap:10px}
.cat-tools label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mu)}
.cat-tools .ui-select{width:140px;min-height:36px}
.view-toggle{display:inline-flex}
.view-toggle a{width:40px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ln2);background:var(--sf);color:var(--mu)}
.view-toggle a:first-child{border-radius:6px 0 0 6px}
.view-toggle a:last-child{border-radius:0 6px 6px 0;margin-left:-1px}
.view-toggle a[aria-current]{background:var(--ps);border-color:var(--pl);color:var(--p);position:relative}
.cat-active{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--mu)}
.cat-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:15px;background:var(--sf);border:1px solid var(--ln2);color:var(--tx);font-size:13px}
.cat-chip:hover{border-color:var(--p);color:var(--p)}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.cat-list{display:flex;flex-direction:column;gap:12px}
.cat-row{display:flex;flex-wrap:wrap;gap:20px;padding:18px;background:var(--sf);border:1px solid var(--ln);border-radius:10px}
.cat-row:hover{border-color:var(--pl)}
.cat-row>img{width:200px;height:125px;object-fit:cover;border-radius:6px;flex:0 0 auto}
.cat-row-body{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:6px}
.cat-row-body h3{font-size:17px}
.cat-row-body h3 a:hover{color:var(--p)}
.cat-row-body p{font-size:13px;color:var(--t2)}
.cat-row-meta{display:flex;flex-wrap:wrap;gap:4px 22px;margin:4px 0 0;font-family:var(--mono);font-size:12px}
.cat-row-meta div{display:flex;gap:6px}
.cat-row-meta dt{color:var(--mu)}
.cat-row-meta dd{margin:0}
.cat-row-actions{flex:0 0 180px;display:flex;flex-direction:column;gap:8px;justify-content:center}
.cat-pagination{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;font-size:13px;color:var(--mu)}
.cat-pagination div{display:flex;gap:6px}
.cat-pagination a{min-width:36px;height:36px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ln2);border-radius:6px;background:var(--sf);color:var(--tx)}
.cat-pagination a.active{background:var(--p);border-color:var(--p);color:#fff}
.cat-page-gap{min-width:20px;height:36px;display:inline-flex;align-items:center;justify-content:center;color:var(--mu)}
.dt-top{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start}
.dt-gallery{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:12px}
.dt-stage{position:relative;aspect-ratio:16/10;background:var(--ps);border:1px solid var(--ln);border-radius:var(--r-lg);overflow:hidden}
.dt-stage img{width:100%;height:100%;object-fit:cover}
.dt-stage-cap{position:absolute;left:12px;bottom:12px;padding:3px 8px;border-radius:4px;background:rgba(12,25,22,.72);color:#fff;font-family:var(--mono);font-size:11px}
.dt-stage .ui-btn{position:absolute;right:12px;top:12px;background:rgba(255,255,255,.95)}
.dt-thumbs{display:flex;flex-wrap:wrap;gap:10px}
.dt-thumbs button{width:80px;height:54px;padding:0;border:2px solid transparent;border-radius:6px;overflow:hidden;background:none}
.dt-thumbs button[aria-pressed="true"]{border-color:var(--p)}
.dt-thumbs img{width:100%;height:100%;object-fit:cover}
.dt-buy{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:18px}
.dt-buy h1{font-family:var(--serif);font-size:30px;line-height:1.35}
.dt-lead{color:var(--t2);font-size:15px;margin-top:8px}
.dt-chips{display:flex;flex-wrap:wrap;gap:6px}
.dt-chip{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:6px;background:var(--bg);border:1px solid var(--ln);font-family:var(--mono);font-size:14px;font-weight:500;color:var(--tx);white-space:nowrap}
.dt-chip.is-format{background:var(--ps);border-color:var(--pl);color:var(--p)}
.dt-spec-value{font-family:var(--mono);font-size:20px;font-weight:500;color:var(--tx);line-height:1.3}
.dt-spec-note{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ok)}
.dt-spec-note::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok)}
.dt-freqs{display:flex;flex-wrap:wrap;gap:6px}
.dt-badge{display:inline-flex;align-items:center;min-height:24px;padding:2px 10px;border-radius:12px;white-space:nowrap;background:var(--p);color:#fff;font-size:12px;font-weight:500;width:fit-content}
.dt-box{background:var(--sf);border:1px solid var(--ln);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column;gap:18px}

.dt-social{display:flex;align-items:center;gap:8px;margin:-6px 0 0;font-size:13px;color:var(--t2)}
.dt-social .ui-icon{width:16px;height:16px;color:var(--p)}
.dt-social b{font-family:var(--mono);color:var(--tx);font-weight:600}

.dt-help{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;background:var(--bg);border:1px dashed var(--ln2)}
.dt-help-icon{width:36px;height:36px;border-radius:50%;background:var(--ps);color:var(--p);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.dt-help-text{flex:1;display:flex;flex-direction:column;font-size:14px;line-height:1.5}
.dt-help-text small{font-size:12px;color:var(--mu)}
.dt-help button{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;min-height:36px;padding:0 14px;border-radius:6px;border:1px solid var(--p);background:var(--sf);color:var(--p);font-size:13px;font-weight:500}
.dt-help button:hover{background:var(--p);color:#fff}

.dt-price{font-family:var(--mono);font-size:32px;font-weight:500;color:var(--tx);line-height:1.2}
.dt-price small{font-family:var(--sans);font-size:13px;color:var(--mu);font-weight:400}

.dt-actions{display:flex;flex-wrap:wrap;gap:10px}
.dt-actions .ui-btn{flex:1 1 160px;min-height:48px}
.dt-assure{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--mu)}
.dt-demo-note{padding:10px 14px;border-radius:8px;background:var(--was);color:var(--wa);font-size:13px}
.dt-body{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start;margin-top:48px}
.dt-main{flex:999 1 640px;min-width:0;background:var(--sf);border:1px solid var(--ln);border-radius:var(--r-lg)}
.dt-tabs{display:flex;flex-wrap:wrap;padding:0 24px;border-bottom:1px solid var(--ln)}
.dt-tabs a{height:54px;display:inline-flex;align-items:center;margin-right:28px;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--t2);font-size:15px}
.dt-tabs a:hover{color:var(--tx)}
.dt-tabs a.active{color:var(--tx);font-weight:700;border-bottom-color:var(--p)}
.dt-content{padding:28px 28px 32px}
.dt-content h2{font-family:var(--serif);font-size:22px;margin-bottom:14px}
.dt-content h3{font-size:16px}
.dt-side{flex:1 1 280px;display:flex;flex-direction:column;gap:16px}
.dt-side-box{background:var(--sf);border:1px solid var(--ln);border-radius:var(--r-lg);padding:20px;display:flex;flex-direction:column;gap:12px}
.dt-intro{display:flex;flex-direction:column;gap:22px}
.scientific-metadata{display:flex;flex-direction:column;gap:14px}
.scientific-note{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:var(--r);background:var(--was);color:var(--wa);font-size:13px}

.data-license{margin-top:8px}
.data-license-heading{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.data-license-heading span{width:4px;height:18px;border-radius:2px;background:var(--p)}
.data-license-title{font-size:17px!important;font-family:var(--sans)!important;margin:0!important}
.data-license-copy{display:flex;flex-direction:column;gap:10px;color:var(--t2)}
.data-offers{display:flex;flex-direction:column;gap:16px}
.data-access-heading h2{margin-bottom:4px}
.data-access-heading p{color:var(--t2)}
.data-access-heading .data-access-note{margin-top:10px;padding:10px 14px;border-left:3px solid var(--p);border-radius:6px;background:var(--ps);color:var(--tx);line-height:1.7}
.data-access-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:16px}
.data-sample-access{padding:18px;border:1px solid var(--ln);border-radius:var(--r);display:flex;flex-direction:column;gap:12px}
.data-sample-symbol{color:var(--p)}
.data-sample-row{display:flex;flex-direction:column;gap:10px}
.data-sample-row p{color:var(--t2);font-size:13px}
.data-offer-catalog{border:1px solid var(--ln);border-radius:var(--r);overflow:hidden}
.data-offer-list-heading{display:flex;justify-content:space-between;padding:10px 16px;background:var(--bg);font-size:13px;color:var(--mu)}
.data-offer-list{max-height:360px;overflow:auto}
.data-offer-list ul{list-style:none;margin:0;padding:0}
.data-offer-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--ln)}
.data-offer-info{display:flex;flex-direction:column}
.data-offer-info span{font-family:var(--mono);font-size:13px;color:var(--t2)}
.data-offer-link{display:inline-flex;align-items:center;gap:6px;color:var(--p);font-weight:500;font-size:13px}
.data-offer-empty{padding:24px;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--mu)}

.cart-layout{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.cart-items{flex:999 1 620px;min-width:0;background:var(--sf);border:1px solid var(--ln);border-radius:var(--r-lg);overflow:hidden}
.cart-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;background:var(--bg);border-bottom:1px solid var(--ln);font-size:13px;color:var(--mu)}
.cart-head label{display:flex;align-items:center;gap:8px;color:var(--t2)}
.cart-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--ln)}
.cart-row:last-child{border-bottom:0}
.cart-row input[type=checkbox]{width:18px;height:18px}
.cart-row img{width:120px;height:76px;object-fit:cover;border-radius:6px}
.cart-row-body{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:4px}
.cart-row-body a{font-weight:700}
.cart-row-body a:hover{color:var(--p)}
.cart-row-body small{color:var(--mu);font-size:13px}
.cart-row-price{flex:0 0 130px;text-align:right;font-family:var(--mono)}
.cart-row-price small{display:block;font-family:var(--sans);font-size:12px;color:var(--mu)}
.cart-row-actions{flex:0 0 auto;display:flex;gap:6px}
.cart-summary{flex:1 1 300px;max-width:380px;position:sticky;top:88px;background:var(--sf);border:1px solid var(--ln);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column;gap:14px}
.cart-summary dl{margin:0;display:flex;flex-direction:column;gap:8px;font-size:14px}
.cart-summary dl div{display:flex;justify-content:space-between}
.cart-summary dt{color:var(--mu)}
.cart-summary dd{margin:0;font-family:var(--mono)}
.cart-summary p{font-size:13px;color:var(--mu)}
.support-fab{position:fixed;right:24px;bottom:24px;z-index:60;display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border:0;border-radius:23px;background:var(--ink);color:#fff;font-size:14px;font-weight:500;box-shadow:var(--shadow-lg)}
.support-fab:hover{background:var(--p)}
.admin-mode .support-fab{display:none}

@media (max-width:1080px){.main-nav>a{padding:0 9px;font-size:14px}
.hero-title{font-size:44px}
}@media (max-width:860px){.container{padding:0 16px}
.header-inner{flex-wrap:wrap;gap:12px;min-height:60px}
.nav-toggle{display:inline-flex;align-items:center;order:3}
.header-actions{order:2}
.header-actions .header-workspace{display:none}
.main-nav{display:none;order:4;flex-basis:100%;flex-direction:column;padding-bottom:12px}
.main-nav.mobile-open{display:flex}
.main-nav>a{min-height:44px;border-bottom:0;padding:0 4px}
.main-nav>a.active{color:var(--p)}
.main-nav .mobile-workspace{display:inline-flex}
.hero{min-height:0}
.hero-inner{padding-top:56px;padding-bottom:64px}
.hero-title{font-size:34px}
.search-box button{padding:0 16px}
.section-head h2,.page-heading h1,.cat-hero h1{font-size:26px}

.cta-band{padding:32px 24px}
.cat-filters{max-width:none;position:static;flex-basis:100%;padding:14px 16px}
.cat-filters-head strong::after{content:" ▾";color:var(--mu);font-weight:400}
.support-fab{right:12px;bottom:12px;min-height:40px;padding:0 14px;font-size:13px}
.notification-entry{display:none}
.cat-row>img{width:100%;height:auto;aspect-ratio:16/10}
.cat-row-actions{flex-basis:100%}
.hero-kicker::before,.hero-kicker::after{width:16px}
.data-access-layout,.ui-split{grid-template-columns:1fr}
.cart-summary{max-width:none;position:static}
.ui-table td:first-child{width:auto}
}@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}
}.dt-stage{display:block;cursor:zoom-in;background:#fff}
.dt-stage img{object-fit:contain;transition:transform .3s}
.dt-stage:hover img{transform:scale(1.015)}
.dt-zoom-hint{position:absolute;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;background:rgba(12,25,22,.82);color:#fff;font-size:13px;font-weight:500;line-height:1.2;box-shadow:0 4px 14px rgba(0,0,0,.18);pointer-events:none;transition:background .15s}
.dt-zoom-hint .ui-icon{width:15px;height:15px}
.dt-stage .dt-zoom-hint{right:12px;top:12px}
.dt-stage:hover .dt-zoom-hint,.dt-figure-link:hover .dt-zoom-hint{background:var(--p)}
.dt-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px}
.dt-thumbs button{width:auto;height:auto;aspect-ratio:4/3;border:2px solid var(--ln);background:#fff}
.dt-thumbs button:hover{border-color:var(--pl)}
.dt-glance{margin-top:6px;background:var(--sf);border:1px solid var(--ln);border-radius:var(--r-lg);padding:18px 20px}
.dt-glance-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.dt-glance-head strong{font-size:15px}
.dt-glance-head button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 14px;border:1px solid var(--p);border-radius:6px;background:var(--ps);color:var(--p);font-size:13px;font-weight:600}
.dt-glance-head button:hover{background:var(--p);color:#fff}
.dt-glance-head .ui-icon{width:15px;height:15px}
.dt-glance dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;background:var(--ln);border:1px solid var(--ln);border-radius:8px;overflow:hidden}
.dt-glance dl>div{padding:12px 14px;background:var(--sf);min-width:0}
.dt-glance dt{font-size:12px;color:var(--mu)}
.dt-glance dd{margin:4px 0 0;font-size:14px;font-weight:600;color:var(--tx);overflow-wrap:anywhere}
.dt-figures{display:flex;flex-direction:column;gap:16px;scroll-margin-top:90px}
.dt-figures-head{display:flex;justify-content:space-between;align-items:center;gap:10px 16px;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--ln)}
.dt-figures-head h3{font-family:var(--serif);font-size:20px}
.dt-figures-head h3 small{margin-left:6px;font-family:var(--sans);font-size:13px;font-weight:400;color:var(--mu)}
.dt-figures-tip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--ps);color:var(--p);font-size:13px;font-weight:600}
.dt-figures-tip .ui-icon{width:15px;height:15px}
.dt-figures .image-copyright-notice{margin:0}
.dt-figure-list{display:flex;flex-direction:column;gap:28px}
.dt-figure{margin:0;display:flex;flex-direction:column;gap:10px}
.dt-figure-link{position:relative;display:block;border:1px solid var(--ln);border-radius:10px;overflow:hidden;background:#fff;cursor:zoom-in;transition:border-color .15s,box-shadow .15s}
.dt-figure-link:hover{border-color:var(--pl);box-shadow:var(--shadow)}
.dt-figure-link img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain;margin:0 auto}
.dt-figure-link .dt-zoom-hint{right:14px;bottom:14px}
.dt-figure figcaption{display:flex;gap:8px;align-items:baseline;font-size:13px;color:var(--t2)}
.dt-figure figcaption b{font-family:var(--mono);font-size:12px;color:var(--p)}
@media(max-width:640px){.dt-glance dl{grid-template-columns:repeat(2,minmax(0,1fr))}
.dt-figure-list{gap:20px}
.dt-zoom-hint{font-size:12px;padding:6px 10px}
}.dt-glance .dt-assure{margin-top:14px}
.dt-main{overflow:visible}
.dt-tabs{position:sticky;top:var(--dt-nav-top,64px);z-index:20;background:var(--sf);border-radius:var(--r-lg) var(--r-lg) 0 0}
.dt-content+.dt-content{border-top:1px solid var(--ln)}
.dt-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.dt-fav{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:38px;margin-top:2px;padding:0 14px;border:1px solid var(--ln2);border-radius:999px;background:var(--sf);color:var(--t2);font-size:14px;font-weight:500;transition:border-color .15s,color .15s,background .15s}
.dt-fav .ui-icon{width:17px;height:17px}
.dt-fav:hover{border-color:#d9534f;color:#c0392b}
.dt-fav[aria-pressed="true"]{border-color:#e7a6a1;background:#fdf1f0;color:#c0392b}
.dt-fav[aria-pressed="true"] .ui-icon{fill:currentColor}
.dt-glance dd{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:8px;font-weight:400}
.dt-glance-text{font-size:15px;font-weight:600;color:var(--tx)}
.dt-glance dl>div{padding:14px 16px}
@media(min-width:1041px){.dt-buy{position:sticky;top:85px}
}/* ---- admin.css ---- */
.admin-mode body{background:var(--bg)}
.admin-mode .site-header,.admin-mode .site-footer,.admin-mode .support-fab{display:none}
.adm{display:flex;min-height:100vh;align-items:stretch}
.adm-side{flex:0 0 232px;background:var(--ink);color:#fff;display:flex;flex-direction:column;padding:16px 12px;position:sticky;top:0;height:100vh;overflow:auto}
.adm-brand{display:flex;align-items:center;gap:10px;padding:6px 10px 18px;color:#fff}
.adm-brand svg{width:30px;height:30px}
.adm-brand span{display:flex;flex-direction:column;line-height:1.25}
.adm-brand strong{font-size:15px}
.adm-brand small{font-size:11px;color:rgba(255,255,255,.62)}
.adm-nav{display:flex;flex-direction:column;gap:2px}
.adm-nav-group{font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.5);padding:16px 12px 6px}
.adm-nav-item{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 12px;border-radius:6px;color:rgba(255,255,255,.76);font-size:14px}
.adm-nav-item .ui-icon{width:17px;height:17px;opacity:.85}
.adm-nav-item span:first-of-type{flex:1}
.adm-nav-item:hover{background:rgba(255,255,255,.07);color:#fff}
.adm-nav-item.is-active{background:rgba(255,255,255,.13);color:#fff;font-weight:700}
.adm-badge{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#E8B44C;color:#2A1C02;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.adm-side-foot{margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
.adm-side-foot a{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 12px;color:rgba(255,255,255,.7);font-size:13px;border-radius:6px}
.adm-side-foot a:hover{color:#fff;background:rgba(255,255,255,.07)}
.adm-main{flex:1;min-width:0;display:flex;flex-direction:column}
.adm-top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:16px;min-height:60px;padding:0 28px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--ln)}
.adm-menu{display:none;width:40px;height:40px;border:1px solid var(--ln2);border-radius:6px;background:var(--sf);align-items:center;justify-content:center}
.adm-search{flex:0 1 380px;display:flex;align-items:center;gap:8px;height:38px;padding:0 12px;background:var(--bg);border:1px solid transparent;border-radius:6px;color:var(--mu)}
.adm-search:focus-within{border-color:var(--p);background:var(--sf)}
.adm-search input{flex:1;min-width:0;border:0;background:transparent;outline:none;font-size:14px;color:var(--tx)}
.adm-top-right{margin-left:auto;display:flex;align-items:center;gap:4px;font-size:13px}
.adm-top-link{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border:0;border-radius:6px;background:none;color:var(--t2);font-size:13px}
.adm-top-link:hover{background:var(--bg);color:var(--tx)}
.adm-user{display:inline-flex;align-items:center;gap:8px;padding:0 8px;color:var(--tx)}
.adm-avatar{width:30px;height:30px;border-radius:50%;background:var(--ps);color:var(--p);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}
.adm-body{padding:24px 28px 96px;display:flex;flex-direction:column;gap:20px;max-width:1440px;width:100%}
.adm-body .container{max-width:none;padding:0}
.adm-body .page-shell{padding:0}

.adm-body .breadcrumbs{margin-bottom:6px}
.adm-body .page-heading{margin-bottom:20px}
.adm-body .page-heading h1{font-family:var(--sans);font-size:24px}

.adm-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px}
.adm-head h1{font-size:24px;font-weight:700}
.adm-head p{color:var(--mu);margin-top:4px;font-size:14px}
.adm-head-actions{display:flex;flex-wrap:wrap;gap:10px}
.adm-crumb{font-size:12px;color:var(--mu);margin-bottom:4px}
.adm-crumb a{color:var(--mu)}
.adm-crumb a:hover{color:var(--p)}
.adm-panel,.admin-panel{background:var(--sf);border:1px solid var(--ln);border-radius:10px}
.adm-panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:16px 20px 0}
.adm-panel-head h2,.adm-h2{font-size:16px;font-weight:700}
.adm-panel-head>span,.adm-panel-head>a{font-size:13px;color:var(--mu)}
.adm-panel-head>a{color:var(--p)}
.adm-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.adm-stack{display:flex;flex-direction:column;gap:12px}
.adm-cols{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch}
.adm-cols>*{flex:1 1 420px;min-width:0}
.adm-grow{flex:1}
.adm-sub{display:block;font-size:12px;color:var(--mu);font-weight:400}
.adm-link{border:0;background:none;padding:0;color:var(--p);font-size:13px;cursor:pointer}
.adm-link:hover{text-decoration:underline}
.adm-link-light{border:0;background:none;color:rgba(255,255,255,.85);font-size:13px;min-height:36px}
.adm-mini{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:4px;background:var(--bg);color:var(--t2);font-size:11px;font-weight:500;white-space:nowrap}
.adm-mini.is-wa{background:var(--was);color:var(--wa)}
.adm-mini.is-da{background:var(--das);color:var(--da)}
.adm-status{display:inline-flex;align-items:center;gap:6px;font-size:13px;white-space:nowrap}
.adm-status i{width:7px;height:7px;border-radius:50%;background:var(--mu)}
.adm-status.is-published i{background:var(--ok)}
.adm-status.is-draft i{background:var(--wa)}
.adm-status.is-trash i{background:var(--da)}
.adm-seg{display:inline-flex;border:1px solid var(--ln2);border-radius:6px;overflow:hidden;background:var(--sf)}
.adm-seg a{min-height:32px;padding:0 14px;display:inline-flex;align-items:center;font-size:13px;color:var(--t2);border-left:1px solid var(--ln)}
.adm-seg a:first-child{border-left:0}
.adm-seg a[aria-current]{background:var(--p);color:#fff}
.adm-meter{display:inline-block;width:72px;height:6px;border-radius:3px;background:var(--bg);overflow:hidden;vertical-align:middle}
.adm-meter>span{display:block;height:100%;border-radius:3px;background:var(--p)}
.adm-meter>span.is-mid{background:#C0841A}
.adm-meter>span.is-low{background:var(--da)}
.adm-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:56px 24px;color:var(--mu)}
.adm-empty .ui-icon{width:32px;height:32px;color:var(--pl)}
.adm-empty h2{font-size:17px;color:var(--tx)}
.adm-empty-line{padding:20px;color:var(--mu);font-size:14px}
.adm-hint{padding:10px 14px;border-radius:8px;background:var(--ins);color:var(--in);font-size:13px}
.adm-hint.is-wa{background:var(--was);color:var(--wa)}
.adm-flash{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;background:var(--oks);color:var(--ok);font-size:14px;font-weight:500}
.adm-flash span{flex:1}
.adm-dialog{border:0;border-radius:12px;padding:0;max-width:min(560px,calc(100vw - 32px));box-shadow:var(--shadow-lg)}
.adm-dialog::backdrop{background:rgba(10,20,18,.45)}
.adm-dialog form{padding:24px;display:flex;flex-direction:column;gap:16px}
.adm-dialog h2{font-size:18px}
.adm-dialog-body{color:var(--t2);font-size:14px;display:flex;flex-direction:column;gap:8px;max-height:50vh;overflow:auto}
.adm-dialog-body ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.adm-dialog .ui-btn-row{justify-content:flex-end}
.admin-dialog{border:0;border-radius:12px;padding:24px;box-shadow:var(--shadow-lg)}
.admin-dialog::backdrop{background:rgba(10,20,18,.45)}
.adm-todos{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:8px}
.adm-todo{display:flex;flex-direction:column;gap:2px;padding:16px 20px 18px;border-left:1px solid var(--ln);color:var(--tx)}
.adm-todo:first-child{border-left:0}
.adm-todo:hover{background:#FAFBF9}
.adm-todo>span{font-size:13px;color:var(--t2)}
.adm-todo strong{font-size:28px;font-weight:500;line-height:1.3}
.adm-todo strong.is-da{color:var(--da)}
.adm-todo strong.is-wa{color:var(--wa)}
.adm-todo small{font-size:12px;color:var(--mu)}
.adm-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
.adm-kpi{padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.adm-kpi>span{font-size:13px;color:var(--t2)}
.adm-kpi strong{font-size:26px;font-weight:500}
.adm-delta{font-size:12px;color:var(--mu)}
.adm-delta.up{color:var(--ok)}
.adm-delta.down{color:var(--da)}
.adm-chart{flex:999 1 520px!important}
.adm-chart-body{display:flex;gap:10px;height:240px;padding:16px 20px 18px}
.adm-axis{display:flex;flex-direction:column;justify-content:space-between;font-size:11px;color:var(--mu);text-align:right;padding-bottom:22px;min-width:24px}
.adm-plot{flex:1;display:flex;flex-direction:column;min-width:0}
.adm-bars{flex:1;display:flex;align-items:flex-end;gap:3px;border-bottom:1px solid var(--ln2);background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),var(--ln) calc(25% - 1px),var(--ln) 25%)}
.adm-bar{flex:1;height:100%;border:0;padding:0;background:transparent;display:flex;align-items:flex-end;cursor:default}
.adm-bar span{display:block;width:100%;height:var(--h);min-height:2px;border-radius:4px 4px 0 0;background:var(--p);opacity:.82}
.adm-bar:hover span,.adm-bar.is-on span,.adm-bar:focus-visible span{opacity:1;background:var(--ph)}
.adm-xlabels{display:flex;justify-content:space-between;font-size:11px;color:var(--mu);padding-top:6px}
.adm-health{padding-bottom:18px;display:flex;flex-direction:column;gap:12px}
.adm-health .adm-meter-row{padding:0 20px}
.adm-catalog-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:4px 20px 4px;border:1px solid var(--ln);border-radius:8px}
.adm-catalog-stats a{display:flex;flex-direction:column;align-items:center;padding:10px 4px;border-left:1px solid var(--ln);color:var(--tx)}
.adm-catalog-stats a:first-child{border-left:0}
.adm-catalog-stats a:hover{background:var(--bg)}
.adm-catalog-stats strong{font-size:20px;font-weight:500}
.adm-catalog-stats span{font-size:12px;color:var(--mu)}
.adm-meter-row{display:flex;flex-direction:column;gap:6px}
.adm-meter-row>div:first-child{display:flex;justify-content:space-between;font-size:13px}
.adm-meter-row .mono{color:var(--t2)}
.adm-meter-row .adm-meter{width:100%}
.adm-list,.adm-log{list-style:none;margin:8px 0 0;padding:0 20px 8px}
.adm-list li a{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--ln);color:var(--tx)}
.adm-list li:first-child a{border-top:0}
.adm-list-main{flex:1;min-width:0;display:flex;flex-direction:column}
.adm-list-main strong{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm-list-main small{font-size:12px;color:var(--mu)}
.adm-list-meta{font-size:12px;color:var(--mu);white-space:nowrap}
.adm-list-meta.is-late{color:var(--da)}
.adm-log li{display:flex;gap:14px;padding:10px 0;border-top:1px solid var(--ln);font-size:13px}
.adm-log li:first-child{border-top:0}
.adm-log .mono{flex:0 0 96px;color:var(--mu);font-size:12px}
.adm-req-tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:4px;font-size:12px;font-weight:500;white-space:nowrap;background:var(--bg);color:var(--t2)}
.adm-req-tag.is-received{background:var(--ins);color:var(--in)}
.adm-req-tag.is-viewed{background:var(--ps);color:var(--p)}
.adm-req-tag.is-awaiting_confirmation,.adm-req-tag.is-processing{background:var(--was);color:var(--wa)}
.adm-req-tag.is-listed{background:var(--oks);color:var(--ok)}
.adm-table-panel{overflow:hidden}
.adm-tabs{display:flex;flex-wrap:wrap;padding:0 16px;border-bottom:1px solid var(--ln)}
.adm-tabs a{display:inline-flex;align-items:center;gap:6px;height:48px;padding:0 10px;margin-bottom:-1px;border-bottom:2px solid transparent;color:var(--t2);font-size:14px}
.adm-tabs a:hover{color:var(--tx)}
.adm-tabs a[aria-current]{color:var(--tx);font-weight:700;border-bottom-color:var(--p)}
.adm-tabs .mono{font-size:12px;color:var(--mu);font-weight:400}
.adm-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--ln)}
.adm-filters-bare{padding:0;border:0}
.adm-filters .ui-select{min-height:36px;width:auto;min-width:130px}
.adm-filters .ui-btn{min-height:36px}
.adm-input-icon{display:flex;align-items:center;gap:8px;height:36px;padding:0 10px;border:1px solid var(--ln2);border-radius:6px;background:var(--sf);color:var(--mu);flex:0 1 280px}
.adm-input-icon:focus-within{border-color:var(--p)}
.adm-input-icon input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-size:13px;color:var(--tx)}
.adm-sort,.adm-check-label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mu)}
.adm-table-wrap{overflow-x:auto}
.adm-table{width:100%;border-collapse:collapse;min-width:1040px}
.adm-table th{position:sticky;top:0;font-size:12px;font-weight:500;color:var(--mu);text-align:left;padding:10px 12px;background:#F8F9F7;border-bottom:1px solid var(--ln);white-space:nowrap}
.adm-table td{padding:12px;border-bottom:1px solid var(--ln);vertical-align:middle;font-size:13px;white-space:nowrap}
.adm-table td:nth-child(2){white-space:normal}
.adm-table tr:hover td{background:#FAFBF9}
.adm-table tr.is-selected td{background:var(--ps)}
.adm-cb{width:16px;height:16px;margin:0;cursor:pointer}
.adm-product{display:flex;gap:10px;align-items:center;min-width:250px;max-width:340px}
.adm-product img{width:64px;height:44px;object-fit:cover;border-radius:4px;flex:0 0 auto;background:var(--ps)}
.adm-product-title{font-weight:500;color:var(--tx)}
.adm-product-title:hover{color:var(--p)}
.adm-product-sub{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:2px}
.adm-product-sub .mono{font-size:11px;color:var(--mu)}
.adm-price{font-weight:500}
.adm-score{display:inline-flex;align-items:center;gap:8px;color:var(--t2);font-size:12px}
.adm-date{font-size:12px;color:var(--t2);white-space:nowrap}
.adm-actions{text-align:right;white-space:nowrap}
.adm-actions a,.adm-actions button{border:0;background:none;padding:4px 5px;min-height:28px;color:var(--p);font-size:13px;cursor:pointer}
.adm-actions a:hover,.adm-actions button:hover{text-decoration:underline}
.adm-actions .is-danger{color:var(--da)}
.adm-table-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 16px;font-size:12px;color:var(--mu)}
.adm-batchbar{position:sticky;bottom:18px;z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;background:var(--ink);color:#fff;box-shadow:var(--shadow-lg)}
.adm-batchbar .ui-btn{min-height:36px}
.adm-batchbar .ui-btn.danger{color:var(--da)}
.adm-editor{display:flex;flex-direction:column;gap:20px}
.adm-editor-bar{position:sticky;top:60px;z-index:20;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:-24px -28px 0;padding:14px 28px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--ln)}
.adm-editor-title{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.adm-editor-title h1{font-size:20px}
.adm-editor-title .adm-sub{display:inline}
.adm-editor-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.adm-status-select{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mu)}
.adm-status-select .ui-select{width:auto;min-height:40px}
.adm-editor-grid{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.adm-steps{flex:0 0 176px;position:sticky;top:140px;display:flex;flex-direction:column;gap:2px}
.adm-steps a{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border-radius:6px;color:var(--t2);font-size:14px}
.adm-steps a:hover{background:var(--sf);color:var(--tx)}
.adm-steps a.is-active{background:var(--sf);color:var(--tx);font-weight:700;box-shadow:inset 2px 0 0 var(--p)}
.adm-step-dot{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;background:var(--bg);color:var(--mu);border:1px solid var(--ln2);flex:0 0 auto}
.adm-step-dot.is-ok{background:var(--oks);color:var(--ok);border-color:transparent}
.adm-step-dot.is-warn{background:var(--was);color:var(--wa);border-color:transparent}
.adm-step-dot.is-bad{background:var(--das);color:var(--da);border-color:transparent}
.adm-editor-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:16px}
.adm-editor-side{flex:1 1 280px;max-width:320px;position:sticky;top:140px;display:flex;flex-direction:column;gap:16px}
.adm-sec{padding:24px 28px;display:flex;flex-direction:column;gap:18px;scroll-margin-top:140px}
.adm-sec-wrap{scroll-margin-top:140px}
.adm-sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.adm-sec-head h2{font-size:17px;display:flex;align-items:baseline;gap:10px}
.adm-sec-head h2 .mono{font-size:12px;color:var(--mu);font-weight:400}
.adm-req{color:var(--da)}
.adm-optional{margin-left:6px;font-size:12px;color:var(--mu);font-weight:400}
.adm-errors{padding:14px 16px;border-radius:8px;background:var(--das);color:var(--da);font-size:14px}
.adm-errors ul{margin:6px 0 0;padding-left:20px}
.adm-errors a{color:var(--da);text-decoration:underline}
.adm-check{padding:18px}
.adm-check h2,.adm-preview-card h2{font-size:15px}
.adm-score-big{font-size:22px;color:var(--p)}
.adm-check .adm-meter{width:100%;margin:10px 0 6px}
.adm-checklist{list-style:none;margin:6px 0 10px;padding:0;display:flex;flex-direction:column}
.adm-checklist a{display:flex;align-items:center;gap:10px;min-height:32px;font-size:13px;color:var(--tx)}
.adm-checklist a:hover{color:var(--p)}
.adm-check-icon{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex:0 0 auto}
.adm-checklist .is-ok .adm-check-icon{background:var(--oks);color:var(--ok)}
.adm-checklist .is-warn .adm-check-icon{background:var(--was);color:var(--wa)}
.adm-checklist .is-bad .adm-check-icon{background:var(--das);color:var(--da)}
.adm-checklist .is-ok a{color:var(--mu)}
.adm-preview-card{padding:18px;display:flex;flex-direction:column;gap:12px}
.adm-preview-card .ds-card:hover{box-shadow:none}
.adm-preview-note{display:flex;gap:10px;align-items:center;padding:10px 14px;border-radius:8px;background:var(--ins);color:var(--in);font-size:13px}
.admin-panel-inner{padding:24px 28px}
.admin-section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px}
.admin-section-head h2{font-size:17px}
.admin-eyebrow{display:none}
.admin-caption{color:var(--mu);font-size:13px}
.admin-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
.admin-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.admin-field-full{grid-column:1/-1}
.admin-field>label{font-size:13px;color:var(--t2);font-weight:500}
.admin-field small{font-size:12px;color:var(--mu)}
.admin-field .ui-input[readonly]{background:var(--bg);color:var(--mu)}
.admin-kinds-field{border:0;padding:0;margin:0}
.admin-kinds-field legend{font-size:13px;color:var(--t2);font-weight:500;margin-bottom:6px}
.admin-kinds-field>div{display:flex;flex-wrap:wrap;gap:8px}
.admin-kinds-field label{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid var(--ln2);border-radius:6px;cursor:pointer;font-size:14px}
.admin-kinds-field label:has(input:checked){border-color:var(--p);background:var(--ps);color:var(--p);font-weight:500}
.admin-kinds-field small{display:block;margin-top:6px;font-size:12px;color:var(--mu)}
.admin-media-local{font-size:12px;color:var(--mu)}
.admin-cover-layout{display:flex;flex-wrap:wrap;gap:20px;align-items:center}
.admin-cover-frame{position:relative;width:260px;aspect-ratio:16/10;border-radius:8px;border:1px dashed var(--pl);background:var(--ps);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--p)}
.admin-cover-frame img{width:100%;height:100%;object-fit:cover}
.admin-cover-frame>span{position:absolute;left:8px;top:8px;padding:2px 8px;border-radius:4px;background:var(--p);color:#fff;font-size:11px}
.admin-cover-controls{flex:1 1 240px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.admin-cover-controls h3{font-size:15px}
.admin-cover-controls p{color:var(--mu);font-size:13px}
.admin-gallery-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:22px 0 12px;padding-top:18px;border-top:1px solid var(--ln)}
.admin-gallery-heading h3{font-size:15px}
.admin-gallery-heading p{color:var(--mu);font-size:13px}
.admin-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.admin-image-card{margin:0;border:1px solid var(--ln);border-radius:8px;overflow:hidden;background:var(--sf)}
.admin-gallery-image{position:relative;aspect-ratio:16/10;background:var(--ps)}
.admin-gallery-image img{width:100%;height:100%;object-fit:cover}
.admin-gallery-image span{position:absolute;left:6px;top:6px;padding:0 6px;border-radius:3px;background:rgba(0,0,0,.55);color:#fff;font-family:var(--mono);font-size:11px}
.admin-image-card-body{padding:8px 10px;display:flex;flex-direction:column;gap:4px;font-size:12px}
.admin-image-actions,.admin-image-order{display:flex;align-items:center;gap:6px}
.admin-image-actions span,.admin-image-order span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mu)}
.admin-image-card button{border:0;background:none;padding:2px 4px;min-height:26px;color:var(--p);font-size:12px}
.admin-image-card button:disabled{color:var(--mu);opacity:.5}
.admin-gallery-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:28px;border:1px dashed var(--ln2);border-radius:8px;color:var(--mu)}
.admin-media-hint{margin-top:12px;font-size:12px;color:var(--mu)}
.admin-media-status{margin-top:8px;font-size:13px;color:var(--ok)}
.admin-media-status.is-error{color:var(--da)}
.versioned-admin .admin-section-head{margin-bottom:6px}
.va-intro,.va-hint{font-size:13px;color:var(--mu)}

.va-settings{margin-top:14px;border:1px solid var(--ln);border-radius:8px;background:#FAFBF9}
.va-settings>summary{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;padding:12px 16px;cursor:pointer;list-style:none}
.va-settings>summary::-webkit-details-marker{display:none}
.va-settings>summary::before{content:"▸";color:var(--mu);font-size:12px}
.va-settings[open]>summary::before{content:"▾"}
.va-settings>summary strong{font-size:14px}
.va-settings>summary span{font-size:12px;color:var(--mu)}
.va-defaults{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding:4px 16px 16px;font-size:13px;color:var(--t2)}
.va-defaults label{display:flex;flex-direction:column;gap:6px}
.va-defaults p{grid-column:1/-1;font-size:12px;color:var(--mu)}

.va-version-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:18px;padding-bottom:12px;border-bottom:1px solid var(--ln)}
.va-version-tabs{display:flex;flex-wrap:wrap;gap:6px}
.va-version-tabs button{display:flex;flex-direction:column;align-items:flex-start;min-height:44px;padding:4px 14px;border:1px solid var(--ln2);border-radius:6px;background:var(--sf);font-size:14px;line-height:1.3;text-align:left}
.va-version-tabs button small{font-size:11px;color:var(--mu)}
.va-version-tabs button.is-active{border-color:var(--p);background:var(--ps);color:var(--p);font-weight:700;box-shadow:inset 0 0 0 1px var(--p)}
.va-version-pane{display:flex;flex-direction:column;gap:14px;padding-top:16px}
.va-version-heading{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between}
.va-version-heading label{flex:1 1 320px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--t2)}
.va-action-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.va-sample{padding:14px 16px;border:1px solid var(--ln);border-radius:8px;display:flex;flex-direction:column;gap:6px}
.va-sample-line{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:14px}
.va-sample-line span{font-family:var(--mono);font-size:13px;color:var(--t2)}
[data-upload-status]{font-size:13px;color:var(--ok)}
[data-upload-status].is-error,[data-batch-status].is-error{color:var(--da)}
.va-skus-heading{display:flex;align-items:baseline;gap:10px;margin-top:6px}
.va-skus-heading h3{font-size:15px}
.va-skus-heading span{font-size:12px;color:var(--mu)}
.va-legacy-note{padding:10px 14px;border-radius:8px;background:var(--was);color:var(--wa);font-size:13px}
.va-bulk{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:10px 14px;border-radius:8px;background:var(--bg);font-size:13px}
.va-bulk .ui-select,.va-bulk .ui-input{min-height:36px;width:auto}
.va-bulk .ui-input{width:130px}
.va-sel-all{display:flex;align-items:center;gap:6px;color:var(--t2)}
.va-bulk-status{font-size:12px;color:var(--ok)}
.va-sku-head,.va-sku-main{display:grid;grid-template-columns:58px minmax(0,1.4fr) minmax(0,1fr) 112px 44px;gap:8px;align-items:center}
.va-sku-head{padding:0 10px;font-size:12px;color:var(--mu)}
.va-skus{display:flex;flex-direction:column;border:1px solid var(--ln);border-radius:8px;overflow:hidden}
.va-sku{padding:10px;border-top:1px solid var(--ln)}
.va-sku:first-child{border-top:0}
.va-sku.is-selected{background:var(--ps)}
.va-sku .ui-input,.va-sku .ui-select{min-height:36px;font-size:13px}
.va-sel{grid-column:1;grid-row:1;display:flex;align-items:center;gap:8px}
.va-sku-number{font-family:var(--mono);font-size:12px;color:var(--mu)}
.va-sku-name{grid-column:2;grid-row:1}
.va-mode{grid-column:3;grid-row:1}
.va-price,.va-sku-price{grid-column:4;grid-row:1}
.va-sku-price strong{font-family:var(--mono);font-size:13px;font-weight:500;color:var(--t2)}
.va-remove{grid-column:5;grid-row:1;justify-self:end}
.va-link-fields{grid-column:2/5;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:6px}
.va-link-placeholder{grid-column:2/5;grid-row:2;font-size:12px;color:var(--mu)}
.va-inherited{font-size:11px;color:var(--mu);margin:4px 0 0 66px}
.va-empty{padding:24px;text-align:center;color:var(--mu);font-size:13px}
.va-sku-footer{display:flex;justify-content:space-between;font-size:12px;color:var(--mu)}

.admin-detail-preview{overflow:hidden}
.admin-preview-cover img{width:100%;max-height:360px;object-fit:cover}
.admin-preview-content{padding:24px 28px;display:flex;flex-direction:column;gap:18px}
.admin-preview-content>h2{font-family:var(--serif);font-size:26px}
.admin-preview-meta{display:flex;gap:10px;align-items:center}
.admin-preview-summary{color:var(--t2)}
.admin-preview-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:0}
.admin-preview-facts div{padding:10px 12px;border:1px solid var(--ln);border-radius:8px}
.admin-preview-facts dt{font-size:12px;color:var(--mu)}
.admin-preview-facts dd{margin:0;font-size:14px}
.admin-preview-section h3{font-size:16px;margin-bottom:8px}
.admin-preview-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.admin-preview-gallery h3{grid-column:1/-1}
.admin-preview-gallery figure{margin:0}
.admin-preview-gallery img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px}
.data-type-tags{display:inline-flex;gap:4px}
.data-type-badge{height:22px;padding:0 8px;border-radius:4px;background:var(--ps);color:var(--p);font-size:12px;display:inline-flex;align-items:center}
.adm-split{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}
.adm-split>.adm-table-panel{flex:999 1 620px;min-width:0}
.adm-orders{min-width:780px}
.adm-order-link{color:var(--p);font-size:12px}
.adm-ellipsis{display:block;max-width:260px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm-tags{display:flex;flex-wrap:wrap;gap:4px}
.adm-order-tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:4px;font-size:12px;font-weight:500;background:var(--bg);color:var(--mu)}
.adm-order-tag.is-paid{background:var(--oks);color:var(--ok)}
.adm-order-tag.is-pending{background:var(--was);color:var(--wa)}
.adm-order-detail{flex:1 1 340px;max-width:400px;position:sticky;top:84px;padding:20px;display:flex;flex-direction:column;gap:16px}
.adm-order-id{font-size:14px;font-weight:500;word-break:break-all}
.adm-order-product{display:flex;gap:12px;align-items:center;padding:12px;border-radius:8px;background:var(--bg)}
.adm-order-product img{width:64px;height:44px;object-fit:cover;border-radius:4px}
.adm-order-product div{display:flex;flex-direction:column;min-width:0}
.adm-order-product small{font-size:12px;color:var(--mu)}
.adm-flow{list-style:none;margin:0;padding:0}
.adm-flow li{position:relative;padding:0 0 14px 22px;display:flex;flex-direction:column;font-size:13px}
.adm-flow li::before{content:"";position:absolute;left:0;top:5px;width:10px;height:10px;border-radius:50%;background:var(--ln2)}
.adm-flow li::after{content:"";position:absolute;left:4.5px;top:17px;bottom:0;width:1px;background:var(--ln)}
.adm-flow li:last-child::after{display:none}
.adm-flow li.is-done::before{background:var(--p)}
.adm-flow li:not(.is-done) span{color:var(--mu)}
.adm-flow small{font-size:11px;color:var(--mu)}
.adm-kv{display:grid;grid-template-columns:84px 1fr;gap:8px 12px;margin:0;font-size:13px}
.adm-kv dt{color:var(--mu)}
.adm-kv dd{margin:0;word-break:break-all}
.adm-board-scroll{overflow-x:auto;padding-bottom:8px}
.adm-board{display:flex;gap:14px;align-items:flex-start;width:max-content}
.adm-col{width:272px;display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:10px;background:#E9ECE7}
.adm-col header{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:2px 4px}
.adm-col header strong{font-size:14px}
.adm-col header .mono{font-size:12px;color:var(--mu)}
.adm-col header small{flex-basis:100%;font-size:11px;color:var(--mu)}
.adm-col-dot{width:8px;height:8px;border-radius:50%;background:var(--mu)}
.adm-col.is-received .adm-col-dot{background:var(--in)}
.adm-col.is-viewed .adm-col-dot{background:var(--p)}
.adm-col.is-processing .adm-col-dot{background:#C0841A}
.adm-col.is-listed .adm-col-dot{background:var(--ok)}
.adm-col-empty{font-size:12px;color:var(--mu);text-align:center;padding:16px 0;border:1px dashed #C9CFCB;border-radius:8px}
.adm-kcard{background:var(--sf);border:1px solid var(--ln);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.adm-kcard:hover{border-color:var(--pl)}
.adm-kcard.is-late{box-shadow:inset 3px 0 0 var(--da)}
.adm-kcard-title{font-weight:700;font-size:14px;line-height:1.45;color:var(--tx)}
.adm-kcard-title:hover{color:var(--p)}
.adm-kcard-tags{display:flex;flex-wrap:wrap;gap:4px}
.adm-kcard .adm-row{font-size:12px}
.adm-kcard .adm-row a{color:var(--p);font-size:12px}
.adm-kcard .ui-btn.small{min-height:28px;padding:0 10px;font-size:12px}
@media (max-width:1180px){.adm-steps{display:none}
.adm-editor-side{max-width:none;position:static;flex-basis:100%}
}@media (max-width:900px){.adm-side{position:fixed;left:0;top:0;bottom:0;z-index:60;transform:translateX(-100%);transition:transform .2s;box-shadow:var(--shadow-lg)}
.adm.side-open .adm-side{transform:none}
.adm-menu{display:inline-flex}
.adm-top{padding:0 16px;flex-wrap:wrap}
.adm-top-right .adm-user span:last-child,.adm-top-right a[href="#/account"]{display:none}
.adm-body{padding:16px 16px 96px}
.adm-editor-bar{margin:-16px -16px 0;padding:12px 16px;top:60px}
.admin-field-grid,.va-defaults{grid-template-columns:1fr}
.va-sku-head{display:none}
.va-sku-main{grid-template-columns:1fr 1fr}
.va-sel,.va-sku-name,.va-mode,.va-price,.va-sku-price,.va-remove,.va-link-fields,.va-link-placeholder{grid-column:auto;grid-row:auto}
.va-sku-name,.va-link-fields,.va-link-placeholder{grid-column:1/-1}
.va-inherited{margin-left:0}
.adm-order-detail{max-width:none;position:static}
.adm-todo{border-left:0;border-top:1px solid var(--ln)}
}.admin-link{border:0;background:none;padding:0 2px;min-height:30px;color:var(--p);font-size:13px;cursor:pointer}
.admin-link:hover{text-decoration:underline}
.admin-link:disabled{color:var(--mu);cursor:not-allowed}
.va-remove{color:var(--da)!important}
#sec-media .admin-section-head h2::before{content:"02";font-family:var(--mono);font-size:12px;color:var(--mu);font-weight:400;margin-right:10px}
#sec-access .admin-section-head h2::before{content:"04";font-family:var(--mono);font-size:12px;color:var(--mu);font-weight:400;margin-right:10px}
.markdown-editor textarea{color:var(--tx)!important;font-family:var(--mono);font-size:13px}
.adm-kcard-foot{font-size:12px;color:var(--mu)}
.adm-product{position:relative}
.adm-product>div{flex:1;min-width:0}
.adm-star{flex:0 0 auto;width:32px;height:32px;border-radius:6px;color:#C9CFCB;font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.adm-star:hover{background:var(--was);color:#C0841A}
.adm-star.is-on{color:#D69A1E}
.adm-mini.is-hot{background:#FCF1D8;color:#8A5208}
.adm-featured-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border:1px solid var(--ln);border-radius:8px;overflow:hidden}
.adm-featured-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;border-top:1px solid var(--ln);background:var(--sf)}
.adm-featured-list li:first-child{border-top:0}
.adm-featured-list img{width:56px;height:38px;object-fit:cover;border-radius:4px}
.adm-featured-list .no{font-family:var(--mono);font-size:12px;color:var(--mu);width:20px}
.adm-featured-list strong{flex:1;font-weight:500;font-size:14px;min-width:0}
.adm-featured-list button{min-height:30px;padding:0 8px;color:var(--p);font-size:13px}
.adm-featured-list button:disabled{color:var(--mu);opacity:.5}
.adm-featured-add{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.adm-featured-add .ui-select{flex:1 1 260px}
.adm-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.adm-stats-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--t2)}
.adm-wm{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px;align-items:start}
.adm-wm-form{display:grid;gap:12px;align-content:start}
.adm-wm-switch{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--ink)}
.adm-wm-switch input{width:18px;height:18px;accent-color:var(--p)}
.adm-wm-form .ui-btn{justify-self:start}
.adm-wm-preview{margin:0}
.adm-wm-preview>div{aspect-ratio:16/10;border-radius:10px;border:1px solid var(--ln);background-color:#26332f;background-image:url("assets/hero-terrain.webp");background-repeat:repeat,no-repeat;background-size:38% auto,cover;background-position:0 0,center}
.adm-wm-preview figcaption{margin-top:6px;font-size:12px;color:var(--mu)}
@media (max-width:760px){.adm-wm{grid-template-columns:1fr}
}/* ---- services.css ---- */
.svc-page{padding-bottom:70px}
.svc-page h2,.svc-page h3{font-weight:550}
.svc-page p{line-height:1.9}
.svc-page .ui-btn{white-space:normal}

.svc-page .ui-label{display:block;margin-bottom:10px}
.svc-page .ui-label em{font-style:normal;color:var(--p);margin-left:3px}
.svc-page .ui-input,.svc-page .ui-select,.svc-page .ui-textarea{width:100%;min-width:0;font-family:inherit}
.svc-page .ui-input,.svc-page .ui-select{height:44px}
.svc-page .ui-textarea{resize:vertical;line-height:1.9;padding:14px}
.svc-form-error{min-height:18px;font-size:0.6875rem;color:#ad5a44;margin:12px 0}
@media(max-width:640px){.svc-page{padding-bottom:42px}

.svc-page .ui-label{font-size:0.75rem}
.svc-page .ui-input,.svc-page .ui-select{font-size:0.75rem}
}
/* ---- editorial.css ---- */
.ed-page{padding-bottom:64px}
.ed-page h1,.ed-page h2,.ed-page h3,.ed-page h4{letter-spacing:-.025em}
.ed-page h2{font-size:1.8125rem;font-weight:550;line-height:1.5}
.ed-page p{line-height:1.9}
.ed-label{font-size:0.625rem;letter-spacing:1.25px;color:var(--mu)}
.ed-section{margin-top:60px}
.ed-section-heading{margin-bottom:25px}
.ed-section-heading h2{margin:9px 0 7px}
.ed-section-heading p{font-size:0.8125rem;margin:0;color:var(--mu)}

.ed-help-hero{text-align:center;background:#edf3ee;border:1px solid #e0e9de;border-radius:8px;padding:43px 25px 39px;position:relative;overflow:hidden}
.ed-help-hero:before,.ed-help-hero:after{content:"";width:290px;height:290px;border:1px solid #d4e0d655;border-radius:50%;position:absolute;pointer-events:none}
.ed-help-hero:before{left:-104px;top:28px;box-shadow:0 0 0 30px #d4e0d622,0 0 0 60px #d4e0d61a}
.ed-help-hero:after{right:-133px;top:-150px;box-shadow:0 0 0 40px #d4e0d622,0 0 0 80px #d4e0d61a}
.ed-help-hero h1{font-size:2.25rem;font-weight:500;margin:14px 0 10px;line-height:1.5}
.ed-help-hero>p{font-size:0.8125rem;color:var(--mu);margin:0 0 25px}
.ed-help-search{position:relative;background:#fff;display:flex;align-items:center;border:1px solid #d8e3d9;border-radius:5px;width:610px;max-width:100%;height:54px;margin:0 auto;gap:14px;padding:0 18px;box-shadow:0 4px 18px #385c3c04}
.ed-help-search>span:first-child{font-size:1.6875rem;color:var(--mu);line-height:1}
.ed-help-search input{border:0;min-width:0;flex:1;font-size:0.75rem;color:var(--p);outline:none;height:100%;background:transparent}
.ed-help-search:focus-within{outline:2px solid #a6c9ac;outline-offset:2px}
.ed-help-search input:focus-visible{outline:none}
.ed-help-search input::placeholder{color:#9aa797}
.ed-search-label{font-size:0.5rem;color:#a3b09f;letter-spacing:1px}
.ed-help-layout{display:grid;grid-template-columns:228px minmax(0,1fr);gap:48px;margin-top:44px}
.ed-help-nav{align-self:start}
.ed-help-nav h3{font-size:0.8125rem;font-weight:550;margin:5px 0 18px}
.ed-help-nav>a,.ed-help-nav>button{display:flex;align-items:center;justify-content:space-between;font-size:0.75rem;color:var(--mu);padding:13px 15px;margin:4px 0;border-radius:4px;width:100%;background:transparent;text-align:left}
.ed-help-nav>a span,.ed-help-nav>button span{font-size:0.625rem;color:#98a892}
.ed-help-nav .is-active,.ed-help-nav>a:hover,.ed-help-nav>button:hover{background:#e9f0e6;color:var(--p)}
.ed-help-sidebar-note{border-top:1px solid #e0e7dc;margin-top:26px;padding:27px 13px 0}
.ed-help-sidebar-note .ed-label{font-size:0.5rem;letter-spacing:1.1px}
.ed-help-sidebar-note h4{font-size:0.875rem;font-weight:500;margin:12px 0 6px}
.ed-help-sidebar-note p{font-size:0.6875rem;color:var(--mu);margin:0}
.ed-help-sidebar-note>a{display:block;margin-top:19px;font-size:0.6875rem;color:var(--mu)}
.ed-inline-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 17px}
.ed-inline-heading h2{font-size:1.375rem;margin:0}
.ed-inline-heading>span{font-size:0.6875rem;color:var(--mu)}
.ed-guide-list{border:1px solid #e0e7dd;border-radius:6px;background:white;overflow:hidden}
.ed-guide-row{display:flex;align-items:center;gap:20px;padding:24px 26px;border-bottom:1px solid #e8ede4;transition:background .2s}
.ed-guide-row:last-child{border-bottom:0}
.ed-guide-row:hover{background:#f6f9f3}
.ed-guide-row[hidden]{display:none}
.ed-guide-symbol{font-family:monospace;display:flex;align-items:center;justify-content:center;border:1px solid #d9e5d5;width:37px;height:45px;font-size:1.4375rem;line-height:1;border-radius:3px;color:var(--mu);flex-shrink:0;background:#f7faf4}
.ed-guide-row>div{flex:1}
.ed-guide-row .ed-label{font-size:0.5625rem;letter-spacing:.4px}
.ed-guide-row h3{font-size:0.9375rem;font-weight:500;margin:8px 0 4px;line-height:1.5}
.ed-guide-row p{font-size:0.6875rem;color:var(--mu);margin:0;line-height:1.8}
.ed-guide-time{font-size:0.625rem;color:#9ba793;white-space:nowrap}
.ed-row-arrow{font-size:1.3125rem;font-weight:300;color:var(--mu)}
.ed-help-empty{background:#fff;border:1px solid #dfe7d9;border-radius:6px;padding:36px;text-align:center}
.ed-help-empty[hidden]{display:none}
.ed-help-empty h3{font-size:1.125rem;font-weight:500}
.ed-help-empty p{font-size:0.75rem;color:var(--mu)}
.ed-faq-section{margin-top:42px}
.ed-faq-section .ed-section-heading h2{font-size:1.4375rem}
.ed-faq-list{border-top:1px solid #dee7d9}
.ed-faq{border-bottom:1px solid #dee7d9}
.ed-faq summary{display:flex;justify-content:space-between;gap:22px;align-items:center;list-style:none;cursor:pointer;padding:21px 0;font-size:0.8125rem}
.ed-faq summary::-webkit-details-marker{display:none}
.ed-faq summary>b{font-size:1.25rem;font-weight:300;line-height:1;color:var(--mu)}
.ed-faq[open] summary>b{transform:rotate(45deg)}
.ed-faq>div{padding:0 37px 20px 0}
.ed-faq p{font-size:0.75rem;color:var(--mu);margin:0}
.ed-article-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:57px;max-width:1100px;margin:22px auto 0}
.ed-article-toc{align-self:start;position:sticky;top:110px}
.ed-back-link{font-size:0.6875rem;color:var(--mu);display:block;padding-bottom:27px;border-bottom:1px solid #dfe6da}
.ed-article-toc h3{font-size:0.75rem;font-weight:500;margin:24px 0 15px}
.ed-article-toc nav{display:flex;flex-direction:column;gap:4px}
.ed-article-toc button{text-align:left;background:transparent;padding:10px 0;line-height:1.8;font-size:0.6875rem;color:var(--mu);display:flex;gap:9px}
.ed-article-toc button:hover{color:var(--p)}
.ed-article-toc button span{font-size:0.5625rem;color:#a1af95;margin-top:1px}
.ed-article{min-width:0}
.ed-article-header{border-bottom:1px solid #dfe7da;padding-bottom:31px}
.ed-article-meta{display:flex;gap:15px;align-items:center;font-size:0.625rem;color:var(--mu)}
.ed-article-header h1{font-size:2.125rem;font-weight:500;line-height:1.5;margin:17px 0 13px}
.ed-article-header>p{font-size:0.875rem;color:var(--mu);line-height:1.9;margin:0}
.ed-article-body section{margin-top:35px;scroll-margin-top:110px}
.ed-article-index{font-size:0.625rem;color:#a0b096;letter-spacing:1px}
.ed-article-body h2{font-size:1.375rem;font-weight:500;margin:9px 0 14px}
.ed-article-body section>p{font-size:0.875rem;line-height:2.15;color:var(--p);margin:0}
.ed-article-note{border-left:3px solid #b1c7a4;padding:20px 23px;background:#edf3e8;margin-top:25px;color:var(--mu)}
.ed-article-note strong{font-size:0.75rem;font-weight:500}
.ed-article-note p{font-size:0.75rem;margin:8px 0 0}
.ed-article-footer{margin-top:42px;border-top:1px solid #dee7d7;border-bottom:1px solid #dee7d7;padding:26px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}
.ed-article-footer h3{font-size:1rem;font-weight:500;margin:0 0 7px}
.ed-article-footer p{font-size:0.6875rem;color:var(--mu);margin:0}
.ed-article-footer .ui-btn{white-space:nowrap}
.ed-related-guides{margin-top:41px}
.ed-related-guides h2{font-size:1.375rem;margin:10px 0 15px}
.ed-related-guides>a{display:flex;gap:20px;justify-content:space-between;font-size:0.75rem;color:var(--mu);padding:13px 0;border-bottom:1px solid #e3eade}
.ed-related-guides>a:hover{color:var(--p)}

@media(max-width:1100px){
.ed-help-layout{grid-template-columns:190px minmax(0,1fr);gap:30px}
.ed-guide-time{display:none}
.ed-article-layout{gap:35px;grid-template-columns:195px minmax(0,1fr)}

}@media(max-width:800px){

.ed-help-layout{grid-template-columns:1fr;margin-top:28px;gap:28px}
.ed-help-nav{display:flex;align-items:center;gap:5px;overflow-x:auto;padding-bottom:7px}
.ed-help-nav h3,.ed-help-sidebar-note{display:none}
.ed-help-nav>a,.ed-help-nav>button{white-space:nowrap;gap:14px;margin:0;width:auto;flex-shrink:0;padding:11px 14px}
.ed-guide-row{padding:22px}
.ed-article-layout{display:block}
.ed-article-toc{position:static}
.ed-article-toc>.ed-back-link{border-bottom:0;padding-bottom:23px}
.ed-article-toc h3,.ed-article-toc nav{display:none}

}@media(max-width:600px){.ed-page{padding-bottom:39px}
.ed-page .page-heading{margin-bottom:27px}
.ed-section{margin-top:38px}
.ed-section-heading{margin-bottom:21px}
.ed-section-heading h2{font-size:1.4375rem}
.ed-section-heading p{font-size:0.6875rem}

.ed-help-hero{padding:31px 20px}
.ed-help-hero h1{font-size:1.75rem;line-height:1.5;max-width:290px;margin:13px auto 12px}
.ed-help-hero>p{font-size:0.6875rem;line-height:1.9}
.ed-help-search{height:51px;padding:0 12px;gap:9px}
.ed-help-search input{font-size:0.625rem}
.ed-search-label{display:none}
.ed-help-hero .page-kicker{font-size:0.5rem}
.ed-help-nav>a,.ed-help-nav>button{font-size:0.6875rem;padding:10px 12px;gap:11px}
.ed-help-layout{gap:22px}
.ed-inline-heading h2{font-size:1.3125rem}
.ed-guide-row{padding:21px 17px;gap:13px}
.ed-guide-symbol{width:28px;height:35px;font-size:1.25rem}
.ed-guide-row h3{font-size:0.8125rem;margin-top:6px}
.ed-guide-row p{font-size:0.625rem;line-height:1.9}
.ed-guide-row .ed-label{font-size:0.5rem}
.ed-row-arrow{font-size:1.125rem}
.ed-faq summary{font-size:0.75rem;line-height:1.8;padding:18px 0}
.ed-faq p{font-size:0.6875rem}
.ed-faq>div{padding-right:22px;padding-bottom:18px}
.ed-article-header h1{font-size:1.75rem;margin-top:16px}
.ed-article-header>p{font-size:0.75rem}
.ed-article-header{padding-bottom:25px}
.ed-article-body section{margin-top:28px}
.ed-article-body h2{font-size:1.25rem;margin-top:8px}
.ed-article-body section>p{font-size:0.8125rem;line-height:2.1}
.ed-article-footer{flex-direction:column;align-items:flex-start;gap:18px;margin-top:30px}
.ed-article-note{padding:18px}
.ed-related-guides{margin-top:31px}
.ed-related-guides h2{font-size:1.3125rem}
.ed-related-guides>a{font-size:0.6875rem}

}.ed-support-link{display:block;background:transparent;padding:0;margin-top:19px;font-size:0.6875rem;color:var(--mu);text-align:left}

.ed-help-sidebar-note>.ed-support-link:hover{color:var(--p)}
/* ---- live.css ---- */
.live-page{min-height:65vh}
.live-tabs{display:flex;flex-wrap:wrap;gap:12px 24px;border-bottom:1px solid #dce5dc;padding:0 0 18px;margin-bottom:25px;font-size:0.875rem;color:var(--p)}
.live-auth-layout{display:grid;grid-template-columns:minmax(320px,480px) 1fr;gap:80px;max-width:1050px;margin:35px auto}
.live-auth-card{padding:32px;max-width:520px}
.live-auth-card h2,.live-access h2,.live-order-detail h2{font-size:1.4375rem;line-height:1.6;color:var(--p);font-weight:550}
.live-auth-card label{display:block;margin:18px 0 9px;font-size:0.875rem}
.live-auth-card .ui-input{font-size:1rem}
.live-auth-card form>.ui-btn{width:100%;margin-top:24px;font-size:1rem}
.live-auth-card p{font-size:0.875rem;line-height:1.8;color:var(--mu)}
.live-auth-card p a{text-decoration:underline;color:var(--p)}
.live-auth-note{padding-top:40px;color:var(--mu)}
.live-auth-note>.ui-icon{width:45px;height:45px}
.live-auth-note h2{font-size:2rem;color:var(--p);font-weight:500;margin:25px 0}
.live-auth-note p{font-size:1rem;line-height:2;max-width:410px}
.live-auth-note a{display:inline-block;margin-top:22px;font-size:0.9375rem}
.live-error{color:#994a35;background:#fff3ee;padding:12px 15px;border:1px solid #efd7cb;border-radius:5px;font-size:0.875rem;line-height:1.7;overflow-wrap:anywhere}
.live-error[hidden]{display:none}
.live-notice{padding:16px 18px;background:#edf4eb;border:1px solid #dae5d5;font-size:0.875rem;line-height:1.8;color:var(--mu);border-radius:5px;margin:18px 0;overflow-wrap:anywhere}
.live-notice a{text-decoration:underline}
.live-muted{font-size:0.8125rem;line-height:1.8;color:var(--mu);margin-top:20px}
.live-order{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 30px;margin:15px 0}
.live-order h2{font-size:1.1875rem;margin:10px 0;color:var(--p)}
.live-order p{font-size:0.875rem;color:var(--mu)}
.live-order>div:last-child{display:grid;gap:12px;text-align:right;flex-shrink:0}
.live-order strong{font-size:1.25rem;font-weight:500;color:var(--p)}
.live-order small{font-size:0.75rem;color:var(--mu)}
.live-welcome{margin:20px 0 28px}
.live-welcome h2{font-size:1.375rem;font-weight:500;color:var(--p)}
.live-welcome p{font-size:0.875rem;color:var(--mu);line-height:1.8}
.live-order-detail{padding:35px}
.live-order-detail>p{font-size:1rem;line-height:1.8;color:var(--mu)}
.live-order-detail .live-price,.live-price{font-size:2rem;color:var(--p);font-weight:500}
.live-access{display:flex;align-items:flex-start;gap:25px;padding:30px}
.live-access>img{width:180px;aspect-ratio:4/3;object-fit:cover;border-radius:5px}
.live-access p{font-size:0.9375rem;line-height:1.9;color:var(--mu);white-space:pre-wrap;overflow-wrap:anywhere}
.live-access .ui-btn{margin:12px 7px 0 0}
.live-checkout{padding:28px}
.live-checkout>.ui-btn{width:100%;margin-top:13px}
.live-records{padding:10px 25px}
.live-records>div{display:flex;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid #e5ecdf;font-size:0.875rem;color:var(--mu)}
.live-records>div:last-child{border:0}
.live-records>div>a,.live-records>div>span:first-child{flex:1}
.live-records strong{color:var(--p)}
.live-records small{display:block;font-size:0.75rem;line-height:1.8;overflow-wrap:anywhere;color:#98a68c}
.live-records time{font-size:0.75rem;color:#98a68c}

.live-download-dialog{width:min(530px,calc(100% - 36px));padding:32px;border:1px solid #d9e5d4;border-radius:10px;box-shadow:0 25px 100px #203d2840;color:var(--p)}
.live-download-dialog::backdrop{background:#13281c77;backdrop-filter:blur(3px)}
.live-download-dialog h2{font-size:1.5rem;font-weight:500;margin:15px 0}
.live-download-dialog p{font-size:0.9375rem;line-height:1.8;color:var(--mu)}
.live-download-dialog label{font-size:0.8125rem;display:block;margin:22px 0 9px}
.live-disk-url{display:block;padding:13px;background:#f2f6ec;overflow-wrap:anywhere;font-size:0.875rem;line-height:1.8}
.live-extraction{display:flex;gap:17px;align-items:center;margin:18px 0;font-size:0.875rem}
.live-extraction strong{letter-spacing:2px;font-size:1.1875rem}
.live-extraction button{margin-left:auto;background:none;border:1px solid #cbdac1;border-radius:4px;padding:5px 10px;color:var(--p);cursor:pointer}
.live-download-dialog>.ui-btn{width:100%;margin-top:20px}
.live-dialog-close{position:absolute;right:15px;top:12px;background:none;border:0;color:var(--mu);font-size:1.625rem;cursor:pointer}
.admin-access-panel h3{font-size:1.0625rem;color:var(--p);font-weight:550}
.admin-access-panel p{font-size:0.875rem;line-height:1.8;color:var(--mu)}
.admin-access-block{padding:22px 0;border-bottom:1px solid #e2ecd9}
.admin-access-block:first-of-type{padding-top:0}
.admin-access-block label{display:block;margin:15px 0 7px;font-size:0.875rem;color:var(--mu)}
.admin-access-block .ui-input,.admin-access-block .ui-select{font-size:0.9375rem}
.admin-access-block input[type=file]{font:inherit;font-size:0.875rem;max-width:100%;margin-top:18px}
.admin-access-block small{font-size:0.75rem;line-height:1.8;color:#9aac8d}
.admin-access-block [hidden]{display:none}
.admin-access-settings{padding-top:22px}
.admin-access-settings>label{display:flex;gap:10px;align-items:center;font-size:0.875rem;margin:15px 0;color:var(--p)}
.admin-access-settings input{accent-color:var(--p);width:16px;height:16px}
.admin-access-panel .live-error{color:#936849;background:#fff6eb}
@media(max-width:800px){.live-auth-layout{grid-template-columns:1fr;gap:25px;margin:10px auto}
.live-auth-card{max-width:none}
.live-auth-note{padding:10px 0}
.live-order{padding:20px;align-items:flex-start}
.live-access{flex-direction:column;padding:23px}
.live-access>img{width:100%;max-height:260px}
.live-records>div{flex-wrap:wrap;gap:12px}
.live-records>div>a,.live-records>div>span:first-child{flex-basis:100%}
.live-order-detail{padding:24px}
.live-order-detail .ui-row{align-items:flex-start;gap:15px}
.live-order h2{font-size:1.0625rem}
.live-order p{font-size:0.75rem}
}[hidden]{display:none!important}

.live-verification-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.live-auth-card .live-verification-row .ui-btn{margin:0;min-height:43px;white-space:nowrap;width:auto;font-size:0.8125rem}
.live-auth-card .live-verification-status{font-size:0.8125rem;line-height:1.8;color:var(--mu);margin:10px 0 18px}
/* ---- research.css ---- */
.research-page,.operations-page{padding-bottom:88px}
.research-field{display:grid;gap:9px;margin:17px 0;font-size:0.875rem;font-weight:600;color:var(--p)}
.research-field .ui-input,.research-field .ui-textarea,.research-field .ui-select{font-weight:400;width:100%}
.research-section{padding:28px;margin-bottom:22px}
.research-section h2,.research-action h3,.ops-save h2{font-size:1.3125rem;line-height:1.5;margin:0 0 16px}
.research-section p,.research-action p,.ops-save p{font-size:0.875rem;line-height:1.85;color:var(--mu);white-space:pre-wrap;overflow-wrap:anywhere}
.research-section h3{font-size:0.875rem;margin:22px 0 7px}
.research-section details{border-top:1px solid #e2e9e3;padding:18px 0}
.research-section details summary,.ops-topic summary{cursor:pointer;font-size:0.9375rem;font-weight:600;color:var(--p)}
.research-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}
.research-facts dt{font-size:0.75rem;color:var(--mu);margin-bottom:7px}
.research-facts dd{margin:0;font-size:0.875rem;line-height:1.7;overflow-wrap:anywhere}
.research-detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(310px,1fr);gap:26px;align-items:start}
.research-phases{list-style:none;display:flex;padding:24px 28px;margin:24px 0 30px;border:1px solid #dee8e0;border-radius:12px;background:#fff}
.research-phases li{flex:1;display:flex;align-items:center;gap:10px;font-size:0.8125rem;color:var(--mu)}
.research-phases li span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#f0f3ef;flex-shrink:0}
.research-phases li.active{color:var(--p);font-weight:700}
.research-phases li.active span{background:var(--p);color:#fff}
.research-phases li.done span{background:#e2eee6;color:var(--p)}
.research-action{padding:24px;margin-bottom:22px}
.research-action>.ui-btn{width:100%}
.research-message{padding:18px 0;border-bottom:1px solid #e4eae4}
.research-message header{display:flex;gap:15px;justify-content:space-between;font-size:0.8125rem}
.research-message time{font-size:0.75rem;color:#98a59c}
.research-message p{color:var(--p);margin-bottom:0}
.research-message.event{padding:12px 15px;border:0;background:#f6f8f5;border-radius:8px;margin:10px 0}
.research-message.event p{color:var(--mu);font-size:0.75rem;margin-top:7px}
.research-message.event strong{font-weight:400;color:var(--mu)}
.research-file{display:flex;align-items:center;gap:9px;font-size:0.8125rem;padding:12px 0;color:var(--p);border-bottom:1px solid #e6ece7}
.research-file svg{width:17px;height:17px;flex-shrink:0}
.research-file span{overflow-wrap:anywhere;min-width:0;flex:1}
.research-file small{color:var(--mu);white-space:nowrap}
.research-upload{display:inline-flex;align-items:center;justify-content:center;position:relative;gap:8px;background:#edf3ed;border:1px dashed #b6cbbd;border-radius:7px;padding:13px 18px;font-size:0.8125rem;color:var(--p);cursor:pointer;margin:14px 0}
.research-upload:focus-within{outline:2px solid var(--p);outline-offset:3px}
.research-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.ops-data-select{border:1px solid #e3eae3;border-radius:7px;padding:15px;margin:18px 0}
.ops-data-select label{display:flex;align-items:center;gap:9px;font-size:0.8125rem;line-height:1.6;margin:9px 0;overflow-wrap:anywhere}
.ops-data-select legend{font-size:0.75rem;color:var(--mu);padding:0 5px}
.research-request-card{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px;margin:18px 0;text-decoration:none;transition:border-color .2s}
.research-request-card:hover{border-color:#96b8a2}
.research-request-card h2{font-size:1.25rem;margin:10px 0}
.research-request-card p{font-size:0.875rem;color:var(--mu)}
.research-request-card small{color:#95a398;font-size:0.75rem}
.research-request-card .page-kicker{font-size:0.625rem;letter-spacing:.06em}
.research-filter{display:flex;gap:12px;margin:22px 0}
.research-filter .ui-input{flex:1}
.research-filter .ui-select{width:190px}
.research-pagination{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:30px;font-size:0.8125rem;color:var(--mu)}
.research-notifications{margin:22px 0}
.research-notification{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:25px;margin-bottom:13px}
.research-notification.unread{border-left:3px solid var(--mu);background:#fcfefb}
.research-notification h2{font-size:1.125rem;margin:0 0 8px}
.research-notification p{font-size:0.875rem;color:var(--mu)}
.research-notification small{font-size:0.75rem;color:#94a092}
.research-empty{text-align:center;padding:50px;color:var(--mu)}
.research-email{border-top:1px solid #e0e8df;padding-top:25px;margin-top:32px}
.research-email h2{font-size:1.25rem}
.notification-entry{font-size:0.8125rem;color:var(--p);padding:8px 9px;white-space:nowrap}
.notification-entry[hidden]{display:none}
.ops-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:28px;align-items:start}
.ops-save{padding:25px;position:sticky;top:100px}
.ops-save .ui-btn{display:flex;width:100%;margin-top:12px}
.ops-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.ops-category{display:grid;grid-template-columns:1.2fr 1.2fr 1fr auto;gap:12px;align-items:end;padding:16px 0;border-bottom:1px solid #e4ebe3}
.ops-category label{display:grid;gap:8px;font-size:0.75rem;color:var(--mu)}
.ops-topic{margin:18px 0;padding:18px;background:#fafcf9;border:1px solid #e3eae1;border-radius:8px}
.ops-topic-cover{display:flex;align-items:center;gap:18px}
.ops-topic-cover img{width:120px;height:75px;object-fit:cover;border-radius:6px}
.ops-data-select{display:grid;grid-template-columns:1fr 1fr;max-height:250px;overflow:auto}
.ops-qr img{width:140px;height:140px;object-fit:contain;border:1px solid #e1e9df;border-radius:8px}
.ops-json{font-family:ui-monospace,monospace;line-height:1.6;font-size:0.8125rem}
#import-preview{margin-top:30px}
#import-preview li{padding:9px 0;font-size:0.875rem;line-height:1.6}

.ops-collections{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.ops-collection{overflow:hidden;display:block}
.ops-collection>img{width:100%;height:230px;object-fit:cover}
.ops-collection>div{padding:28px}
.ops-collection h2{font-size:1.375rem}
.ops-collection p{font-size:0.875rem;color:var(--mu);line-height:1.9;min-height:54px}
.ops-collection span:last-child{font-size:0.875rem;display:flex;align-items:center;gap:12px}
.ops-topic-intro{display:grid;grid-template-columns:35% 1fr;overflow:hidden;margin:20px 0 50px}
.ops-topic-intro img{width:100%;height:230px;object-fit:cover}
.ops-topic-intro p{align-self:center;padding:28px 40px;font-size:1rem;line-height:2;white-space:pre-wrap}

.scientific-metadata p{overflow-wrap:anywhere}
.admin-filters{flex-wrap:wrap}
.admin-list-summary{gap:14px;flex-wrap:wrap}
@media(max-width:900px){.research-detail-grid,.ops-layout{grid-template-columns:1fr}
.ops-save{position:static}
.research-phases{padding:18px 12px;flex-wrap:wrap;gap:14px}
.research-phases li{flex:1 1 25%;font-size:0.75rem}

}@media(max-width:600px){.research-section,.research-action{padding:20px}
.research-facts,.ops-grid,.ops-data-select,.ops-collections{grid-template-columns:1fr}
.ops-category{grid-template-columns:1fr 1fr}
.research-filter{flex-wrap:wrap}
.research-filter .ui-input{flex-basis:100%}
.research-notification,.research-request-card{align-items:flex-start;flex-direction:column}
.research-notification .ui-btn{align-self:flex-end}
.research-message header{flex-wrap:wrap}
.research-phases li{flex-basis:40%}
.ops-topic-intro{grid-template-columns:1fr}
.ops-topic-intro p{padding:22px}
.notification-entry{font-size:0.75rem;padding:5px}
.ops-collection>img{height:185px}

.admin-list-summary .ui-btn{font-size:0.75rem;padding:8px}
.research-pagination{gap:12px}
}

.scientific-metadata{margin-top:26px;color:var(--p)}
.scientific-note{display:flex;align-items:baseline;gap:12px;padding:12px 16px;border-left:2px solid #8eac94;background:#f6f8f4;font-size:0.8125rem;line-height:1.8;color:var(--mu)}
.scientific-note strong{flex-shrink:0;font-size:0.8125rem;font-weight:600;color:var(--p)}

@media(max-width:600px){.scientific-note{display:block;padding:12px 14px}
.scientific-note strong{display:block;margin-bottom:4px}

}

/* ---- request-form.css ---- */
.request-page.container{max-width: 1100px;}
.request-form-panel{margin-top: 28px; padding: clamp(22px, 3vw, 42px); border-radius: 14px;}
.request-form{display: grid; gap: 28px; color: var(--p);}
.request-section-heading{display: flex; align-items: center; justify-content: space-between; gap: 14px;}
.request-section-heading h2{margin: 0; font-size: 1.25rem; line-height: 1.5;}
.request-section-heading > span{flex-shrink: 0; color: var(--mu); font-size: .75rem;}
.request-form em{color: #a85b42; font-style: normal;}
.request-field-grid{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px;}
.request-field{display: grid; gap: 10px; min-width: 0;}
.request-field > label,.request-contact-fields > label,.request-formats legend{font-size: .875rem; font-weight: 600;}
.request-field > label small,.request-formats legend small{margin-left: 7px; color: var(--mu); font-size: .72rem; font-weight: 400;}
.request-field > small{color: var(--mu); line-height: 1.7; font-size: .75rem;}
.svc-page.request-page .request-form .ui-input,.svc-page.request-page .request-form .ui-select,.svc-page.request-page .request-form .ui-textarea{min-width: 0;
  width: 100%;
  margin: 0;
  padding: 13px 15px;
  border-color: #cddbcf;
  border-radius: 7px;
  background-color: #fff;
  color: var(--p);
  font-size: .875rem;
  line-height: 1.65;}
.svc-page.request-page .request-form .ui-input,.svc-page.request-page .request-form .ui-select{min-height: 52px;}
.request-form .ui-textarea{resize: vertical; min-height: 130px;}
.request-form :is(input,textarea)::placeholder{color: var(--mu); opacity: 1;}
.request-formats{border: 0; padding: 0; margin: 0; min-width: 0;}
.request-formats legend{padding: 0; margin-bottom: 12px;}
.request-formats > div{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px;}
.request-formats label{display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 17px 18px;
  border: 1px solid #d5dfd6;
  border-radius: 9px;
  cursor: pointer;
  background: #fafcf9;}
.request-formats label:has(input:checked){border-color: var(--p); background: #edf5ef; box-shadow: inset 0 0 0 1px var(--p);}
.request-formats label:focus-within{outline: 3px solid #bdd6c7; outline-offset: 3px;}
.request-formats input{width: 18px; height: 18px; flex: 0 0 18px; margin: 0; accent-color: var(--p);}
.request-formats label > span{display: grid; gap: 4px;}
.request-formats strong{font-size: 1.05rem; color: var(--p);}
.request-formats label small{color: var(--mu); font-size: .75rem;}
.request-contact{display: grid; gap: 17px; padding: 24px; border-radius: 10px; background: #f0f5f0;}
.request-contact h2{margin: 0 0 5px; font-size: 1rem;}
.request-contact p{margin: 0; font-size: .78rem; line-height: 1.7; color: var(--mu);}
.request-contact > small{font-size: .7rem; color: var(--mu);}
.request-contact-fields{display: grid; grid-template-columns: minmax(120px, .45fr) minmax(0, 1fr); gap: 18px;}
.request-contact-fields > label{display: flex; flex-wrap: wrap; gap: 9px 4px; min-width: 0;}
.request-contact-fields > label .ui-input,.request-contact-fields > label .ui-select{flex-basis: 100%;}
.request-form-error{font-size: .85rem; color: #a14332; margin: -8px 0; line-height: 1.7;}
.request-form-error:empty{display: none;}
.request-submit-row{display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 24px; border-top: 1px solid #e1e9df;}
.request-submit-row p{margin: 0; color: var(--mu); font-size: .78rem; line-height: 1.8;}
.request-submit-row p a{color: var(--p); text-decoration: underline; text-underline-offset: 3px; margin: 0 4px;}
.request-submit-row .request-submit{gap: 24px; min-height: 54px; flex-shrink: 0; padding: 14px 28px; font-size: .95rem; font-weight: 600; border-radius: 7px;}
.request-submit[disabled]{opacity: .7; cursor: wait;}
.request-source{display: flex; flex-wrap: wrap; gap: 8px 15px; padding: 14px 18px; background: #f4f7f2; border-left: 3px solid var(--mu); border-radius: 3px; font-size: .8rem; overflow-wrap: anywhere;}
.request-source span{color: var(--mu);}
.request-source strong{font-weight: 500;}

.research-facts .research-contact{background: #eef5ef; padding: 16px 18px; border-radius: 8px;}
.research-facts .research-contact dd{font-size: 1rem; font-weight: 600; color: var(--p);}
.research-request-notes{border-top: 1px solid #e0e8df; padding-top: 18px; margin-top: 18px;}
.research-request-notes h3{font-size: .85rem; color: var(--mu); margin: 0 0 10px;}
.research-request-notes p{white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.85;}
@media (max-width: 700px){.request-form{gap: 23px;}
.request-field-grid{grid-template-columns: 1fr; gap: 23px;}
.request-contact{padding: 20px 16px;}
.request-formats > div{gap: 8px;}
.request-formats label{padding: 14px 10px; gap: 8px;}
.request-formats strong{font-size: .95rem;}
.request-formats label small{font-size: .68rem;}
.request-submit-row{flex-direction: column; align-items: stretch; gap: 15px;}
.request-submit-row .request-submit{justify-content: center;}
.request-section-heading h2{font-size: 1.1rem;}
}@media (max-width: 400px){.request-contact-fields{grid-template-columns: 1fr;}
.request-formats label{flex-wrap: wrap;}
.request-section-heading > span{font-size: .66rem;}
}/* ---- versioned-access.css ---- */
.versioned-access{container-type:inline-size}
.version-sample-nav{display:flex;gap:.5rem;flex-wrap:wrap;margin:0 0 1rem}
.version-sample-nav a{border:1px solid #cbdccf;background:#f2f7f2;color:var(--p);padding:.6rem .9rem;border-radius:6px;font:inherit;font-size:.85rem;cursor:pointer;overflow-wrap:anywhere}
.version-sample-nav a:hover,.version-sample-nav a[aria-current]{background:var(--p);color:#fff;border-color:var(--p)}

.version-sample{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem 1rem;align-items:center;background:#edf5ee;border-left:3px solid var(--mu);border-radius:3px;padding:1rem;margin-bottom:1.2rem}

.versioned-access .version-sample h4{font-size:.95rem;line-height:1.5;margin:0;color:var(--p);overflow-wrap:anywhere}
.versioned-access .version-sample p{font-size:.75rem;line-height:1.65;margin:.3rem 0 0;color:var(--mu)}
.version-sample small{display:block;font-size:.7rem;margin-top:.3rem;overflow-wrap:anywhere;color:var(--mu)}
.version-sample>.ui-btn{font-size:.8rem;padding:.65rem .9rem;white-space:normal;text-align:center}
.version-sample>[data-sample-result],.version-sample-option>[data-download-result]{grid-column:1/-1;min-width:0}
.version-sample>[data-sample-result]:empty,.version-sample-option>[data-download-result]:empty{display:none}

.version-sku-list{border-block:1px solid #d8e3d9}
.version-sku-list ul{list-style:none;margin:0;padding:0}
.version-sku-list .version-offer-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.8rem;padding:1rem .6rem;margin:0;min-width:0;border-bottom:1px solid #e2e9df}
.version-sku-list .version-offer-row:last-child{border-bottom:0}
.version-sku-list .version-offer-row[hidden],.version-sku-list [data-access-sku-empty][hidden]{display:none}
.version-offer-scope{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;min-width:0}
.version-offer-scope strong{font-size:.95rem;line-height:1.5;color:var(--p);overflow-wrap:anywhere}
.version-offer-price{font-size:.85rem;font-weight:600;color:var(--p);white-space:nowrap}
.version-offer-action{display:flex;align-items:center;justify-content:center;gap:.4rem;font-size:.8rem;line-height:1.4;padding:.55rem .7rem;border:1px solid #cadbcb;border-radius:4px;color:var(--p);white-space:nowrap}
.version-offer-action.is-online{background:var(--p);color:#fff;border-color:var(--p)}
.version-offer-action:hover{box-shadow:0 2px 7px #264f3a1a;border-color:var(--mu)}
.version-offer-action .ui-icon{width:.9rem;height:.9rem}
.versioned-access .version-empty,.version-sample-page .version-empty{font-size:.85rem;line-height:1.85;padding:1rem;color:var(--mu);margin:0}
.version-sample-page{padding:1.5rem}
.version-sample-page>header{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1.2rem;align-items:center;margin-bottom:1.5rem}
.version-sample-page>header img{width:100%;aspect-ratio:1;object-fit:contain;background:#f6f8f3;border-radius:6px}
.version-sample-page>header h2{font-size:1.35rem;margin:.5rem 0;overflow-wrap:anywhere}
.version-sample-page>header p{font-size:.85rem;line-height:1.8;color:var(--mu);margin:.5rem 0 1rem}
.version-sample-option{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem 1.2rem;padding:1.2rem 0;border-top:1px solid #dfe8dc}
.version-sample-option h3{font-size:1rem;margin:0 0 .35rem;color:var(--p);overflow-wrap:anywhere}
.version-sample-option p{font-size:.85rem;line-height:1.75;color:var(--mu);margin:0;white-space:pre-line;overflow-wrap:anywhere}
.version-sample-option small{font-size:.75rem;color:var(--mu);display:block;margin-top:.4rem;overflow-wrap:anywhere}
.version-sample-option>.ui-btn{font-size:.85rem;white-space:normal;text-align:center}
.versioned-access :is(button,a,summary,input):focus-visible,.version-sample-page :is(button,a):focus-visible{outline:2px solid var(--p);outline-offset:3px}
@container(max-width:650px){

.version-sample{grid-template-columns:1fr;padding:.85rem}
.version-sample>.ui-btn{justify-self:start}

.version-sku-list .version-offer-row{grid-template-columns:minmax(0,1fr) auto;gap:.65rem}
.version-offer-scope{grid-column:1/-1;gap:.5rem}
.version-offer-action{justify-self:end}
}@media(max-width:650px){.version-sample-page{padding:1rem}
.version-sample-page>header{grid-template-columns:1fr;gap:.8rem}
.version-sample-page>header img{max-height:11rem;width:100%;aspect-ratio:auto}
.version-sample-option{grid-template-columns:1fr}
.version-sample-option>.ui-btn{justify-self:start}
}/* ---- checkout.css ---- */
.checkout-scope{display: grid;
  gap: 14px;
  margin: 22px 0;
  padding: 20px;
  border-left: 3px solid var(--p);
  border-radius: 5px;
  background: #f0f5ef;}
.checkout-scope > div{display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 14px;}
.checkout-scope dt{color: var(--mu); font-size: .8rem; line-height: 1.7;}
.checkout-scope dd{margin: 0; color: var(--p); font-size: .9rem; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere;}
.live-checkout #checkout-offer{max-width: 100%; font-size: .85rem;}
.live-order-scope{color: var(--p); font-weight: 600;}
@media (max-width: 500px){.checkout-scope{padding: 16px;}
.checkout-scope > div{grid-template-columns: 80px minmax(0, 1fr); gap: 10px;}
}/* ---- copyright.css ---- */
.image-copyright-notice{display:flex;align-items:flex-start;gap:12px;margin:0 0 12px;padding:15px 18px;border:1px solid #e7c79e;border-left:4px solid #a95b27;border-radius:6px;background:#fff7eb;color:#78441f;text-align:left}
.image-copyright-notice .ui-icon{width:22px;height:22px;margin-top:2px;color:#a65a25;flex-shrink:0}
.image-copyright-notice strong{display:block;font-size:.95rem;font-weight:700;line-height:1.5;letter-spacing:.04em}
.image-copyright-notice p{margin:5px 0 0!important;color:#7a4a22!important;font-size:.875rem!important;font-weight:500;line-height:1.8!important;overflow-wrap:anywhere}
.image-copyright-notice>div{min-width:0}
@media(max-width:640px){.image-copyright-notice{padding:12px;gap:9px}
.image-copyright-notice strong{font-size:.8rem}
.image-copyright-notice p{font-size:.74rem!important}
}/* ---- image-preview.css ---- */
.detail-image-link{display:block;position:relative;cursor:zoom-in;border-radius:4px}
.detail-image-link>span{position:absolute;right:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid #d8e4d8;border-radius:5px;background:#fffffff0;color:var(--p);font-size:.8125rem;box-shadow:0 3px 14px #294c3b12}
.detail-image-link>span>.ui-icon{width:17px;height:17px}
.detail-image-link:hover>span{background:#eaf4e8;border-color:#8cae90}
.detail-image-link:focus-visible{outline:2px solid var(--p);outline-offset:4px}
.image-preview-page{--preview-ink:var(--p);--preview-muted:var(--mu);--preview-line:#dce5df;--preview-accent:var(--p)}
.image-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:4px 0 26px}
.image-preview-heading>div{min-width:0}
.image-preview-heading h1{margin:0;font-size:1.65rem;line-height:1.5;font-weight:550;overflow-wrap:anywhere;color:var(--preview-ink)}
.image-preview-heading p{margin:10px 0 0;font-size:.875rem;line-height:1.8;color:var(--preview-muted)}
.image-preview-heading>.ui-btn{flex-shrink:0;font-size:.8125rem}
.image-viewer{display:grid;grid-template-columns:210px minmax(0,1fr);min-width:0;background:#fff;border:1px solid var(--preview-line);border-radius:9px;overflow:hidden;box-shadow:0 10px 34px #294c3d07;color:var(--preview-ink)}
.image-viewer [hidden]{display:none!important}
.preview-sidebar{display:flex;flex-direction:column;min-width:0;min-height:0;background:#f7f9f6;border-right:1px solid var(--preview-line)}
.preview-sidebar>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:22px 18px 18px}
.preview-sidebar h2{margin:0;font-size:.9375rem;line-height:1.5;font-weight:600}
.preview-sidebar>header>span{font-size:.6875rem;color:var(--preview-muted);white-space:nowrap}
.preview-thumbnails{display:flex;flex-direction:column;gap:12px;flex:1;height:0;min-height:0;padding:2px 14px 18px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c0d0c4 transparent}
.preview-thumb{display:block;flex-shrink:0;width:100%;min-width:0;padding:7px;border:1px solid transparent;border-radius:6px;background:transparent;text-align:left;color:var(--mu);transition:background .15s,border-color .15s}
.preview-thumb img{display:block;width:100%;height:100px;object-fit:contain;background:#e9eeea;border-radius:3px;pointer-events:none}
.preview-thumb>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:8px 2px 2px;font-size:.75rem;line-height:1.6}
.preview-thumb:hover{background:#edf3ed;border-color:#cfddd1}
.preview-thumb[aria-pressed="true"]{border-color:var(--mu);background:#e8f0e8;color:var(--p);box-shadow:inset 0 0 0 1px var(--mu)}
.preview-thumb[aria-pressed="true"]>span{font-weight:600}
.preview-sidebar-note{margin:0;padding:16px 18px;border-top:1px solid var(--preview-line);font-size:.6875rem;line-height:1.8;color:var(--mu)}
.preview-main{display:flex;flex-direction:column;min-width:0;min-height:0}
.preview-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 18px;padding:18px 22px;border-bottom:1px solid var(--preview-line);background:#fff}
.preview-current{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;min-width:0;max-width:100%}
.preview-current>strong{min-width:0;font-size:.875rem;font-weight:600;line-height:1.6;overflow-wrap:anywhere}
.preview-current>span{font-size:.6875rem;line-height:1.6;white-space:nowrap;color:var(--preview-muted);font-variant-numeric:tabular-nums}
.preview-controls{display:flex;flex-wrap:wrap;align-items:center;gap:7px;max-width:100%}
.preview-controls>button,.preview-footer button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:40px;min-height:40px;padding:8px 12px;border:1px solid #d9e3db;border-radius:5px;background:#fff;color:var(--p);font-size:.75rem;font-weight:500;line-height:1.5;transition:background .15s,border-color .15s}
.preview-controls>button[data-preview-zoom]{width:40px;padding:8px}
.preview-controls>output{min-width:56px;text-align:center;font-size:.75rem;line-height:1.5;color:var(--p);font-variant-numeric:tabular-nums}
.preview-controls .ui-icon,.preview-footer .ui-icon{width:17px;height:17px}
.preview-controls>button:hover:not(:disabled),.preview-footer button:hover:not(:disabled){border-color:#91ad97;background:#edf4ed;color:var(--p)}
.preview-controls>button[aria-pressed="true"]{background:#e7efe8;border-color:#97b09b;color:var(--p)}
.preview-controls>button:disabled,.preview-footer button:disabled{opacity:.45;cursor:not-allowed}
.image-viewer button:focus-visible,.image-viewer a:focus-visible{outline:2px solid var(--p);outline-offset:2px}
.preview-viewport{position:relative;isolation:isolate;flex-shrink:0;min-width:0;min-height:400px;height:min(68vh,760px);overflow:hidden;background-color:#e9eeeb;background-image:linear-gradient(45deg,#dce4df55 25%,transparent 25%),linear-gradient(-45deg,#dce4df55 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#dce4df55 75%),linear-gradient(-45deg,transparent 75%,#dce4df55 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0;touch-action:pan-y;cursor:default}
.preview-viewport:focus-visible{outline:2px solid var(--p);outline-offset:-3px}
.preview-viewport.is-zoomed,.image-viewer.is-zoomed .preview-viewport{touch-action:none;cursor:grab}
.preview-viewport.is-dragging,.image-viewer.is-dragging .preview-viewport{cursor:grabbing;user-select:none}
.preview-image{position:absolute;left:50%;top:50%;display:block;width:auto;height:auto;max-width:none;max-height:none;object-fit:contain;transform:translate(-50%,-50%);transform-origin:center center;transition:none;animation:none;pointer-events:none;user-select:none;-webkit-user-drag:none}
.preview-status{position:absolute;z-index:2;top:18px;left:50%;transform:translateX(-50%);max-width:calc(100% - 36px);padding:11px 17px;border:1px solid #d8e2db;border-radius:5px;background:#fffffff2;box-shadow:0 3px 14px #314d3c0a;color:var(--p);font-size:.8125rem;line-height:1.75;text-align:center;overflow-wrap:anywhere}
.preview-status:empty{display:none}
.preview-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding:16px 22px;border-top:1px solid var(--preview-line);background:#fff}
.preview-footer>p{flex:1;min-width:180px;margin:0;font-size:.75rem;line-height:1.8;color:var(--preview-muted)}
.preview-footer>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex-shrink:0}
.image-viewer:fullscreen{width:100%;height:100%;max-width:none;max-height:none;border:0;border-radius:0;box-shadow:none;background:#fff}
.image-viewer:fullscreen::backdrop{background:#e9eeeb}
.image-viewer:fullscreen .preview-main{overflow:hidden}
.image-viewer:fullscreen .preview-toolbar,.image-viewer:fullscreen .preview-footer{flex-shrink:0}
.image-viewer:fullscreen .preview-viewport{flex:1;min-height:0;height:auto}
@media(max-width:1100px){.image-viewer{grid-template-columns:176px minmax(0,1fr)}
.preview-sidebar>header{padding:18px 14px 15px}
.preview-thumbnails{padding-right:10px;padding-left:10px}
.preview-thumb img{height:84px}
.preview-toolbar,.preview-footer{padding-right:18px;padding-left:18px}
.preview-toolbar{gap:12px}
}@media(max-width:760px){.image-preview-heading{align-items:flex-start;gap:18px;margin-bottom:20px}
.image-preview-heading h1{font-size:1.375rem}
.image-preview-heading p{font-size:.8125rem}
.image-viewer{display:flex;flex-direction:column}
.preview-main{order:0}
.preview-sidebar{order:1;border-right:0;border-top:1px solid var(--preview-line)}
.preview-sidebar>header{padding:15px 16px 10px}
.preview-thumbnails{flex:none;flex-direction:row;width:100%;height:auto;gap:10px;padding:2px 12px 14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity}
.preview-thumb{width:126px;scroll-snap-align:start}
.preview-thumb img{height:70px}
.preview-thumb>span{font-size:.6875rem;margin-top:6px}
.preview-sidebar-note{padding:10px 16px;font-size:.6875rem}
.preview-toolbar{padding:15px 16px}
.preview-controls{gap:6px}
.preview-controls>button{min-height:40px;padding:8px 10px}
.preview-viewport{height:min(62vh,620px);min-height:340px}
.preview-footer{padding:14px 16px}
.image-viewer:fullscreen .preview-main{flex:1;min-height:0}
.image-viewer:fullscreen .preview-sidebar{flex:none}
.image-viewer:fullscreen .preview-sidebar>header,.image-viewer:fullscreen .preview-sidebar-note{display:none}
.image-viewer:fullscreen .preview-thumbnails{padding:8px 12px}
.image-viewer:fullscreen .preview-thumb{width:100px;padding:5px}
.image-viewer:fullscreen .preview-thumb img{height:48px}
.image-viewer:fullscreen .preview-thumb>span{margin:4px 0 0;font-size:.625rem}
}@media(max-width:480px){.image-preview-heading{flex-direction:column;gap:14px}
.image-preview-heading h1{font-size:1.25rem}
.image-preview-heading>.ui-btn{min-height:40px;padding:8px 13px}
.preview-current{width:100%;justify-content:space-between}
.preview-current>strong{max-width:calc(100% - 64px)}
.preview-controls{width:100%}
.preview-controls>button{font-size:.6875rem;padding:8px}
.preview-controls>output{min-width:48px;font-size:.6875rem}
.preview-viewport{height:54vh;min-height:300px}
.preview-footer>p{flex-basis:100%;min-width:0}
.preview-footer>div{width:100%;justify-content:space-between}
.preview-footer button{min-height:40px;font-size:.6875rem}
.preview-status{top:14px;max-width:calc(100% - 28px);padding:10px 13px;font-size:.75rem}
.image-viewer:fullscreen .preview-toolbar{padding-top:10px;padding-bottom:10px;gap:8px}
.image-viewer:fullscreen .preview-footer{padding-top:9px;padding-bottom:9px;gap:6px}
.image-viewer:fullscreen .preview-footer>p{display:none}
}@media(max-height:540px) and (min-width:761px){.image-viewer:fullscreen{grid-template-columns:150px minmax(0,1fr)}
.image-viewer:fullscreen .preview-toolbar,.image-viewer:fullscreen .preview-footer{padding:10px 16px}
.image-viewer:fullscreen .preview-footer>p{display:none}
.image-viewer:fullscreen .preview-footer{justify-content:flex-end}
.image-viewer:fullscreen .preview-sidebar-note{display:none}
}@media(prefers-reduced-motion:reduce){.image-viewer button{transition:none}
}/* ---- markdown.css ---- */
.markdown-body{min-width:0;color:var(--p);font-size:1rem;line-height:1.9;overflow-wrap:anywhere;white-space:normal}
.markdown-body :is(p,ul,ol,blockquote,pre,table){font-size:inherit;line-height:inherit;color:inherit}
.markdown-body p{margin:0 0 1em;white-space:normal}
.markdown-body :is(h1,h2,h3,h4,h5,h6){font-weight:650;line-height:1.5;color:var(--p);margin:1.5em 0 .65em;letter-spacing:0}
.markdown-body h1,.markdown-body h2{font-size:1.4em}
.markdown-body h3{font-size:1.2em}
.markdown-body h4{font-size:1.08em}
.markdown-body h5,.markdown-body h6{font-size:1em}
.markdown-body> :first-child{margin-top:0}
.markdown-body> :last-child{margin-bottom:0}
.markdown-body ul,.markdown-body ol{padding-left:1.6em;margin:.7em 0 1.2em;list-style-position:outside}
.markdown-body ul{list-style-type:disc}
.markdown-body ol{list-style-type:decimal}
.markdown-body li{display:list-item;padding:0;margin:.25em 0;line-height:1.85}
.markdown-body li> :is(ul,ol){margin:.25em 0 .4em}
.markdown-body li>p{margin:.35em 0}
.markdown-body li>input[type=checkbox]{width:1em;height:1em;margin:0 .45em 0 0;accent-color:var(--p);vertical-align:middle;cursor:default}
.markdown-body strong{font-weight:700;color:var(--p)}
.markdown-body em{font-style:italic}
.markdown-body a{color:var(--p);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.markdown-body a:hover{color:var(--ink)}
.markdown-body a:focus-visible{outline:2px solid var(--mu);outline-offset:3px}
.markdown-body blockquote{border-left:3px solid var(--mu);background:#f1f6ef;padding:.8em 1.1em;margin:1.1em 0;color:var(--mu);border-radius:0 5px 5px 0}
.markdown-body blockquote> :last-child{margin-bottom:0}
.markdown-body code{font-family:Consolas,'SFMono-Regular',monospace;font-size:.87em;background:#eef3ea;border:1px solid #e0e8da;border-radius:4px;padding:.12em .35em;white-space:break-spaces;color:var(--p)}
.markdown-body pre{max-width:100%;overflow:auto;white-space:pre;overflow-wrap:normal;background:#f3f6f0;border:1px solid #dce6d6;padding:1em 1.1em;border-radius:6px;margin:1.1em 0;line-height:1.7}
.markdown-body pre code{padding:0;border:0;background:transparent;white-space:pre;overflow-wrap:normal}
.markdown-body .markdown-table-wrap{max-width:100%;overflow-x:auto;margin:1.2em 0;border:1px solid #dce6d6;border-radius:6px;scrollbar-width:thin}
.markdown-body .markdown-table-wrap:focus-visible{outline:2px solid var(--mu);outline-offset:3px}
.markdown-body table{border-collapse:collapse;border-spacing:0;width:100%;margin:0;line-height:1.65;table-layout:auto}
.markdown-body th,.markdown-body td{border-bottom:1px solid #e1e9db;padding:.7em .9em;text-align:left;min-width:6em;vertical-align:top;color:inherit;font-size:.9em}
.markdown-body th{background:#edf3e8;color:var(--p);font-weight:650}
.markdown-body :is(th,td)[align="center"]{text-align:center}
.markdown-body :is(th,td)[align="right"]{text-align:right}
.markdown-body td+td,.markdown-body th+th{border-left:1px solid #e5ecdf}
.markdown-body tbody tr:last-child td{border-bottom:0}
.markdown-body tbody tr:nth-child(even){background:#f9fbf6}
.markdown-body hr{margin:1.6em 0;border:0;border-top:1px solid #dce5d6}
.markdown-body img{display:block;max-width:100%;height:auto;object-fit:contain;margin:1em 0}
.markdown-body .markdown-fallback{white-space:pre-wrap}
.dt-intro>.markdown-body{margin:24px 0 34px}
.admin-preview-section>.markdown-body{font-size:1rem;margin-top:16px}
@media(max-width:650px){.markdown-body th,.markdown-body td{padding:.6em .7em}
.markdown-body pre{padding:.8em}
.markdown-body blockquote{padding:.7em .9em}
}/* ---- markdown-editor.css ---- */
.markdown-editor{container-type:inline-size;width:100%;min-width:0;border:1px solid #d7e2d8;border-radius:8px;overflow:hidden;background:#fff;color:var(--p)}
.markdown-editor button{font:inherit;font-size:.73rem;line-height:1.5;padding:7px 12px;color:var(--mu);border:1px solid transparent;border-radius:5px;background:transparent;cursor:pointer}
.markdown-editor button:hover:not(:disabled){background:#e6eee1;color:var(--p)}
.markdown-editor button:focus-visible{outline:2px solid var(--p);outline-offset:2px}
.markdown-editor button:disabled{cursor:wait;opacity:.6}
.markdown-editor-toolbar{display:flex;flex-wrap:wrap;gap:5px;padding:10px 12px;border-bottom:1px solid #d7e2d8;background:#f3f7f1}
.markdown-editor-toolbar button{font-size:.72rem;border-color:#dce6d6;background:#fff;padding:6px 11px}
.markdown-editor-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));height:clamp(380px,52vh,560px);min-height:320px;resize:vertical;overflow:hidden}
.markdown-editor-source-pane,.markdown-editor-preview-pane{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}
.markdown-editor-preview-pane{border-left:1px solid #b8cbbb}
.markdown-editor-pane-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:10px 16px;border-bottom:1px solid #e3eadf;background:#f8faf6;line-height:1.6}
.markdown-editor-pane-heading strong{font-size:.78rem;font-weight:600;color:var(--p)}
.markdown-editor-pane-heading span{font-size:.65rem;color:var(--mu)}
.markdown-editor #admin-detail{display:block;flex:1 1 0;width:100%;min-height:0;border:0;border-radius:0;background:#fff;padding:18px 20px;font-family:inherit;font-size:.85rem;line-height:1.85;color:var(--p);resize:none;box-shadow:none;overflow:auto}
.markdown-editor #admin-detail:focus{outline:2px solid var(--mu);outline-offset:-2px}
.markdown-editor #admin-detail[aria-invalid=true]{outline:2px solid #bd8063;outline-offset:-2px}
.markdown-editor-preview{flex:1 1 0;min-height:0;padding:18px 20px;font-size:.85rem;overflow:auto;overflow-wrap:anywhere;background:#fcfdfb;scrollbar-width:thin}
.markdown-editor-preview:focus-visible{outline:2px solid var(--mu);outline-offset:-2px}
.markdown-editor-preview .markdown-editor-empty{color:var(--mu);font-size:.8rem;line-height:1.8}
.markdown-editor-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-top:1px solid #d7e2d8;background:#fafcf8;padding:11px 14px;font-size:.66rem;line-height:1.7;color:var(--mu)}
.markdown-editor-footer [data-markdown-count]{white-space:nowrap;font-variant-numeric:tabular-nums}
.markdown-editor .markdown-editor-status{margin:0;padding:10px 14px;background:#fff5e9;border-top:1px solid #ebdcc9;color:#946744;font-size:.7rem;line-height:1.7}
.markdown-editor [hidden]{display:none}
@container(max-width:580px){.markdown-editor-split{grid-template-columns:1fr;height:auto;min-height:0;resize:none}
.markdown-editor-source-pane,.markdown-editor-preview-pane{height:320px}
.markdown-editor-preview-pane{border-left:0;border-top:1px solid #b8cbbb}
.markdown-editor #admin-detail,.markdown-editor-preview{padding:14px}
.markdown-editor-toolbar{padding:8px}
.markdown-editor-toolbar button{padding:6px 9px}
.markdown-editor-footer{flex-wrap:wrap;gap:5px}
.markdown-editor-footer [data-markdown-count]{margin-left:auto}
}/* ---- legacy-bridge.css ---- */
.markdown-body{color:var(--t2);font-size:15px;line-height:1.85}
.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:var(--tx);font-family:var(--sans)}
.markdown-body a{color:var(--p)}
.markdown-body table{font-size:14px}
.markdown-body code{font-family:var(--mono)}
.dt-content .scientific-note,.admin-preview-content .scientific-note{border:0;border-left:0;background:var(--was);color:var(--wa);border-radius:8px;padding:12px 14px;font-size:13px}
.dt-content .scientific-note strong{color:var(--wa)}

.page-heading h1,.svc-page h1,.ed-page h1{font-family:var(--serif)}
.live-error,.request-form-error{color:var(--da)}
.ui-panel h2{font-size:18px}
.live-auth-card{border-radius:var(--r-lg)}
.research-request-card,.live-order{border-radius:var(--r-lg)}
.image-copyright-notice{border-radius:8px}
body:not(.admin-mode) .app-root{min-height:60vh}
.preview-stage{position:relative;display:flex;flex-direction:column;flex:1;min-height:0}
.preview-stage>.preview-viewport{flex:1}
.preview-arrow{position:absolute;top:50%;z-index:5;width:60px;height:96px;margin-top:-48px;border:0;border-radius:12px;background:rgba(15,42,37,.78);color:#fff;font-size:52px;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.25);cursor:pointer;transition:background .15s,transform .15s}
.preview-arrow:hover{background:var(--p);transform:scale(1.05)}
.preview-arrow:focus-visible{outline:3px solid #fff;outline-offset:2px}
.preview-arrow.is-prev{left:20px}
.preview-arrow.is-next{right:20px}
.preview-arrow:disabled{opacity:.25;cursor:not-allowed;transform:none}
@media (max-width:860px){.preview-arrow{width:44px;height:68px;margin-top:-34px;font-size:38px}
.preview-arrow.is-prev{left:8px}
.preview-arrow.is-next{right:8px}
}/* ---- 性能 ---- */
/* 吸顶头部不再使用毛玻璃（backdrop-filter 会让滚动时每帧重绘头部下方的内容）。 */
/* 首屏以下的大块区域在进入视口前不排版、不绘制，长页面滚动更轻。 */
.home-section,.site-footer{content-visibility:auto;contain-intrinsic-size:auto 900px}
/* 详情页：相关推荐两列卡片；右侧定制服务卡片随滚动停留 */
.dt-related-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
@media(min-width:1041px){.dt-side{position:sticky;top:85px}}
/* 首页：搜索框下方的“一站式”三种获取方式 */

/* 首页标题与简介：放宽标题宽度，换行时各行长度均衡，避免单字落到第二行 */
.hero-title{max-width:1040px;text-wrap:balance}
.hero-description{max-width:660px;text-wrap:balance}
.hero-title>span{display:inline-block}

/* 提交需求：上架周期说明（联系方式改为选填） */
.request-timeline{margin:4px 0 0;padding:16px 20px;border:1px solid var(--pl);border-left:4px solid var(--p);border-radius:8px;background:var(--ps)}
.request-timeline strong{display:block;color:var(--p);font-size:16px;line-height:1.5}
.request-timeline p{margin:6px 0 0;color:var(--t2);font-size:14px;line-height:1.7}
#request-contact-heading small{margin-left:6px;font-size:13px;font-weight:400;color:var(--mu)}
/* 提交需求：未登录时的滑块安全验证 */
.slider-check{display:flex;flex-direction:column;gap:10px;padding:16px 20px;border:1px solid var(--ln);border-radius:8px;background:var(--bg)}
.slider-check-head{display:flex;align-items:baseline;gap:10px}
.slider-check-head strong{font-size:15px;color:var(--tx)}
.slider-check-head small{font-size:13px;color:var(--mu)}
.slider-track{position:relative;height:44px;max-width:420px;border:1px solid var(--ln2);border-radius:8px;background:#fff;overflow:hidden;touch-action:none;user-select:none}
.slider-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--ps)}
.slider-gap{position:absolute;top:6px;bottom:6px;width:40px;margin-left:-20px;border:2px dashed var(--p);border-radius:6px;background:rgba(30,90,76,.08)}
.slider-handle{position:absolute;left:0;top:0;width:44px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;background:var(--p);color:#fff;cursor:grab;box-shadow:0 2px 6px rgba(15,42,37,.25);touch-action:none}
.slider-handle .ui-icon{width:18px;height:18px}
.slider-handle:focus-visible{outline:3px solid var(--pl);outline-offset:2px}
.slider-handle:disabled{cursor:default}
.slider-check[data-state="drag"] .slider-handle{cursor:grabbing}
.slider-check:not([data-state="drag"]) .slider-handle,.slider-check:not([data-state="drag"]) .slider-fill{transition:transform .25s,width .25s}
.slider-status{margin:0;font-size:13px;color:var(--mu)}
.slider-check[data-state="ok"] .slider-handle{background:var(--ok)}
.slider-check[data-state="ok"] .slider-gap{border-style:solid;border-color:var(--ok)}
.slider-check[data-state="ok"] .slider-status{color:var(--ok);font-weight:600}
.slider-check[data-state="error"] .slider-status{color:var(--da)}
/* 需求详情：当前进度说明卡片（四步进度：提交需求 → 需求已查看 → 数据处理中 → 数据已上架） */
.research-status{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:16px 0;padding:18px 22px;border-left:4px solid var(--in)}
.research-status h2{font-size:18px;margin:0}
.research-status p{margin:6px 0 0;color:var(--t2);font-size:14px}
.research-status.is-viewed{border-left-color:var(--p)}
.research-status.is-processing{border-left-color:#C0841A}
.research-status.is-listed{border-left-color:var(--ok);background:var(--oks)}
.research-status.is-closed{border-left-color:var(--mu)}
.research-status-reason{color:var(--tx)!important}
.research-phases.is-closed{opacity:.55}
/* 版本说明：样例下载页与“样例与获取”中，位于下载按钮之前 */
.version-note-box{margin:10px 0 4px;padding:10px 14px;border-left:3px solid var(--p);border-radius:6px;background:var(--ps)}
.version-note-box strong{display:block;font-size:13px;color:var(--p)}
.version-note-box p{margin:4px 0 0!important;font-size:14px;line-height:1.7;color:var(--t2);white-space:pre-line}
/* 商品编辑：版本说明输入框 */
.va-note{display:flex;flex-direction:column;gap:6px;margin:12px 0 4px;font-size:14px;font-weight:600;color:var(--tx)}
.va-note small{font-weight:400;color:var(--mu)}
.va-note textarea{font-weight:400;resize:vertical}
/* 商品页：交付内容提示（完整数据附带说明文档）突出显示 */
.dt-assure .is-key{color:var(--p);font-weight:600}
.va-version-heading label:has([data-version-field="group"]){flex:0 1 240px}
/* 样例与获取：同一分辨率下的多个版本（如 30m 版本1 / 版本2）展开后切换 */
.version-member-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.version-member-tabs button{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:44px;padding:8px 16px;border:1px solid var(--ln2);border-radius:8px;background:var(--sf);color:var(--tx);font-size:15px;font-weight:600}
.version-member-tabs button small{font-size:12px;font-weight:400;color:var(--mu)}
.version-member-tabs button:hover{border-color:var(--p)}
.version-member-tabs button[aria-selected="true"]{border-color:var(--p);background:var(--ps);color:var(--p);box-shadow:inset 0 0 0 1px var(--p)}
/* 商品页：尚未选择获取条目时的提示 */

/* 商品页：收藏按钮与收藏人数 */
.dt-fav-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;flex:0 0 auto}
.dt-fav-count{font-size:12px;color:var(--mu);white-space:nowrap}
/* 商品编辑：SKU 标签行（时间频率 / 合成方式 / 空间范围） */
.va-sku-tags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:6px 0 0 44px}
.va-sku-tags label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--mu)}
.va-sku-tags .ui-select,.va-sku-tags .ui-input{min-height:34px;font-size:13px}
@media(max-width:760px){.va-sku-tags{grid-template-columns:1fr;margin-left:0}}
/* 多条目订单：条目清单与下载弹窗 */
.order-items{list-style:none;margin:12px 0;padding:0;border:1px solid var(--ln);border-radius:8px}
.order-items li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--ln)}
.order-items li:first-child{border-top:0}
.order-items li span{display:flex;flex-direction:column;gap:2px;min-width:0}
.order-items small{font-size:12px;color:var(--mu)}
.order-items b{font-family:var(--mono);white-space:nowrap}
.live-download-items{margin:12px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:10px;max-height:60vh;overflow:auto}
.live-download-items li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.live-download-items a{color:var(--p);font-weight:600}
.live-extraction-inline{font-size:13px;color:var(--t2)}
/* ---- 样例与获取（重新设计）：版本选择为主、样例为辅；条目带标签，可多选一起购买 ---- */
.versioned-access .version-member-switch{display:flex;flex-direction:column;gap:10px;margin:0 0 18px;padding:16px;border-radius:10px;background:var(--ps)}
.versioned-access .version-member-label{font-size:14px;font-weight:700;color:var(--p)}
.versioned-access .version-member-tabs{margin:0;gap:10px}
.versioned-access .version-member-tabs button{min-width:150px;min-height:62px;padding:10px 18px;border:2px solid var(--ln2);border-radius:10px;background:#fff;font-size:18px}
.versioned-access .version-member-tabs button strong{font-size:18px}
.versioned-access .version-member-tabs button small{font-size:13px}
.versioned-access .version-member-tabs button[aria-selected="true"]{border-color:var(--p);background:#fff;color:var(--p);box-shadow:0 0 0 3px var(--pl)}
.versioned-access .version-sample{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 14px;padding:8px 12px;border:1px dashed var(--ln2);border-left:1px dashed var(--ln2);border-radius:8px;background:transparent}
.version-sample-label{font-size:13px;font-weight:600;color:var(--t2)}
.version-sample-name{flex:1;min-width:0;font-size:13px;color:var(--mu);overflow-wrap:anywhere}
.version-sample-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:0;border-radius:6px;background:none;color:var(--p);font-size:13px;font-weight:600;cursor:pointer}
.version-sample-btn:hover{background:var(--ps)}
.version-sample-btn:disabled{color:var(--mu);cursor:default;background:none}
.version-sample-btn .ui-icon{width:15px;height:15px}
.versioned-access .version-sample [data-sample-result]{flex-basis:100%}
.versioned-access .version-sku-list .version-offer-row{grid-template-columns:28px minmax(0,1fr) auto auto}
.version-offer-check{display:flex;align-items:center;justify-content:center}
.version-offer-check input{width:18px;height:18px;accent-color:var(--p)}
.version-offer-scope{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;min-width:0}
.version-offer-tags{display:inline-flex;flex-wrap:wrap;gap:6px}
.version-offer-tags span{padding:2px 8px;border-radius:4px;background:var(--ps);color:var(--p);font-size:12px;font-weight:500}
.access-pick-bar{position:sticky;bottom:12px;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;padding:12px 16px;border:1px solid var(--pl);border-radius:12px;background:#fff;box-shadow:0 10px 30px rgba(15,42,37,.14)}
.access-pick-summary{flex:1;min-width:180px;font-size:14px;color:var(--t2)}
.access-pick-summary b{font-family:var(--mono);color:var(--tx)}
@media(max-width:640px){.versioned-access .version-sku-list .version-offer-row{grid-template-columns:28px minmax(0,1fr) auto}.versioned-access .version-sku-list .version-offer-action{grid-column:2/-1}.versioned-access .version-member-tabs button{min-width:0;flex:1}}
/* 批量选择：竖向按版本列出，勾选年份 */

/* 商品页选择区：时间频率切换 */

/* 关于我们 */
.about-hero{padding:28px 0 8px}
.about-hero h1{font-family:var(--serif);font-size:36px;margin:6px 0 12px}
.about-hero>p{max-width:820px;font-size:16px;line-height:1.9;color:var(--t2)}
.about-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:24px 0 8px;border-radius:12px;overflow:hidden;background:var(--pl)}
.about-stats>div{display:flex;flex-direction:column;gap:6px;padding:22px 20px;background:var(--ink);color:#fff}
.about-stats strong{font-family:var(--mono);font-size:26px}
.about-stats span{font-size:13px;color:rgba(255,255,255,.75)}
.about-block{margin:36px 0;padding:28px;border:1px solid var(--ln);border-radius:12px;background:var(--sf)}
.about-block h2{font-family:var(--serif);font-size:22px;margin:0 0 14px}
.about-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.about-offers article{padding:16px;border-radius:10px;background:var(--ps)}
.about-offers h3{font-size:16px;margin:0 0 8px;color:var(--p)}
.about-offers p{font-size:14px;line-height:1.75;color:var(--t2);margin:0}
.about-two{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.about-two ul{margin:10px 0 0;padding-left:20px;line-height:2;color:var(--t2)}
.about-timeline{list-style:none;margin:0;padding:0;border-left:2px solid var(--pl)}
.about-timeline li{position:relative;padding:0 0 14px 18px;color:var(--t2);line-height:1.7}
.about-timeline li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--p)}
.about-timeline b{display:block;font-family:var(--mono);color:var(--tx)}
.about-tags{display:flex;flex-wrap:wrap;gap:10px}
.about-tags span{padding:8px 16px;border-radius:999px;background:var(--ps);color:var(--p);font-size:14px}
.about-contact{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px}
.about-contact dl{display:flex;flex-wrap:wrap;gap:10px 28px;margin:10px 0 0}
.about-contact dt{font-size:12px;color:var(--mu)}
.about-contact dd{margin:2px 0 0;font-weight:600}
@media(max-width:900px){.about-stats,.about-offers{grid-template-columns:repeat(2,minmax(0,1fr))}.about-two{grid-template-columns:1fr}}
/* 定制服务页 */
.svc2-hero{padding:24px 0 8px}
.svc2-hero h1{font-family:var(--serif);font-size:36px;margin:6px 0 10px}
.svc2-hero>p{max-width:760px;font-size:16px;line-height:1.85;color:var(--t2);margin-bottom:18px}
.svc2-block{margin:32px 0;padding:26px;border:1px solid var(--ln);border-radius:12px;background:var(--sf)}
.svc2-block h2{font-family:var(--serif);font-size:22px;margin:0 0 16px}
.svc2-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.svc2-card{display:flex;flex-direction:column;gap:8px;padding:18px;border:1px solid var(--ln);border-radius:10px;background:#fff;transition:border-color .15s,box-shadow .15s}
.svc2-card:hover{border-color:var(--p);box-shadow:var(--shadow)}
.svc2-card h3{font-size:17px;margin:0;color:var(--tx)}
.svc2-card p{font-size:14px;line-height:1.75;color:var(--t2);margin:0}
.svc2-card small{font-size:12px;color:var(--mu)}
.svc2-card-go{margin-top:auto;font-size:13px;font-weight:600;color:var(--p)}
.svc2-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;counter-reset:none}
.svc2-steps li{display:flex;gap:12px;padding:16px;border-radius:10px;background:var(--ps)}
.svc2-steps b{flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:var(--p);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono)}
.svc2-steps strong{display:block;margin-bottom:4px}
.svc2-steps p{margin:0;font-size:13px;line-height:1.7;color:var(--t2)}

.svc2-faq{margin:0;display:flex;flex-direction:column;gap:12px}
.svc2-faq dt{font-weight:700}
.svc2-faq dd{margin:4px 0 0;font-size:14px;color:var(--t2)}

@media(max-width:900px){.svc2-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.svc2-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.svc2-cards,.svc2-steps{grid-template-columns:1fr}}
/* 首页：统计数字展示（替代三张卡片与热门检索） */
.hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin-top:14px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(8,20,18,.55);overflow:hidden}
.hero-stats>div{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:20px 24px;border-left:1px solid rgba(255,255,255,.14);text-align:left}
.hero-stats>div:first-child{border-left:0}
.hero-stats strong{font-family:var(--mono);font-size:34px;font-weight:700;line-height:1.1;color:#fff}
.hero-stats span{font-size:14px;color:rgba(255,255,255,.78)}
@media(max-width:760px){.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-stats>div:nth-child(3){border-left:0}.hero-stats>div:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}.hero-stats strong{font-size:26px}.hero-stats>div{padding:14px 16px}}
.hero-stats strong small{margin-left:6px;font-size:.5em;font-weight:600;color:rgba(255,255,255,.82)}
/* 选购框层级：选定分辨率后，下级（具体版本、获取条目）放进缩进子面板；条目多时在框内滚动 */

/* 完整数据获取：条目多时列表在框内滚动；具体版本内容与上级区分 */
.versioned-access .version-sku-list{border:1px solid var(--ln2);border-radius:8px}
.versioned-access .version-sku-list ul{max-height:420px;overflow-y:auto;overscroll-behavior:contain}
.versioned-access .version-member{margin-left:4px;padding-left:14px;border-left:3px solid var(--pl)}

/* 手机：选购框与完整数据获取的紧凑布局——减少层层缩进，年份一行多个，条目一行显示 */
@media(max-width:640px){
.dt-content{padding:20px 14px 24px}
.dt-box{padding:16px;gap:14px}

.versioned-access .version-member{margin-left:0;padding-left:8px;border-left-width:2px}
.versioned-access .version-member-switch{padding:10px;margin-bottom:12px}
.versioned-access .version-member-tabs button{min-height:52px;padding:8px 12px}
.versioned-access .version-sample{flex-wrap:nowrap;padding:8px 10px}
.versioned-access .version-sample-name{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}
.versioned-access .version-sample-btn{flex:0 0 auto}
.versioned-access .version-sample-label{display:none}
.versioned-access .version-sku-list ul{max-height:360px}
.versioned-access .version-sku-list .version-offer-row{grid-template-columns:24px minmax(0,1fr) auto auto;gap:8px;padding:10px 8px}
.versioned-access .version-sku-list .version-offer-scope{grid-column:auto;display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.versioned-access .version-sku-list .version-offer-scope strong{font-size:15px}
.versioned-access .version-offer-tags{display:none}
.versioned-access .version-offer-price{font-size:14px}
.versioned-access .version-sku-list .version-offer-action{grid-column:auto;justify-self:end;padding:6px 10px;font-size:13px}
.versioned-access .version-sku-list .version-offer-action .ui-icon{display:none}
.access-pick-bar{bottom:8px;gap:8px;padding:10px}
.access-pick-bar .access-pick-summary{flex:1 0 100%}
.access-pick-bar .ui-btn{flex:1;min-height:38px;padding:0 8px;font-size:13px}
}
/* 数据说明 · 版本区别：一句话简介醒目在前，方法与细节折叠在后 */
.dt-versions{display:flex;flex-direction:column;gap:14px;padding:20px;border:1px solid var(--pl);border-radius:12px;background:linear-gradient(180deg,var(--ps),var(--sf) 70%)}
.dt-versions-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px}
.dt-versions-head h3{margin:0;font-size:18px;color:var(--tx)}
.dt-versions-head span{font-size:13px;color:var(--mu)}
.dt-ver-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;align-items:start}
.dt-ver-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid var(--ln2);border-radius:10px;background:var(--sf)}
.dt-ver-card header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dt-ver-res{padding:2px 10px;border-radius:999px;background:var(--p);color:#fff;font-size:13px;font-weight:700;line-height:1.6}
.dt-ver-card header strong{font-size:16px;color:var(--p)}
.dt-ver-summary{margin:0!important;font-size:15px;font-weight:600;line-height:1.6;color:var(--tx)}
.dt-ver-more{border-top:1px dashed var(--ln2);padding-top:8px}
.dt-ver-more summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--p);list-style:none}
.dt-ver-more summary::-webkit-details-marker{display:none}
.dt-ver-more summary::after{content:" ▾"}
.dt-ver-more[open] summary::after{content:" ▴"}
.dt-ver-more p{margin:8px 0 0!important;font-size:13px;line-height:1.75;color:var(--t2)}
.dt-ver-more .dt-ver-ref{font-size:12px;color:var(--mu)}

.version-note-pointer{margin:0 0 10px;font-size:13px;color:var(--mu)}
.version-note-pointer a{color:var(--p);font-weight:600}
@media(max-width:640px){.dt-versions{padding:14px}.dt-ver-grid{grid-template-columns:1fr}}
.dt-ver-fit{margin:0!important;padding:6px 10px;border-radius:6px;background:var(--ps);color:var(--p);font-size:13.5px;font-weight:600;line-height:1.55}
.dt-ver-fit::before{content:"✓ ";}
.dt-ver-freqs{display:inline-flex;gap:4px;margin-left:auto}
.dt-ver-freq{display:inline-block;padding:1px 8px;border:1px solid var(--pl);border-radius:4px;background:var(--sf);color:var(--p);font-size:12px;font-weight:600;line-height:1.6}


/* 完整数据获取：一排分辨率按钮，选中后下方只显示该分辨率的版本与条目 */
.version-res-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 0}
.version-res-tabs button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:132px;padding:12px 20px;border:2px solid var(--ln2);border-radius:12px;background:var(--sf);color:var(--tx);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}
.version-res-tabs button strong{font-size:22px;line-height:1.2;font-family:var(--mono)}
.version-res-tabs button small{font-size:12.5px;color:var(--mu)}
.version-res-tabs button:hover{border-color:var(--p)}
.version-res-tabs button[aria-selected="true"]{border-color:var(--p);background:var(--p);color:#fff;box-shadow:0 6px 16px rgba(15,42,37,.18)}
.version-res-tabs button[aria-selected="true"] small{color:rgba(255,255,255,.82)}
.versioned-access .version-access-list{margin-top:14px}
.version-res-panel{padding:18px;border:1px solid var(--ln2);border-top:3px solid var(--p);border-radius:12px;background:var(--sf)}
.version-res-panel[hidden]{display:none}
.version-custom-strip{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:14px;padding:12px 16px;border:1px dashed var(--ln2);border-radius:10px;font-size:13.5px;line-height:1.6;color:var(--t2)}
.version-custom-title{font-weight:600;color:var(--tx)}
.version-custom-strip>span:nth-child(2){flex:1 1 280px}
.version-custom-strip a{color:var(--p);font-weight:600;white-space:nowrap}
@media(max-width:640px){.version-res-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.version-res-tabs button{flex:0 0 auto;min-width:104px;padding:10px 14px}.version-res-tabs button strong{font-size:19px}.version-res-panel{padding:10px}}

/* 时间频率切换（逐年 / 逐月）：选购框里是分段按钮，完整数据获取里是贴在条目列表上方的页签 */

.version-freq-switch{display:flex;align-items:flex-end;gap:6px;margin:16px 0 0;padding-left:2px}
.version-freq-label{align-self:center;margin:0 8px 0 0;line-height:1;font-size:13px;font-weight:700;color:var(--p)}
.version-freq-switch button{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;min-height:0;padding:0 22px;line-height:1;border:1px solid var(--ln2);border-bottom:0;border-radius:10px 10px 0 0;background:var(--ps);color:var(--t2);font-size:16px;cursor:pointer;position:relative}
.version-freq-switch button strong{font-weight:700}
.version-freq-switch button small{font-size:12.5px;color:var(--mu)}
.version-freq-switch button:hover{color:var(--p)}
.version-freq-switch button[aria-selected="true"]{height:48px;padding-top:3px;background:#fff;color:var(--p);border-color:var(--p);box-shadow:inset 0 3px 0 var(--p);margin-bottom:-1px;z-index:1}
.versioned-access .version-sku-list.has-freq{border-top-left-radius:0;border-color:var(--p)}
@media(max-width:640px){.version-freq-switch{margin-top:12px}.version-freq-label{display:none}.version-freq-switch button{flex:1;justify-content:center;padding:0 10px;font-size:15px}}

/* 详情页右侧摘要：价格、概况与分辨率快捷按钮（选年份 / 地区与购买都在下方“完整数据获取”） */
.dt-sum-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.dt-sum-price>small{font-size:13px;color:var(--mu)}
.dt-sum-price.is-manual{font-size:17px;font-weight:600;color:var(--tx)}
.dt-sum-facts{display:flex;flex-wrap:wrap;gap:6px;margin:-6px 0 0}
.dt-sum-facts span{padding:3px 10px;border-radius:999px;background:var(--ps);color:var(--p);font-size:12.5px;font-weight:600}
.dt-sum-label{margin:0 0 -8px;font-size:13px;color:var(--mu)}
.dt-sum-jumps{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}
.dt-sum-jumps button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:10px 12px;border:1px solid var(--ln2);border-radius:10px;background:var(--sf);color:var(--tx);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}
.dt-sum-jumps button strong{font-family:var(--mono);font-size:17px;font-weight:600;line-height:1.1}
.dt-sum-jumps button small{font-size:12px;color:var(--mu)}
.dt-sum-jumps button:hover{border-color:var(--p);background:var(--ps)}
.dt-summary .dt-actions .ui-btn{flex:1 1 160px;justify-content:center}

/* 条目列表：“年份 / 地区”按年份折叠，展开后列出各地区；可按地区筛选 */
.version-region-filter{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 0}
.version-region-filter label{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;color:var(--p)}
.version-region-filter select{min-width:180px;height:38px;padding:0 10px;border:1px solid var(--ln2);border-radius:8px;background:#fff;color:var(--tx);font-size:14px}
.version-region-all{height:38px;padding:0 14px;border:1px solid var(--p);border-radius:8px;background:#fff;color:var(--p);font-size:13px;font-weight:600;cursor:pointer}
.version-region-all:hover{background:var(--ps)}
.version-region-filter+.version-sku-list,.version-region-filter+.version-freq-switch{margin-top:12px}
.versioned-access .version-sku-list .is-filtered{display:none}
.version-year-group{border-bottom:1px solid var(--ln)}
.version-year-group>details>summary{display:flex;align-items:center;gap:12px;min-height:56px;padding:0 16px;cursor:pointer;list-style:none}
.version-year-group>details>summary::-webkit-details-marker{display:none}
.version-year-group>details>summary:hover{background:var(--ps)}
.version-year-caret{width:8px;height:8px;margin:0 4px 0 6px;border-right:2px solid var(--p);border-bottom:2px solid var(--p);transform:rotate(-45deg);transition:transform .15s}
.version-year-group>details[open] .version-year-caret{transform:rotate(45deg)}
.version-year-group>details>summary strong{font-size:16px;color:var(--p)}
.version-year-meta{font-size:13px;color:var(--mu)}
.version-year-picked{padding:2px 8px;border-radius:999px;background:var(--p);color:#fff;font-size:12px;font-weight:600}
.version-year-all{margin-left:auto;height:30px;padding:0 12px;border:1px solid var(--ln2);border-radius:999px;background:#fff;color:var(--p);font-size:12.5px;cursor:pointer}
.version-year-all:hover{border-color:var(--p)}
.version-year-group>details[open]>summary{background:var(--ps)}
.version-year-group>details>ul{list-style:none;margin:0;padding:0 0 0 22px;background:#fbfcfb;border-top:1px solid var(--ln)}
.version-year-group>details>ul>.version-offer-row:last-child{border-bottom:0}
@media(max-width:640px){.version-region-filter label{width:100%}.version-region-filter select{flex:1;min-width:0}.version-region-all{width:100%}.version-year-group>details>summary{flex-wrap:wrap;gap:4px 10px;padding:10px 12px}.version-year-all{margin-left:0}.version-year-group>details>ul{padding-left:8px}}
/* 手机上摘要只保留价格、分辨率按钮和购买按钮；“联系老师”由页面右下角浮动按钮提供，人数说明省略 */
@media(max-width:640px){.dt-summary .dt-help,.dt-summary .dt-social{display:none}.dt-summary .dt-actions .ui-btn{flex:1 1 0;min-width:0;padding-inline:10px}.dt-sum-jumps{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.dt-sum-jumps button{align-items:center;padding:8px 4px;text-align:center}.dt-sum-jumps button strong{font-size:15px}.dt-sum-jumps button small{font-size:11px}}

/* 同系列指标切换（标题下方）与右侧同类数据推荐 */
.dt-series{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:14px}
.dt-series-label{font-size:13px;color:var(--mu)}
.dt-series-items{display:inline-flex;flex-wrap:wrap;gap:6px}
.dt-series-item{display:inline-flex;align-items:center;height:34px;padding:0 16px;border:1px solid var(--ln2);border-radius:999px;background:var(--sf);color:var(--tx);font-size:14px;font-weight:600;text-decoration:none}
a.dt-series-item:hover{border-color:var(--p);color:var(--p)}
.dt-series-item[aria-current]{background:var(--p);border-color:var(--p);color:#fff}
.dt-similar ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.dt-similar li a{display:flex;align-items:center;gap:12px;padding:8px;margin:0 -8px;border-radius:10px;color:var(--tx);text-decoration:none}
.dt-similar li a:hover{background:var(--ps)}
.dt-similar img{flex:none;width:64px;height:48px;object-fit:cover;border-radius:6px;border:1px solid var(--ln)}
.dt-similar li span{display:flex;flex-direction:column;gap:2px;min-width:0}
.dt-similar b{font-size:14px;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.dt-similar small{font-size:12px;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dt-similar-more{font-size:13px;font-weight:600;color:var(--p);text-decoration:none}
.dt-similar-more:hover{text-decoration:underline}

/* 同系列：“全部 N 项”链接；系列总览商品的指标目录 */
.dt-series-all{display:inline-flex;align-items:center;height:34px;padding:0 6px 0 4px;color:var(--p);font-size:13.5px;font-weight:600;text-decoration:none}
.dt-series-all:hover{text-decoration:underline}
.dt-series-dir .dt-dir-group{margin-top:22px}
.dt-series-dir .dt-dir-group h3{display:flex;align-items:baseline;gap:8px;margin:0 0 10px;font-size:17px;color:var(--tx)}
.dt-series-dir .dt-dir-group h3 small{font-size:12.5px;font-weight:400;color:var(--mu)}
.dt-series-dir ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.dt-series-dir li a{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--ln2);border-radius:10px;background:var(--sf);color:var(--tx);text-decoration:none;transition:border-color .15s,background .15s}
.dt-series-dir li a:hover{border-color:var(--p);background:var(--ps)}
.dt-series-dir li img{flex:none;width:72px;height:52px;object-fit:cover;border-radius:6px;border:1px solid var(--ln)}
.dt-series-dir li span{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.dt-series-dir li b{font-size:15px}
.dt-series-dir li small{font-size:12px;color:var(--mu)}
.dt-series-dir li i{font-style:normal;font-size:20px;color:var(--p)}
.dt-series-dir .version-custom-strip{margin-top:22px}

/* 定制服务（合并“提交需求”“联系数据老师”）：四种情况、需求类型切换、表单 + 联系卡片 */
button.svc2-card{font:inherit;text-align:left;cursor:pointer}
.svc-cases{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.svc-case{display:flex;flex-direction:column;gap:10px;padding:20px;border:1px solid var(--ln);border-radius:12px;background:#fff}
.svc-case.is-featured{border-color:var(--p);box-shadow:inset 0 3px 0 var(--p)}
.svc-case-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--ps);color:var(--p)}
.svc-case-icon .ui-icon{width:22px;height:22px}
.svc-case h3{display:flex;flex-direction:column;gap:2px;margin:0;font-size:18px;color:var(--tx)}
.svc-case h3 small{font-size:13px;font-weight:500;color:var(--p)}
.svc-case p{margin:0;font-size:14px;line-height:1.75;color:var(--t2)}
.svc-case ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--t2)}
.svc-case li::before{content:"✓ ";color:var(--p);font-weight:700}
.svc-case-go{margin-top:auto;align-self:flex-start;padding:8px 14px;border:1px solid var(--p);border-radius:8px;background:#fff;color:var(--p);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}
.svc-case.is-featured .svc-case-go,.svc-case-go:hover{background:var(--p);color:#fff}
.svc-form-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:16px}
.svc-form-head h2{margin:0}.svc-form-head p{margin:0;color:var(--t2);font-size:14px}
.svc-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}
.svc-form-layout .request-form-panel{margin-top:0}
.svc-type-switch{margin:0;padding:0;border:0}
.svc-type-switch legend{margin-bottom:10px;font-size:15px;font-weight:700;color:var(--tx)}
.svc-type-switch>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.svc-type-switch label{position:relative;cursor:pointer}
.svc-type-switch input{position:absolute;opacity:0;pointer-events:none}
.svc-type-switch span{display:flex;flex-direction:column;gap:2px;height:100%;padding:12px;border:1px solid var(--ln2);border-radius:10px;background:#fff;color:var(--tx)}
.svc-type-switch span .ui-icon{width:20px;height:20px;color:var(--p);margin-bottom:4px}
.svc-type-switch strong{font-size:14.5px}
.svc-type-switch small{font-size:12px;color:var(--mu)}
.svc-type-switch input:checked+span{border-color:var(--p);background:var(--ps);box-shadow:inset 0 0 0 1px var(--p)}
.svc-type-switch input:focus-visible+span{outline:2px solid var(--p);outline-offset:2px}
.request-list{font-family:inherit;line-height:1.8}
.svc-contact{position:sticky;top:90px;display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:12px;background:var(--ink);color:#fff}
.svc-contact h2{margin:0;font-size:18px;color:#fff}
.svc-contact p{margin:0;font-size:13.5px;line-height:1.7;color:rgba(255,255,255,.8)}
.svc-contact-qr{width:150px;height:150px;object-fit:contain;border-radius:8px;background:#fff;padding:6px}
.svc-contact dl{margin:0;display:flex;flex-direction:column;gap:8px}
.svc-contact dt{font-size:12px;color:rgba(255,255,255,.65)}
.svc-contact dd{margin:2px 0 0;font-size:15px;font-weight:600;color:#fff;word-break:break-all}
.svc-contact-link{color:#cfe8dc;font-size:13.5px;font-weight:600}
.svc-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px}
@media(max-width:1040px){.svc-cases{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-form-layout{grid-template-columns:1fr}.svc-contact{position:static}}
@media(max-width:640px){.svc-cases,.svc-faq-grid{grid-template-columns:1fr}.svc-type-switch>div{grid-template-columns:repeat(2,minmax(0,1fr))}.svc2-cards{grid-template-columns:1fr}}

/* 右下角“帮我找数据”浮动按钮与一站式服务面板 */
.support-fab .ui-icon{width:18px;height:18px}
.support-fab.is-open{background:var(--p)}
.help-panel{position:fixed;right:24px;bottom:82px;z-index:61;width:372px;max-width:calc(100vw - 24px);max-height:calc(100vh - 110px);overflow:auto;border-radius:16px;background:#fff;box-shadow:0 18px 48px rgba(15,42,37,.22),0 2px 8px rgba(15,42,37,.08);animation:help-pop .16s ease-out}
.help-panel[hidden]{display:none}
@keyframes help-pop{from{transform:translateY(8px)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.help-panel{animation:none}}
.help-panel-head{position:relative;padding:18px 48px 16px 20px;background:var(--ink);color:#fff}
.help-panel-head strong{display:block;font-size:17px}
.help-panel-head p{margin:4px 0 0;font-size:13px;line-height:1.6;color:rgba(255,255,255,.78)}
.help-panel-close{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;border-radius:8px;background:rgba(255,255,255,.1);color:#fff;cursor:pointer}
.help-panel-close:hover{background:rgba(255,255,255,.2)}
.help-panel-close .ui-icon{width:16px;height:16px}
.help-panel-list{list-style:none;margin:0;padding:10px}
.help-panel-list a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;color:var(--tx);text-decoration:none;transition:background .15s}
.help-panel-list a:hover,.help-panel-list a:focus-visible{background:var(--ps);outline:none}
.help-panel-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--ps);color:var(--p)}
.help-panel-list a:hover .help-panel-icon{background:#fff}
.help-panel-icon .ui-icon{width:20px;height:20px}
.help-panel-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.help-panel-text strong{font-size:14.5px}
.help-panel-text small{font-size:12.5px;line-height:1.55;color:var(--t2)}
.help-panel-list i{font-style:normal;font-weight:700;color:var(--p);opacity:.55}
.help-panel-list a:hover i{opacity:1}
.help-panel-list a[data-help-item="sourcing"] small{color:#9a5b00}
.help-panel-foot{display:block;padding:12px 20px 14px;border-top:1px solid var(--ln);font-size:13px;font-weight:600;color:var(--p);text-decoration:none}
.help-panel-foot:hover{background:#fafcfa}
.admin-mode .help-panel{display:none}
@media(max-width:640px){.help-panel{right:12px;left:12px;bottom:62px;width:auto;max-width:none}}


/* 版本区别：最后一张“高精度定制”卡片，列出可定制的分辨率示例 */
.dt-ver-card.is-custom{border:1px dashed var(--p);background:linear-gradient(180deg,#fff,var(--ps))}
.dt-ver-card.is-custom .dt-ver-res{background:#fff;color:var(--p);box-shadow:inset 0 0 0 1.5px var(--p)}
.dt-ver-custom-res{display:flex;flex-wrap:wrap;gap:6px}
.dt-ver-custom-res span{padding:2px 10px;border-radius:999px;background:var(--p);color:#fff;font-size:13px;font-weight:700;line-height:1.6;font-family:var(--mono)}
.dt-ver-custom-res span.is-more{background:none;color:var(--p);padding:2px 0;font-family:inherit;font-weight:600}
.dt-ver-card.is-custom .dt-ver-custom-text{flex:none;margin:0;font-size:13px;line-height:1.7;color:var(--t2)}
.dt-ver-custom-go{align-self:flex-start;margin-top:2px;font-size:13.5px;font-weight:700;color:var(--p);text-decoration:none}
.dt-ver-custom-go:hover{text-decoration:underline}

/* 底部推荐：相关与其他板块之间的分隔、下拉加载提示 */
.dt-related-divider{grid-column:1/-1;display:flex;align-items:center;gap:14px;margin:12px 0 2px;color:var(--mu);font-size:14px;font-weight:600}
.dt-related-divider::before,.dt-related-divider::after{content:"";flex:1;height:1px;background:var(--ln2)}
.dt-related-more{margin:22px 0 4px;text-align:center;font-size:13.5px;color:var(--mu)}
.dt-related-more a{color:var(--p);font-weight:600}

/* 定制服务表单：情况提示、参考截图（点击 / 拖入 / 粘贴）、联系方式必填状态 */
.svc-case-note{margin:0;padding:6px 10px;border-radius:7px;background:var(--ps);color:var(--p);font-size:12.5px;font-weight:600;line-height:1.5}
.svc-case-note.is-listing{background:#fff4e0;color:#9a5b00}
.svc-case p.svc-case-note{font-size:12.5px;color:var(--p)}.svc-case p.svc-case-note.is-listing{color:#9a5b00}
.request-notice{padding:14px 16px;border-radius:10px;border:1px solid var(--ln);border-left:4px solid var(--p);background:#f6faf7}
.request-notice strong{display:block;font-size:15px;color:var(--p)}
.request-notice p{margin:4px 0 0;font-size:13.5px;line-height:1.7;color:var(--t2)}
.request-notice.is-listing{border-color:#f0c77a;border-left-color:#e89b0c;background:#fff8ea}
.request-notice.is-listing strong{font-size:16px;color:#9a5b00}
.request-shots{display:grid;gap:10px}
.request-shots-label{font-size:.875rem;font-weight:600}
.request-shots-label small{font-weight:400;color:var(--mu)}
.request-shot-drop{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1.5px dashed #b9cbbf;border-radius:10px;background:#fafcfa;cursor:pointer;transition:border-color .15s,background .15s}
.request-shot-drop:hover,.request-shot-drop:focus-visible,.request-shot-drop.is-over{border-color:var(--p);background:var(--ps);outline:none}
.request-shot-drop .ui-icon{flex:none;width:26px;height:26px;color:var(--p)}
.request-shot-drop span{display:grid;gap:3px}
.request-shot-drop strong{font-size:14px;color:var(--tx)}
.request-shot-drop small{font-size:12.5px;line-height:1.6;color:var(--mu)}
.request-shot-list{display:flex;flex-wrap:wrap;gap:10px}
.request-shot-list:empty{display:none}
.request-shot-list figure{position:relative;margin:0;width:120px;height:90px;border:1px solid var(--ln);border-radius:8px;overflow:hidden;background:#fff}
.request-shot-list img{width:100%;height:100%;object-fit:cover;object-position:top left}
.request-shot-list button{position:absolute;top:4px;right:4px;width:24px;height:24px;border:0;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:16px;line-height:24px;cursor:pointer}
.request-contact.is-required{background:#eef5f0;box-shadow:inset 0 0 0 1px #b9d4c2}
.request-contact h2 em{font-style:normal;color:#a14332}
.research-shots{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.research-shots a{display:block;width:96px;height:72px;border:1px solid var(--ln);border-radius:6px;overflow:hidden}
.research-shots img{width:100%;height:100%;object-fit:cover;object-position:top left}
@media (max-width:640px){.request-shot-drop{padding:14px}.request-shot-list figure{width:96px;height:72px}}

/* “点击查看大图”提示不常驻，避免挡住图片右上角的水印角标与右下角的审图号：
   有鼠标的设备悬停时出现；触屏设备只留一个小放大镜图标在右下角。 */
@media (hover:hover){
  .dt-stage .dt-zoom-hint,.dt-figure-link .dt-zoom-hint{opacity:0;transition:opacity .15s,background .15s}
  .dt-stage:hover .dt-zoom-hint,.dt-stage:focus-visible .dt-zoom-hint,.dt-figure-link:hover .dt-zoom-hint,.dt-figure-link:focus-visible .dt-zoom-hint{opacity:1}
}
@media (hover:none){
  .dt-zoom-hint{gap:0;padding:7px;font-size:0}
  .dt-zoom-hint .ui-icon{width:16px;height:16px}
  .dt-stage .dt-zoom-hint{top:auto;bottom:12px;right:12px}
}

/* 搜索结果：名称直接匹配与“相关数据”之间的分隔线（跨满整行） */
.cat-divider{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:10px 0 2px;padding-top:16px;border-top:1px dashed var(--ln2)}
.cat-divider span{font-size:15px;font-weight:700;color:var(--tx)}
.cat-divider small{font-size:12.5px;color:var(--mu)}
.cat-list .cat-divider{margin:8px 0 0}
