/* Reading and controls for the professional review workspaces. */
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin,#axiom-chat-dialog,#reviewer-dialog){
  --font-size-base:15pt;
  --review-font-secondary:14pt;
  font-size:var(--font-size-base);
  line-height:1.7;
}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin,#axiom-chat-dialog,#reviewer-dialog) button{
  box-sizing:border-box;
  min-height:48px;
  min-width:48px;
  max-width:100%;
  padding:10px 16px;
  font-family:inherit;
  font-size:var(--font-size-base);
  line-height:1.4;
  border-radius:10px;
  white-space:normal;
  overflow-wrap:anywhere;
  justify-content:center;
}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin,#reviewer-dialog) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  box-sizing:border-box;
  max-width:100%;
  min-height:48px;
  font-size:var(--font-size-base);
  line-height:1.5;
}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) textarea{min-height:116px;padding:12px}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) :is(.lab-lb,.lab-dim,.ax-source-meta,.ax-chat-row-meta,.axc-sub,.axc-id,.axc-support,.pat-badge,.axc-group-h>span,.pg-sub,.adm-h .sub,.fm-list-item span,.field-err,small){
  font-size:var(--review-font-secondary);
}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) :is(.axc-foot,.ax-review-actions,.axc-bar,.btn-row,.lab-edit-row){gap:10px}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) :is(.axc-main,.lab-rule-sent,.axw-final){font-size:16pt;line-height:1.7}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) :is(.axc-card,.ax-source-card,.ax-rule-review){padding:16px}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) :is(.axc-top,.axc-foot){row-gap:10px}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .axc-evp{font-size:var(--font-size-base)}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .ax-chat-row{gap:16px;padding:14px}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .ax-chat-preview{font-size:var(--font-size-base);line-height:1.7}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .ax-chat-row-content{font-size:var(--font-size-base)}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) summary{padding-block:10px;line-height:1.6}
#labeling :is(.axc-cols,.axc-group,.axc-card){min-width:0}
#labeling .axc-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#labeling .lab-lb{margin:6px 0}
#labeling .lab-legend>summary{font-size:var(--review-font-secondary)}
#labeling #lab-votes{max-height:min(60dvh,620px);scrollbar-gutter:stable}
#rules .ax-rule-acts{flex-wrap:wrap;gap:10px}
#admin #formula-admin-body button{min-height:48px;font-size:var(--font-size-base);padding:10px 16px}
#admin .fm-list{container:review-formula-list / inline-size}
#admin .fm-page-controls{gap:5px}
#admin #formula-admin-body .fm-pagination button{min-width:44px;min-height:48px;padding:8px}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .ax-chat-pagination{gap:6px}
:is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .ax-chat-pagination button{min-width:44px;min-height:48px;padding:8px}
#axiom-chat-dialog :is(.lab-dim,.ax-chat-dialog-footer){font-size:var(--review-font-secondary)}
#axiom-chat-dialog .ax-chat-dialog-header h2{font-size:18pt}
#axiom-chat-dialog .ax-chat-message :is(h3,.ax-source-text){font-size:16pt}
#axiom-chat-dialog .ax-chat-turn-pagination{gap:12px;flex-wrap:wrap}
#axiom-chat-dialog .ax-chat-turn-pagination>span{white-space:nowrap;font-size:15pt}
#reviewer-header-button{min-height:48px;font-size:14pt;padding:10px 16px}
#reviewer-dialog .reviewer-help{font-size:14pt}

