:root{--brand:#0f766e;--brand-hover:#0b5f59;--brand-soft:#e6f5f1;--energy:#ea580c;--energy-text:#c2410c;--energy-soft:#fff7ed;--surface:#fff;--background:#f5f7f8;--text:#16201f;--muted-text:#5f6d6b;--border:#dce4e2;--strong-border:#c3d1ce;--danger:#b42318;--focus:#0f766e;--header-height:64px;color:var(--text);background:var(--background);font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:16px;line-height:1.6}*{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-height) + 16px)}body,html{min-width:320px}body{background:var(--background);margin:0;overflow-x:hidden}button,input{font:inherit}.primary-link,button{color:#fff;background:var(--brand);border:1px solid var(--brand);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;transition:background-color .18s ease-out,border-color .18s ease-out,color .18s ease-out;display:inline-flex}.primary-link:hover,button:hover{background:var(--brand-hover);border-color:var(--brand-hover);text-decoration:none}input{width:100%;min-height:44px;color:var(--text);background:var(--surface);border:1px solid var(--strong-border);border-radius:6px;padding:9px 12px}input::placeholder{color:#7a8799}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{letter-spacing:0;line-height:1.3}.site-frame{flex-direction:column;min-height:100dvh;display:flex}.skip-link{z-index:1000;color:#fff;background:var(--brand);padding:8px 12px;position:fixed;top:8px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:20;height:var(--header-height);border-bottom:1px solid var(--border);background:#fffffff7;position:sticky;top:0}.site-header-inner{grid-template-columns:minmax(0,1fr) minmax(280px,520px) minmax(0,1fr);align-items:center;gap:24px;width:min(1200px,100% - 48px);height:100%;margin:0 auto;display:grid}.brand{min-width:0;min-height:44px;color:var(--text);align-items:center;gap:9px;font-size:20px;font-weight:750;display:inline-flex}.brand:hover{text-decoration:none}.brand-mark{color:#fff;background:var(--brand);border-radius:6px;place-items:center;width:34px;height:34px;font-size:17px;display:inline-grid}.brand-name{font-weight:800}.brand-divider{background:var(--border);width:1px;height:18px}.brand-subtitle{color:var(--muted-text);font-size:14px;font-weight:500}.site-header nav{justify-self:end;height:100%}.site-search{width:100%;margin:0;display:block}.site-search>label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-search .job-search-controls{max-width:none}.site-search .job-search-controls input{border-color:var(--border);background:#f7faf9;min-height:40px;padding-left:40px}.site-search .search-icon{top:8px;left:10px}.site-search .job-search-controls button{min-height:40px;padding-inline:14px;font-size:14px}.site-header nav a{height:100%;color:var(--muted-text);border-bottom:3px solid #0000;align-items:center;padding:0 4px;font-size:15px;font-weight:600;display:inline-flex}.site-header nav a.router-link-active{color:var(--brand);border-bottom-color:var(--brand)}#main-content{flex:1}.page-shell{width:min(1200px,100% - 48px);margin:0 auto}.site-footer{color:var(--muted-text);border-top:1px solid var(--border);background:#f1f5f9;justify-content:space-between;gap:24px;padding:28px max(24px,50% - 600px);font-size:13px;display:flex}.jobs-page{padding:28px 0 72px}.jobs-search-zone{background:#e6f5f1;border:1px solid #c9e5de;border-radius:8px;margin-bottom:28px;padding:28px 32px 30px}.jobs-intro{margin-bottom:20px}.eyebrow{color:var(--brand);margin:0 0 4px;font-size:13px;font-weight:700}.jobs-intro h1{max-width:720px;margin:0;font-size:30px}.jobs-intro>p:last-child{color:var(--muted-text);margin:8px 0 0;font-size:16px}.jobs-intro .eyebrow{color:var(--brand);border-left:3px solid var(--brand);padding-left:9px}.job-search{max-width:880px;margin:0}.field-group label,.job-search>label{color:#364154;margin-bottom:7px;font-size:14px;font-weight:650;display:block}.job-search-controls{grid-template-columns:minmax(0,1fr) auto;gap:8px;max-width:880px;display:grid;position:relative}.job-search-controls input{min-height:50px;padding-left:44px}.search-icon{z-index:1;width:24px;height:24px;color:var(--muted-text);pointer-events:none;position:absolute;top:13px;left:13px}.icon-button svg,.mobile-filter-trigger svg,.search-icon svg{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:24px;height:24px}.jobs-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:24px;display:grid}.desktop-filters{top:calc(var(--header-height) + 16px);z-index:5;background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--brand);border-radius:6px;padding:20px 18px 22px;position:sticky}.filter-heading,.results-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.filter-heading{margin-bottom:18px}.filter-heading h2{margin:0;font-size:17px}.text-button{min-height:36px;color:var(--brand);background:0 0;border:0;padding:0 4px;font-size:13px}.text-button:hover{color:var(--brand-hover);background:0 0;text-decoration:underline}.filter-fields{gap:18px;display:grid}.field-group input{background:#fff}.filter-submit{width:100%;margin-top:20px}.results{min-width:0}.results-heading{min-height:56px;padding:0 4px 12px}.results-heading h2{margin:0;font-size:20px}.active-filter{min-height:36px;color:var(--brand-hover);background:var(--brand-soft);border-color:#b9ddd5;padding:0 12px;font-size:13px}.active-filter:hover{color:var(--brand-hover);background:#d7eee8;border-color:#82c4b7}.job-list{border-top:0;gap:16px;display:grid}.job-row{color:var(--text);background:var(--surface);border:1px solid var(--border);border-left:3px solid #0000;border-radius:6px;grid-template-columns:minmax(0,1fr) 216px;gap:32px;padding:24px 28px;transition:border-color .18s ease-out,box-shadow .18s ease-out,transform .18s ease-out;display:grid}.job-row:hover{border-color:var(--border);border-left-color:var(--brand);text-decoration:none;transform:translateY(-1px);box-shadow:0 5px 14px #0f766e14}.job-row-main{min-width:0}.job-title-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.job-row h3{color:#125c55;margin:0;font-size:20px;font-weight:700}.job-body,.job-summary{color:#31413e;white-space:pre-line;overflow-wrap:anywhere;margin:16px 0 0;font-size:14px}.job-body{border-top:1px solid var(--border);padding-top:14px}.job-company{color:#31413e;margin:10px 0 0;font-size:15px;font-weight:600}.job-context{gap:6px 16px;margin:6px 0 0;font-size:14px}.job-context,.job-meta{color:var(--muted-text);flex-wrap:wrap;display:flex}.job-meta{border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:18px;padding-top:14px;font-size:13px}.job-meta>span{background:var(--background);border:1px solid var(--border);min-height:28px;padding:4px 9px}.job-batch,.job-meta>span{border-radius:4px;align-items:center;display:inline-flex}.job-batch{color:#a94312;background:var(--energy-soft);border:1px solid #fed7aa;min-height:26px;padding:2px 8px;font-size:12px;font-weight:700}.job-row-side{border-left:1px solid var(--border);flex-direction:column;align-items:stretch;gap:24px;min-width:0;padding-left:24px}.job-actions{width:100%}.job-actions,.job-actions-links{gap:8px;display:grid}.job-actions .announcement-link,.job-actions .primary-link{text-align:center;width:100%;min-height:38px;padding-inline:10px;font-size:13px}.job-action-detail{color:var(--muted-text);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.55}.job-action-detail span{color:var(--text);margin-bottom:3px;font-weight:700;display:block}.job-time{text-align:left;border-bottom:1px solid var(--border);width:100%;padding-bottom:18px}.job-time span{color:var(--muted-text);font-size:12px;display:block}.job-time strong{color:var(--text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:3px;font-size:15px;font-weight:700;display:block}.state{color:var(--muted-text);text-align:center;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:52px 20px}.state h3{color:var(--text);margin:0;font-size:18px}.state p{margin:8px 0 18px}.state.error h3{color:var(--danger)}.job-skeletons{border-top:1px solid var(--strong-border)}.job-skeleton{border-bottom:1px solid var(--border);gap:10px;padding:24px 8px;display:grid}.job-skeleton span{background:#e7ecf2;border-radius:4px;height:14px;display:block}.job-skeleton span:first-child{width:58%;height:19px}.job-skeleton span:nth-child(2){width:34%}.job-skeleton span:last-child{width:72%}.pagination{justify-content:center;align-items:center;gap:24px;min-height:52px;margin-top:26px;display:flex}.pagination a{border:1px solid var(--border);border-radius:6px;align-items:center;min-height:44px;padding:0 12px;display:inline-flex}.pagination span{color:var(--muted-text);font-variant-numeric:tabular-nums;font-size:14px}.filter-drawer,.mobile-filter-trigger{display:none}.secondary-button{color:var(--brand);border-color:var(--strong-border);background:#fff}.secondary-button:hover{color:var(--brand-hover);background:var(--brand-soft);border-color:#82c4b7}.icon-button{width:44px;color:var(--muted-text);background:0 0;border-color:#0000;padding:0}.icon-button:hover{color:var(--text);background:#f1f5f9;border-color:#f1f5f9}.section-block{padding:42px 0 80px}.detail{padding:34px 0 84px}.back-link{min-height:44px;color:var(--muted-text);align-items:center;gap:5px;margin-bottom:22px;font-size:14px;display:inline-flex}.back-link svg{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.detail-layout{grid-template-columns:minmax(0,1fr) 250px;align-items:start;gap:52px;display:grid}.detail-main{min-width:0}.detail-heading{border-bottom:1px solid var(--strong-border);justify-content:space-between;align-items:flex-start;gap:28px;padding-bottom:28px;display:flex}.detail-batch{color:#9a3412;background:var(--energy-soft);border:1px solid #fed7aa;border-radius:4px;align-items:center;min-height:28px;margin:0 0 10px;padding:2px 10px;font-size:13px;font-weight:700;display:inline-flex}.detail-heading h1{max-width:760px;margin:0;font-size:32px}.detail-company{color:var(--muted-text);margin:10px 0 0;font-size:18px}.detail-source{max-width:150px;color:var(--muted-text);flex:none;align-items:center;gap:10px;font-size:13px;display:flex}.detail-source-icon{width:48px;height:48px;color:var(--brand);background:var(--brand-soft);border:1px solid #b9ddd5;border-radius:6px;flex:0 0 48px;place-items:center;font-weight:700;display:inline-grid;position:relative;overflow:hidden}.detail-source-icon img{-o-object-fit:contain;object-fit:contain;background:#fff;width:48px;height:48px;position:absolute;inset:0}.facts{border-bottom:1px solid var(--strong-border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.facts div{min-width:0;padding:20px 18px 20px 0}.facts dt{color:var(--muted-text);font-size:13px}.facts dd{color:var(--text);overflow-wrap:anywhere;margin:4px 0 0}.facts .deadline-fact dd{color:var(--energy-text);font-weight:700}.content-body,.detail-summary{max-width:760px;padding-top:30px}.detail-summary{border-bottom:1px solid var(--border);padding-bottom:28px}.content-body h2,.detail-summary h2{margin:0 0 14px;font-size:20px}.content-body p,.detail-summary p{color:#31413e;margin:0}.preline{color:#31413e;white-space:pre-line;overflow-wrap:anywhere}.empty-content,.source-note{color:var(--muted-text)}.source-note{border-top:1px solid var(--border);margin:34px 0 0;padding-top:18px;font-size:13px}.detail-actions{top:calc(var(--header-height) + 24px);border-top:3px solid var(--brand);border-bottom:1px solid var(--border);padding:18px 0;position:sticky}.detail-actions-inner{gap:10px;display:grid}.detail-actions-title{margin:0 0 4px;font-weight:700}.announcement-link,.detail-actions .primary-link{width:100%}.announcement-link{min-height:44px;color:var(--brand);border:1px solid var(--strong-border);background:#fff;border-radius:6px;justify-content:center;align-items:center;padding:0 16px;display:inline-flex}.announcement-link:hover{background:var(--brand-soft);border-color:#82c4b7;text-decoration:none}.unavailable-link{color:var(--muted-text);margin:0;font-size:14px}.source-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:24px;display:grid}.source-list a{min-height:64px;color:var(--text);border:1px solid var(--border);background:#fff;border-radius:6px;align-items:center;gap:12px;padding:12px 14px;display:flex}.source-list img{-o-object-fit:contain;object-fit:contain;width:36px;height:36px}@media (width<=1023px) and (width>=768px){.site-header-inner{grid-template-columns:minmax(0,1fr) minmax(280px,52vw) minmax(0,1fr);gap:16px}.brand-divider,.brand-subtitle{display:none}.jobs-layout{grid-template-columns:180px minmax(0,1fr);gap:28px}.desktop-filters{padding-inline:14px}}@media (width<=767px){:root{--header-height:112px}.page-shell,.site-header-inner{width:min(100% - 32px,1200px)}.site-header-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand nav""search search";gap:8px 12px;padding:8px 0}.brand{grid-area:brand;font-size:18px}.brand-divider,.brand-subtitle{display:none}.brand-mark{width:32px;height:32px}.site-search{grid-area:search;min-width:0}.site-search .job-search-controls{grid-template-columns:minmax(0,1fr) auto}.site-search .job-search-controls button{min-height:44px;padding-inline:10px}.site-search .job-search-controls input{min-height:44px}.site-header nav a{font-size:14px}.site-header nav{grid-area:nav}.site-footer{text-align:center;flex-direction:column;gap:4px;padding:24px 16px}.jobs-page{padding:28px 0 56px}.jobs-search-zone{margin-bottom:16px;padding:22px 18px 20px}.jobs-intro{margin-bottom:20px}.jobs-intro h1{font-size:24px}.job-search{margin-bottom:12px}.job-search-controls{gap:8px}.job-search-controls input{min-height:48px}.job-search-controls button{padding-inline:16px}.mobile-filter-trigger{width:100%;margin-bottom:24px;display:inline-flex}.mobile-filter-trigger svg{width:20px;height:20px}.jobs-layout{display:block}.desktop-filters{display:none}.results-heading{min-height:56px}.results-heading h2{font-size:18px}.active-filter{display:none}.job-row{border-left-width:1px;grid-template-columns:1fr;gap:20px;padding:20px 18px}.job-row h3{font-size:18px}.job-meta{gap:8px;margin-top:16px;padding-top:12px}.job-time{text-align:left;border-bottom:0;padding:0}.job-row-side{border-top:1px solid var(--border);border-left:0;grid-template-columns:1fr;align-items:stretch;gap:16px;padding-top:18px;padding-left:0;display:grid}.job-actions{width:100%}.job-actions-links{grid-template-columns:1fr}.job-actions-links.has-multiple-links{grid-template-columns:repeat(2,minmax(0,1fr))}.job-time{width:100%}.job-time span,.job-time strong{margin:0;display:block}.pagination{gap:10px}.pagination a{padding-inline:10px}.filter-drawer{width:100%;max-width:none;max-height:88dvh;color:var(--text);background:0 0;border:0;margin:auto 0 0;padding:0}.filter-drawer[open]{display:block}.filter-drawer::backdrop{background:#1820337a}.filter-drawer-panel{max-height:88dvh;padding:18px 20px calc(20px + env(safe-area-inset-bottom));background:#fff;border-radius:8px 8px 0 0;overflow-y:auto}.filter-drawer-panel>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.filter-drawer-panel h2{margin:0;font-size:20px}.filter-drawer-panel>footer{grid-template-columns:1fr 1.5fr;gap:10px;margin-top:26px;display:grid}.detail{padding:22px 0 68px}.detail:has(.detail-actions.has-links){padding-bottom:calc(108px + env(safe-area-inset-bottom))}.back-link{margin-bottom:14px}.detail-layout{display:block}.detail-heading{padding-bottom:22px;display:block}.detail-heading h1{font-size:24px}.detail-company{font-size:16px}.detail-source{max-width:none;margin-top:18px}.detail-source-icon{flex-basis:40px}.detail-source-icon,.detail-source-icon img{width:40px;height:40px}.facts{grid-template-columns:1fr 1fr}.facts div{padding:17px 12px 17px 0}.detail-actions{margin-top:30px;position:static}.detail-actions.has-links{z-index:40;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fff;border-bottom:0;margin:0;position:fixed;bottom:0;left:0;right:0}.detail-actions.has-links .detail-actions-inner{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.detail-actions.has-links .detail-actions-title{display:none}.detail-actions.has-links .announcement-link:only-of-type,.detail-actions.has-links .primary-link:only-of-type{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important}}
