/* 仅在服务端确认测试员身份且处于广东电脑界面时挂载此类。 */
@media(min-width:1024px){
  .ps-desktop-beta .ps-app{max-width:1680px;grid-template-columns:320px minmax(0,1fr)}
  .ps-desktop-beta .ps-app.cond-collapsed{grid-template-columns:minmax(0,1fr)}
  .ps-desktop-beta .ps-app.cond-collapsed{padding-left:22px}
  .ps-desktop-beta .ps-app.ps-help-open{grid-template-columns:320px minmax(0,1fr) 340px}
  .ps-desktop-beta .ps-app.ps-help-open.cond-collapsed{grid-template-columns:minmax(0,1fr) 340px}
  .ps-desktop-beta .psd-condition-trigger{display:none;color:var(--ps-brand);flex-shrink:0}
  .ps-desktop-beta .ps-app.cond-collapsed .profile{display:none}
  .ps-desktop-beta .ps-app.cond-collapsed .psd-condition-trigger{display:inline-flex}
  .ps-desktop-beta .profile-row{flex-wrap:wrap}
  .ps-desktop-beta .profile-tools{margin-left:0}
  .ps-desktop-beta #collapseBtn{background:var(--ps-brand);border-color:var(--ps-brand);color:#fff}
  .ps-desktop-beta #collapseBtn:hover{background:var(--ps-brand-hover)}
  .ps-desktop-beta .position-help{display:none}
  .ps-desktop-beta .result-controls{z-index:40;margin-top:8px}
  .ps-desktop-beta .summary{padding:10px 14px;font-size:13px}
  .ps-desktop-beta .summary .sum-main,.ps-desktop-beta .summary .sum-side{display:none}
  .ps-desktop-beta .summary .gaps{border:0;padding-top:0}
  .ps-desktop-beta .filters{display:block}
  .ps-desktop-beta .psd-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .ps-desktop-beta .psd-group{border:1px solid var(--ps-line);border-radius:9px;padding:10px 12px;background:#fff}
  .ps-desktop-beta .psd-group+.psd-group{margin-top:8px}
  .ps-desktop-beta .psd-group-heading{font-size:13px;font-weight:750;display:flex;align-items:center;min-height:26px;gap:4px;list-style:none;cursor:pointer}
  .ps-desktop-beta h2.psd-group-heading{cursor:default;margin:0 0 6px}
  .ps-desktop-beta .psd-group-heading::-webkit-details-marker{display:none}
  .ps-desktop-beta details.psd-group[open]>.psd-fields{margin-top:8px}
  .ps-desktop-beta details.psd-group:not([open])>.psd-fields{display:none}
  .ps-desktop-beta .psd-group-count{font-size:12px;color:var(--ps-brand)}
  .ps-desktop-beta .psd-toggle{margin-left:auto;color:var(--ps-brand);font-size:12px}
  .ps-desktop-beta .psd-toggle::after{content:'展开 ▾'}
  .ps-desktop-beta details[open]>.psd-group-heading .psd-toggle::after{content:'收起 ▴'}
  /* 需求 #121：桌面端筛选字段已收进表头菜单，空容器不再留空位，压缩面板高度 */
  .ps-desktop-beta .result-filters[open] .filter-body{margin-top:0}
  .ps-desktop-beta .result-filters .filters{margin-top:0}
  /* 需求 #120：桌面端筛选项常开，删掉「筛选条件」同行的展开/收起指示；点击筛选表头不再出现聚焦绿框（菜单展开本身就是反馈） */
  .ps-desktop-beta .filters-toggle{font-size:14px;cursor:default}
  .ps-desktop-beta .result-filters .filters-toggle::after,.ps-desktop-beta .result-filters[open] .filters-toggle::after{content:none}
  .ps-desktop-beta .psd-column-filter>summary:focus-visible{outline:none}
  .ps-desktop-beta .psd-filter-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
  /* 需求 #121：chips 挪进「筛选条件」行内，跟已选计数同行 */
  .ps-desktop-beta .filters-toggle .psd-filter-chips{margin:0 0 0 14px;flex:1;min-width:0}
  .ps-desktop-beta .filters-toggle .psd-filter-chips[hidden]{display:none}
  .ps-desktop-beta .psd-filter-chip{border:1px solid var(--ps-line-strong);border-radius:20px;background:var(--ps-brand-soft);color:var(--ps-brand);font-size:12px;padding:4px 9px;max-width:100%;overflow-wrap:anywhere;text-align:left}
  .ps-desktop-beta .psd-filter-chip span{margin-left:4px;font-weight:800}
  .ps-desktop-beta .psd-area-footer{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 4px 4px;border-top:1px solid var(--ps-line);background:#fff}
  .ps-desktop-beta #fArea>.area-options{display:flex;flex-direction:column;max-height:min(520px,calc(100vh - var(--ps-nav-height) - 160px));overflow:hidden}
  .ps-desktop-beta .result-controls .area-picker[open]{z-index:50}
  .ps-desktop-beta .result-controls .area-options{position:absolute;top:calc(100% + 5px);left:0}
  .ps-desktop-beta #fArea .area-options-list{flex:1;min-height:0;max-height:none;overflow:auto}
  .ps-desktop-beta .psd-area-note{flex:1;min-width:100px;font-size:12px;color:var(--ps-muted)}
  .ps-desktop-beta .psd-area-footer button:disabled{opacity:.45;cursor:not-allowed}
  .ps-desktop-beta .psd-help-button{margin-left:auto;color:var(--ps-brand)}
  /* 需求 #109：说明文字占满考试选择钮与“使用说明”之间的空余并居中，不再把顶栏撑宽换行 */
  .ps-desktop-beta .exam-meta{flex:1 1 auto;min-width:0;text-align:center}
  .ps-desktop-beta .list-meta{gap:10px;flex-wrap:wrap;font-size:12px}
  .ps-desktop-beta .list{display:block}
  .ps-desktop-beta .psd-table-scroll{width:100%;max-height:max(320px,calc(100vh - var(--ps-nav-height) - var(--ps-controls-height) - 120px));overflow:auto;border:1px solid var(--ps-line-strong);border-radius:10px;background:#fff;scrollbar-gutter:stable}
  /* 需求 #119：所有列都给固定宽度，min-width 取各列之和——侧栏展开挤窄表格时走横向滚动，
     未设宽度的列不再被 table-layout:fixed 压成一列一字 */
  .ps-desktop-beta .psd-table{border-collapse:separate;border-spacing:0;width:100%;min-width:1682px;table-layout:fixed;font-size:12.5px;line-height:1.65}
  .ps-desktop-beta .psd-table th{position:sticky;top:0;z-index:2;background:#edf3ed;text-align:left;font-weight:750;padding:11px 10px;border-bottom:1px solid var(--ps-line-strong)}
  .ps-desktop-beta .psd-table td{padding:12px 10px;vertical-align:top;border-bottom:1px solid var(--ps-line);overflow-wrap:anywhere;background:#fff}
  .ps-desktop-beta .psd-table tr:last-child td{border-bottom:0}
  .ps-desktop-beta .psd-table tbody tr:hover td{background:#f7faf7}
  .ps-desktop-beta .psd-table th.psd-hl{color:var(--ps-brand);font-weight:800}
  .ps-desktop-beta .psd-table td:first-child,.ps-desktop-beta .psd-table th:first-child{position:sticky;left:0;z-index:1}
  .ps-desktop-beta .psd-table th:first-child{z-index:3;background:#edf3ed}
  .ps-desktop-beta .psd-column-filter{position:relative;display:inline-block;max-width:100%}
  .ps-desktop-beta .psd-column-filter>summary{cursor:pointer;list-style:none}
  /* 菜单在 sticky 表头的层叠上下文里会被相邻表头盖住：打开菜单的表头整体抬到最上层 */
  .ps-desktop-beta .psd-table th:has(.psd-column-filter[open]){z-index:70}
  .ps-desktop-beta .psd-column-filter>summary::-webkit-details-marker{display:none}
  .ps-desktop-beta .psd-column-menu{position:fixed;z-index:60;display:flex;flex-direction:column;min-width:190px;max-height:min(300px,calc(100vh - 24px));overflow:hidden;padding:8px;background:#fff;border:1px solid var(--ps-line-strong);border-radius:8px;box-shadow:0 10px 30px rgba(18,28,20,.18);font-weight:500}
  .ps-desktop-beta .psd-column-options{min-height:0;overflow:auto;flex:1 1 auto}
  .ps-desktop-beta .psd-column-options-area{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 8px}
  .ps-desktop-beta .psd-column-options label{display:flex;gap:7px;align-items:center;padding:6px 4px;white-space:nowrap}
  .ps-desktop-beta .psd-column-options-area label{white-space:normal;overflow-wrap:anywhere}
  .ps-desktop-beta .psd-column-actions{display:flex;gap:6px;flex:0 0 auto;padding-bottom:6px;border-bottom:1px solid var(--ps-line);margin-bottom:4px;background:#fff}
  .ps-desktop-beta .psd-column-actions button,.ps-desktop-beta .psd-column-menu>[data-column-filter-confirm]{border:0;background:none;color:var(--ps-brand);padding:4px 6px;cursor:pointer}
  .ps-desktop-beta .psd-column-menu>[data-column-filter-confirm]{display:block;flex:0 0 auto;width:100%;margin-top:5px;background:var(--ps-brand);color:#fff;border-radius:5px}
  .ps-desktop-beta .psd-column-menu>[data-column-filter-confirm]:disabled{opacity:.45;cursor:not-allowed;background:var(--ps-muted)}
  .ps-desktop-beta .psd-column-hint{display:none;margin:6px 2px 0;font-size:12px;color:var(--ps-fail)}
  .ps-desktop-beta .psd-menu-invalid .psd-column-hint{display:block}
  .ps-desktop-beta .psd-menu-invalid label{border:1px solid var(--ps-fail);border-radius:6px;margin:1px 0}
  .ps-desktop-beta .psd-col-star{width:84px}.ps-desktop-beta .psd-col-area{width:82px}
  .ps-desktop-beta .psd-col-job{width:300px}.ps-desktop-beta .psd-col-count{width:72px}
  .ps-desktop-beta .psd-col-system{width:96px}.ps-desktop-beta .psd-col-grassroots{width:112px}.ps-desktop-beta .psd-col-fresh{width:124px}.ps-desktop-beta .psd-col-other{width:118px}
  .ps-desktop-beta .psd-col-education{width:116px}.ps-desktop-beta .psd-col-degree{width:110px}.ps-desktop-beta .psd-col-major{width:300px}
  .ps-desktop-beta .psd-col-politics{width:138px}.ps-desktop-beta .psd-col-reason{width:240px}
  .ps-desktop-beta .psd-table .star{position:static;padding:0;width:30px;height:30px}
  /* 需求 #122：星星下面叠透明眼睛图标，点击隐藏岗位；隐藏态显示斜杠眼 */
  .ps-desktop-beta .psd-favhide{display:flex;flex-direction:column;align-items:center;gap:2px}
  .ps-desktop-beta .psd-hide{border:0;background:none;padding:2px;width:26px;height:24px;color:var(--ps-muted);opacity:.5;cursor:pointer}
  .ps-desktop-beta .psd-hide:hover{opacity:1;color:var(--ps-text)}
  .ps-desktop-beta .psd-hide.on{opacity:.9;color:var(--ps-brand)}
  .ps-desktop-beta .psd-hide svg{width:20px;height:20px;display:block}
  .ps-desktop-beta .psd-hide .psd-eye-off{display:none}
  .ps-desktop-beta .psd-hide.on .psd-eye{display:none}
  .ps-desktop-beta .psd-hide.on .psd-eye-off{display:block}
  .ps-desktop-beta .psd-open{padding:0;border:0;background:none;color:var(--ps-brand);text-align:left;text-decoration:underline;text-underline-offset:3px;font-weight:700;line-height:1.6;white-space:normal}
  /* 需求 #117：搜索框移入「单位与职位」表头，与标题同行对齐，宽度占满表头剩余空间 */
  .ps-desktop-beta .psd-job-head{display:flex;align-items:center;gap:10px}
  .ps-desktop-beta .psd-job-head>span:first-child{flex-shrink:0}
  .ps-desktop-beta .psd-job-search{flex:1;min-width:150px}
  .ps-desktop-beta .psd-job-search .search{display:block}
  .ps-desktop-beta .psd-job-search .ctl{width:100%;height:30px;font-size:12.5px;font-weight:400;padding-top:0;padding-bottom:0}
  .ps-desktop-beta .psd-unit{font-weight:750;margin-bottom:3px}
  .ps-desktop-beta .psd-code,.ps-desktop-beta .psd-secondary,.ps-desktop-beta .psd-system{font-size:12px;color:var(--ps-muted);margin-top:4px}
  .ps-desktop-beta .psd-number{font-size:15px;font-weight:750;font-variant-numeric:tabular-nums}
  .ps-desktop-beta .psd-major{position:relative}
  .ps-desktop-beta .psd-major::after{content:'';display:block;clear:both}
  /* 需求 #109：展开钮在 summary 内右浮，专业内容从单元格第一行顶端开始、与其他列平齐；不用 flex（部分浏览器 summary 上 flex 失效，内容会整体下移一行） */
  .ps-desktop-beta .psd-major>summary{display:block;cursor:pointer;list-style:none}
  .ps-desktop-beta .psd-major>summary::after{content:'';display:block;clear:both}
  .ps-desktop-beta .psd-major>summary::-webkit-details-marker{display:none}
  /* 收起时最多两行（各学历段连成行内文本，块级子元素会让截行失效）；展开后每段一行 */
  .ps-desktop-beta .psd-major-preview{display:block;max-height:3.3em;overflow:hidden}
  .ps-desktop-beta .psd-major-preview .psd-major-stage{display:inline}
  .ps-desktop-beta .psd-major-preview .psd-major-stage+.psd-major-stage::before{content:'；'}
  /* 需求 #110：详细/简略控件放在专业内容左侧，内容首行仍与其他列平齐。 */
  .ps-desktop-beta .psd-expand{float:left;margin:0 8px 2px 0;font-size:12px;color:var(--ps-brand);text-decoration:underline;white-space:nowrap}
  .ps-desktop-beta .psd-expand::after{content:' ▾'}
  .ps-desktop-beta .psd-major[open] .psd-major-preview{display:none}
  .ps-desktop-beta .psd-major[open] .psd-expand::after{content:' ▴'}
  .ps-desktop-beta .psd-major-full{white-space:pre-wrap}
  .ps-desktop-beta .psd-major:not([open])>.psd-major-full{display:none}
  .ps-desktop-beta .psd-major-stage{display:block}
  .ps-desktop-beta .psd-status{font-weight:750;font-size:12px;border-radius:5px;padding:3px 6px}
  .ps-desktop-beta .psd-status.ok{color:var(--ps-ok);background:var(--ps-ok-soft)}
  /* 需求 #113：需核对岗位在「详情与核对」列的查看详情按钮下逐条列出原因 */
  .ps-desktop-beta .psd-reasons{margin:6px 0 0;padding:0;list-style:none;font-size:12px;line-height:1.6;color:var(--ps-warn)}
  .ps-desktop-beta .psd-reasons li{padding-left:12px;position:relative}
  .ps-desktop-beta .psd-reasons li::before{content:'·';position:absolute;left:2px}
  .ps-desktop-beta .psd-reasons .psd-reasons-title{padding-left:0;font-weight:750}
  .ps-desktop-beta .psd-reasons .psd-reasons-title::before{content:none}
  .ps-desktop-beta .psd-status.warn{color:var(--ps-warn);background:var(--ps-warn-soft)}
  .ps-desktop-beta .psd-status.fail{color:var(--ps-fail);background:var(--ps-fail-soft)}
  .ps-desktop-beta .psd-reason{margin:6px 0;color:var(--ps-text);font-size:12px}
  .ps-desktop-beta .psd-choice{margin:auto;width:420px;max-width:calc(100vw - 32px);border:1px solid var(--ps-line-strong);border-radius:12px;padding:18px;background:#fff;color:var(--ps-ink)}
  .ps-desktop-beta .psd-choice::backdrop{background:rgba(18,28,20,.3)}
  .ps-desktop-beta .psd-choice h3{font-size:17px;margin-bottom:12px}
  .ps-desktop-beta .psd-choice-options{max-height:340px;overflow:auto}
  .ps-desktop-beta .psd-choice-options button{display:block;width:100%;padding:10px;border-radius:6px}
  .ps-desktop-beta .psd-choice-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
  .ps-desktop-beta .psd-origin{background-color:#fff;text-align:left}
  .ps-desktop-beta .psd-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .ps-desktop-beta .psd-table-scroll:focus-visible,.ps-desktop-beta button:focus-visible,.ps-desktop-beta summary:focus-visible{outline:2px solid var(--ps-brand);outline-offset:2px}
}