/* A single queue for extracted candidates and registered judgment rules. */
:is(#rules,#conflicts){--font-size-base:13pt;--review-font-secondary:13pt}
/* 공리 관리의 모든 하위 화면은 창 너비를 사용한다. */
:is(#admin,#rules,#conflicts,#axiomchanges)>*{max-width:none;margin-inline:0}
:is(#rules,#conflicts) :is(button,input:not([type=checkbox]):not([type=radio]),select){min-height:52px}
#rules #axiom-workbench-list :is(.axc-main,.lab-rule-sent){font-size:14pt}
#axiom-workbench{margin:12px 0;min-width:0}
.rules-review-steps{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;list-style:none;padding:8px 12px;margin:0;border:1px solid var(--control-border);border-radius:10px;background:var(--accent-soft)}
.rules-review-steps li{display:flex;align-items:center;gap:8px;min-width:0}
.rules-review-steps li>b{display:inline-flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--accent-contrast)}
.rules-review-steps li>span{line-height:1.6}
.rules-legacy-count{display:inline;color:var(--accent)}
.rules-legacy-notice{border-left:4px solid var(--amber);padding:12px;background:var(--amber-bg);border-radius:8px}
.rules-approved-notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px;background:var(--accent-soft);border-radius:8px}
.rules-history-filters{margin-top:4px;border-top:1px solid var(--line);padding-top:2px}
#rules .rules-history-filters>summary{cursor:pointer;padding-block:2px;min-height:32px;color:var(--tx-dim)}
.rules-advanced-actions{margin-top:14px;border-top:1px solid var(--line);padding-top:6px}
.rules-advanced-actions>summary{cursor:pointer;min-height:48px;color:var(--tx-dim)}
.rules-history-filters .rules-state-tabs{margin:8px 0 0}
.rules-system-options{margin-top:28px!important}
#axiom-workbench-controls{padding:12px;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;margin:10px 0}
.rules-controls-main{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}
#rules .rules-exclude-reviewed{display:flex;align-items:center;gap:12px;min-height:52px;cursor:pointer;font-weight:650;flex:none}
#rules .rules-exclude-reviewed input{width:22px;height:22px;min-height:22px;margin:0;accent-color:var(--accent);cursor:pointer}
.rules-controls-main>.rules-state-tabs{flex:none;margin:0;max-width:100%;min-width:0}
.rules-controls-footer{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-top:6px}
.rules-controls-footer .rules-history-filters{margin:0;padding:0;border:0;flex:none;max-width:100%}
#rules .rules-state-help{margin:0;font-size:13pt;line-height:1.6;flex:1;min-width:220px}
.rules-state-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.rules-state-tabs button{display:flex;align-items:center;gap:8px}
.rules-state-tabs button span{font-variant-numeric:tabular-nums;font-size:.9em}
#rules .rules-state-tabs [aria-pressed=true],#rules .rules-pagination [aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}
.rules-workbench-filters{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:end;gap:8px;flex:1;min-width:480px}
.rules-search-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.rules-workbench-filters .lab-lb{display:grid;gap:6px;min-width:0;margin:0}
.rules-workbench-filters :is(select,input){width:100%;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg-card);color:var(--tx)}
.rules-workbench-filters>button:last-child{justify-self:end}
#axiom-workbench-message:not(:empty){padding:12px 16px;margin-bottom:12px;border-radius:10px;background:var(--accent-soft);color:var(--tx)}
#axiom-workbench-list{display:grid;gap:18px;min-width:0}
#axiom-workbench-list>.ax-rule{display:block}
#axiom-workbench-list :is(.axc-card,[data-workbench-key]){min-width:0;margin:0;overflow-wrap:anywhere}
#axiom-workbench-list .axc-card{padding:18px}
#axiom-workbench-list .axc-top{margin-bottom:10px}
#axiom-workbench-list .lab-rule-sent{font-weight:600;margin:10px 0}
#axiom-workbench-list :is(.axc-sent,.lab-rule-sent),.ax-knowledge-statement p,.conflict-sentence{white-space:pre-line;overflow-wrap:anywhere}
#axiom-workbench-list .axc-src.k{color:var(--src-k);border-color:var(--src-k)}
#axiom-workbench-list .axc-src.q{color:var(--src-q);border-color:var(--src-q)}
#axiom-workbench-list :is(.axc-id,.axc-support){flex-shrink:1;overflow-wrap:anywhere}
.rules-candidate-status{margin:0 0 6px 2px}
.rules-page-range{text-align:center;margin:20px 0 10px}
.rules-pagination{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin-bottom:20px}
#rules .rules-pagination button{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;height:48px;padding:8px;text-align:center}
#axiom-workbench :is(button,input,select,[data-workbench-key]):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:1100px){
  .rules-workbench-filters{flex-basis:100%;min-width:0}
}
@media(max-width:600px){
  .rules-review-steps{gap:8px 16px}
  #axiom-workbench-controls{padding:12px}
  .rules-workbench-filters{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
  .rules-workbench-filters .rules-search{grid-column:1/-1}
  .rules-workbench-filters>button:last-child{justify-self:stretch}
  .rules-state-tabs{gap:8px}
  #rules .rules-state-tabs button{padding-inline:10px}
  #axiom-workbench-list .axc-card{padding:12px}
  #rules .rules-pagination{gap:4px}
  #rules .rules-pagination button{min-width:48px}
  .rules-pagination [data-page-number]:not([aria-current=page]){display:none}
}

/* Keep the current page and all four direction controls large in narrow lists. */
body.rules-mode #rules{display:flex;flex:1;flex-direction:column;overflow:hidden;min-height:0}
#rules>.rules-page-heading{flex:none;width:100%;margin-bottom:6px}
#rules>#rules-rev-bar{flex:none;width:100%}
#rules>#axiom-admin-fold,#rules #axiom-admin-body,#rules #axiom-workbench{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;width:100%}
#rules #axiom-workbench-controls,#rules #axiom-workbench-message{flex:none}
#rules .rules-review-layout{display:grid;grid-template-columns:minmax(340px,32%) minmax(0,1fr);gap:16px;flex:1;min-height:0}
#rules .rules-list-pane,#rules .rules-detail-pane{min-height:0;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--bg-card)}
#rules .rules-list-pane{display:flex;flex-direction:column;overflow:hidden;container:knowledge-review-list / inline-size}
#rules .rules-list-heading{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;border-bottom:1px solid var(--line)}
#rules .rules-list-pane .rules-list-heading button{min-height:44px;padding:8px 12px}
#rules .rules-list-heading h2{font-size:1.08em;margin:0}
#rules #axiom-workbench-stats{flex:none;padding:8px 12px;border-bottom:1px solid var(--line)}
#rules .rules-review-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}
#rules .rules-review-counts>div{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:2px 4px;min-width:0;padding:6px;border-radius:8px;background:var(--bg-soft)}
#rules .rules-review-counts dt{font-size:13pt;line-height:1.5;color:var(--tx-dim);white-space:nowrap}
#rules .rules-review-counts dd{margin:0;font-size:13pt;line-height:1.5;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}
#rules .rules-review-counts dd small{margin-left:2px;font-size:14px;font-weight:400}
#rules .rules-review-counts .pending{background:var(--accent-soft);color:var(--accent)}
#rules .rules-review-counts .completed dd{color:var(--green)}
#rules .rules-stats-note{margin:6px 0 0;font-size:13pt;color:var(--tx-dim)}
@media(min-width:901px) and (max-height:800px){
  #rules .rules-stats-note,#rules .rules-controls-footer{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0;padding:0}
}
#rules .rules-list-filter-row{display:flex;align-items:center;justify-content:space-between;gap:2px 8px;flex-wrap:wrap}
#rules .rules-list-pane #axiom-workbench-controls{margin:0;padding:8px 12px;border:0;border-bottom:1px solid var(--line);border-radius:0}
#rules .rules-list-pane .rules-controls-main{display:flex;flex-direction:column;align-items:stretch;gap:4px}
#rules .rules-list-pane .rules-exclude-reviewed{min-height:32px;gap:8px;line-height:1.5;padding:0}
#rules .rules-list-pane #axiom-workbench-controls :is(button,input[type=search]){min-height:44px;padding-block:8px}
#rules .rules-list-pane .rules-workbench-filters{flex:none;min-width:0;width:100%;grid-template-columns:minmax(0,1fr) auto}
#rules .rules-list-pane .rules-search{grid-column:auto}
#rules .rules-list-pane .rules-workbench-filters>button{justify-self:stretch;padding-inline:8px}
#rules .rules-list-pane .rules-state-help{min-width:0}
#rules .rules-list-pane #axiom-workbench-message:not(:empty){margin:8px 12px 0;max-height:100px;overflow-y:auto}
#rules .rules-list-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
#rules #axiom-workbench-list{display:flex;flex-direction:column;gap:10px;padding:12px;min-height:0}
#rules .rules-list-item{flex:none;display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:10px;text-align:left;font:inherit;line-height:1.6;background:var(--bg-card);color:var(--tx);cursor:pointer}
#rules .rules-list-item:hover{border-color:var(--accent)}
#rules .rules-list-item[aria-pressed=true]{background:var(--accent-soft);border:2px solid var(--accent);padding:13px 15px}
#rules .rules-list-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;font-size:.9em;color:var(--tx-dim)}
#rules .rules-list-meta>span:first-child{font-weight:650;color:var(--accent)}
#rules .rules-list-sentence{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere;font-weight:600}
#rules #axiom-workbench-pager{flex:none;border-top:1px solid var(--line);padding:10px}
#rules .rules-page-range{margin:0 0 8px;font-size:.92em}
#rules .rules-pagination{margin:0;gap:4px;flex-wrap:nowrap}
#rules .rules-pagination button{min-width:42px;min-height:48px;padding:6px}
#rules .rules-detail-pane{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:20px}
#rules .rules-detail-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#rules .rules-detail-heading h2{font-size:1.15em;margin:0}
#rules .rules-detail-heading>button{margin-left:auto}
#rules .rules-detail-statement{white-space:pre-line;overflow-wrap:anywhere;margin:18px 0;padding:18px;background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:8px;font-weight:650;line-height:1.8}
#rules .rules-detail-actions{display:flex;gap:10px;position:sticky;top:-20px;padding:12px 0;background:var(--bg-card);z-index:2;border-bottom:1px solid var(--line)}
#rules .rules-detail-actions button{min-width:112px;min-height:52px;padding:12px 20px;border:1px solid var(--accent);border-radius:10px;background:var(--bg-card);color:var(--accent);font:inherit;font-weight:650;cursor:pointer}
#rules .rules-detail-actions .rules-approve{background:var(--accent);color:var(--accent-contrast)}
#rules .rules-detail-actions .rules-delete{color:var(--danger,#b42318);border-color:var(--danger,#b42318)}
#rules .rules-detail-actions button:disabled{opacity:.5;cursor:not-allowed}
#rules .rules-action-help{color:var(--tx-dim);font-size:.94em;line-height:1.7}
#rules .rules-request-note,#rules #rules-detail-request:not([hidden]){padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--bg-soft);margin:16px 0}
#rules .rules-request-note p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}
#rules #rules-detail-request h3{margin:0 0 14px;font-size:1.1em}
#rules #rules-detail-request textarea{display:block;width:100%;box-sizing:border-box;resize:vertical;min-height:140px;border:1px solid var(--accent);border-radius:10px;padding:14px;font:inherit;line-height:1.7;background:var(--bg-card);color:var(--tx)}
#rules .rules-detail-pane>.adm-empty{padding:24px}
@container knowledge-review-list (max-width:460px){
  #rules .rules-pagination [data-page-number]:not([aria-current=page]){display:none}
}
@media(max-width:900px){
  body.rules-mode #rules{overflow-y:auto;display:block}
  #rules .rules-review-layout{grid-template-columns:minmax(0,1fr);flex:none}
  #rules .rules-list-pane{height:clamp(560px,72dvh,760px)}
  #rules .rules-detail-pane{max-height:75dvh;min-height:360px;padding:16px}
  #rules .rules-detail-actions{top:-16px;flex-wrap:wrap}
  #rules .rules-detail-actions button{min-width:0;flex:1;padding-inline:10px}
}
@container review-formula-list (max-width:450px){
  .fm-page-controls [data-page-control=number]:not([aria-current=page]){display:none}
}
@media(max-width:1100px){
  #labeling .axc-cols{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:600px){
  #labeling,#rules,#conflicts,#axiomchanges,#admin{padding-inline:14px}
  :is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .ax-chat-pagination{gap:4px}
  :is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .ax-chat-pagination button{min-width:44px;padding:6px}
  .ax-chat-pagination button:nth-child(n+3):nth-last-child(n+3):not([aria-current=page]){display:none}
  #labeling .axc-group{padding:10px}
  #labeling .axc-card{padding:12px}
  #labeling :is(.axc-id,.axc-support){overflow-wrap:anywhere;flex-shrink:1}
  :is(#labeling,#rules,#conflicts,#axiomchanges,#admin) .ax-chat-row{padding:12px}
  #admin #formula-admin-body{padding:12px}
  #axiom-chat-dialog .ax-chat-dialog-header{gap:10px}
  #axiom-chat-dialog .ax-chat-turn-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px}
  #axiom-chat-dialog .ax-chat-turn-pagination button{padding-inline:10px}
  #reviewer-header-button{padding-inline:12px}
}
