.role-hidden{display:none!important}
body.user-read-only #currency :is(.cur-primary, .cur-admin, [onclick*="LifecycleAdmin"], #amRegisterChange, #amRegisterChange + .gate){display:none!important}
body.auth-locked #topbar,body.auth-locked #workspace{display:none!important}
body.auth-locked{background:var(--bg-side)}
body.auth-locked #reviewer-dialog{inset:0;height:fit-content;margin:auto}
body.auth-locked #reviewer-dialog .reviewer-help{word-break:keep-all}
body.auth-locked #reviewer-dialog::backdrop{background:transparent}
body.auth-locked #reviewer-dialog .reviewer-dialog-heading>.icon-btn{display:none}
/* 검토 기간의 노무사(body.review-only — /api/reviewer/me 의 review_only)는 지식 공리 검토만 쓴다.
   상단 메뉴·☰·기준일 대신 그 화면 이름만 보이고, 검토 화면 안에서는 공리 관리 더 보기·다른 화면으로 가는 버튼을
   숨긴다. 검토 묶음 흐름(목록·대조·근거·결정)과 화면 위 '공통 기준 관리'·'＋ 규칙 새로 추가'(.rules-add-button —
   지식 출처 새 공리만, 서버가 확인한다)는 그대로 둔다(2026-10-01 다시 엶). 두 대화창은 #rules 밖(body)에 열리고
   다른 화면으로 가는 버튼이 없다. */
#topbar .review-only-title{display:none}
/* 제목은 줄지 않는다(flex:none). 폭이 모자라면 브랜드(.brand-top)가 줄고 이름(.bt-name)이 말줄임으로 자리를 내준다
   (480px 이하 규칙과 같은 방식을 검토 기간에는 모든 폭에 쓴다). 화면 이름을 말줄임하면 하나뿐인 메뉴 이름이
   잘려 보인다. 320px 같은 아주 좁은 화면에서만 제목도 말줄임한다. */
body.review-only #topbar .brand-top{flex:0 1 auto;min-width:0}
body.review-only #topbar .bt-name{min-width:0;overflow:hidden;text-overflow:ellipsis}
body.review-only #topbar .review-only-title{display:inline-flex;align-items:center;align-self:stretch;position:relative;flex:none;padding:0 13px;font-size:15pt;font-weight:700;color:var(--accent);white-space:nowrap}
body.review-only #topbar .review-only-title::after{content:"";position:absolute;left:13px;right:13px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--accent)}
@media(max-width:340px){
  body.review-only #topbar .brand-top{flex-shrink:100}   /* 이때도 브랜드 이름이 먼저 줄어든다 */
  body.review-only #topbar .review-only-title{display:block;flex:0 1 auto;min-width:0;align-self:center;padding:0 8px;overflow:hidden;text-overflow:ellipsis}
  body.review-only #topbar .review-only-title::after{display:none}
}
body.review-only :is(#nav-wrap,#nav-toggle,#badge-asof,#user-admin-nav){display:none!important}
body.review-only #rules :is(.rules-advanced-actions,[onclick*="switchView"]){display:none!important}
#users{display:none}
body.users-mode #sidebar,body.users-mode #main>:not(#users){display:none!important}
body.users-mode #users{display:flex;flex-direction:column;gap:16px;padding:24px;min-height:0;height:100%;overflow:auto;font-size:var(--font-size-base,13pt)}
.ua-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.ua-heading h1{font-size:21pt;margin-bottom:8px}.ua-heading p{color:var(--tx-dim)}
.ua-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ua-roles p{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--bg-soft);line-height:1.7}
.ua-roles strong{display:block;color:var(--accent)}
#users button{font:inherit;min-height:42px;padding:8px 15px;border:1px solid var(--accent);border-radius:9px;cursor:pointer;color:var(--accent);background:var(--bg-card)}
#users button.reviewer-primary,#users button[aria-pressed="true"],#users button[aria-current="page"]{background:var(--accent);color:var(--accent-contrast)}
#users button:disabled{opacity:.5;cursor:default}
.ua-tabs{display:flex;gap:10px;border-bottom:1px solid var(--line);padding-bottom:14px}
.ua-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.ua-filters label{display:flex;flex-direction:column;gap:7px;min-width:140px}.ua-filters label[hidden]{display:none}
.ua-filters input,.ua-filters select,#users .reviewer-form input,#users .reviewer-form select{font:inherit;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--bg-card);color:var(--tx)}
.ua-content{overflow:auto;border:1px solid var(--line);border-radius:12px;min-height:180px}
.ua-content table{border-collapse:collapse;width:100%;text-align:left;line-height:1.5}
.ua-content th{background:var(--bg-soft);color:var(--tx);white-space:nowrap}.ua-content td,.ua-content th{padding:13px 16px;border-bottom:1px solid var(--line)}
.ua-content tbody tr:hover{background:var(--accent-soft)}.ua-actions{display:flex;gap:8px;flex-wrap:wrap}
.ua-pages{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}
.ua-badge{display:inline-block;padding:4px 10px;border-radius:20px;background:var(--bg-soft);white-space:nowrap}.ua-success{color:var(--green)}.ua-failure{color:var(--red)}
#ua-dialog{width:min(540px,calc(100vw - 32px))}#ua-dialog-body .ua-secret{padding:14px;border:1px solid var(--accent);border-radius:8px;overflow-wrap:anywhere;font-weight:700}
#ua-message:empty{display:none}
@media(max-width:850px){.ua-roles{grid-template-columns:1fr}body.users-mode #users{padding:16px}.ua-content th,.ua-content td{padding:10px}}
