/* UXP-001: shared Plan controls use the installed Dojo palette and spacing. */
.uxp-plano .plan-navigation > .row .btn { color:var(--text-2); min-height:32px; }
.uxp-plano .plan-content { scrollbar-gutter:stable; }
.work:has(.uxp-plano) { scrollbar-gutter:stable; }
.uxp-plano .hint { font-size:var(--text-base); line-height:var(--leading-reference); }
.uxp-plano .crit-body { gap:var(--sp-3); }
.uxp-plano .uxp-section-summary { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--sp-3); padding:var(--sp-4); }
.uxp-section-title { margin:0; font-size:var(--text-base); font-weight:600; line-height:var(--leading-normal); }
.uxp-plano .uxp-section-state { font-size:var(--text-sm); color:var(--text-2); background:var(--surface); }
.uxp-plano .uxp-section-state.pend { color:var(--pend-2); background:var(--pend-soft); }
.uxp-plano .uxp-section-state.stop { color:var(--stop-2); background:var(--stop-soft); }
.uxp-plano .uxp-section-state.ok { color:var(--ok-2); background:var(--ok-soft); }
.uxp-plano .btn { min-height:32px; font-size:var(--text-base); color:var(--text); background:var(--surface); border-color:var(--line); }
.uxp-plano .btn.ghost { background:transparent; border-color:transparent; color:var(--text-2); }
.uxp-plano .btn.primary { background:var(--accent); color:var(--ink-fg); border-color:transparent; }
.btn.stop.ghost, .uxp-plano .btn.stop.ghost { color:var(--stop-2); background:transparent; border-color:var(--stop-line); }
.uxp-plano .plan-navigation .btn[aria-current="page"] { color:var(--text); background:var(--surface); }
:root[data-theme] .uxp-plano .btn:disabled, :root:not([data-theme]) .uxp-plano .btn:disabled { opacity:1; background:var(--sunken); color:var(--text-2); border-color:var(--line); cursor:not-allowed; pointer-events:auto; }
.uxp-plano .uxp-help, .uxp-plano .uxp-issues { border:1px solid var(--line); border-radius:var(--r-s); padding:var(--sp-3); }
.uxp-plano .uxp-help > summary, .uxp-plano .uxp-issues > summary { min-height:32px; cursor:pointer; font-size:var(--text-base); }
.uxp-plano .uxp-issues > summary { display:flex; flex-wrap:wrap; gap:var(--sp-3); align-items:center; }
.uxp-plano .uxp-issues ul { margin-block:var(--sp-3); padding-left:var(--sp-6); }
.uxp-plano .uxp-issues li { margin-block:var(--sp-2); overflow-wrap:anywhere; }
.uxp-check { display:flex; gap:var(--sp-3); align-items:flex-start; min-height:32px; cursor:pointer; font-size:var(--text-base); }
.uxp-check input { flex:none; margin-top:var(--sp-1); width:20px; height:20px; accent-color:var(--selection); }
.uxp-plano input[type=checkbox], .modal[data-edicao-protegida] input[type=checkbox] { width:24px; height:24px; flex:none; accent-color:var(--selection); }
.uxp-plano input[type=number], .uxp-plano select { font-size:var(--text-base); border:1px solid var(--line); border-radius:var(--r-s); color:var(--text); background:var(--surface); padding:var(--sp-2); }
.uxp-plano .crit { background:var(--surface); border-color:var(--line); }
.uxp-plano .crit > summary { color:var(--text); font-size:var(--text-base); min-height:32px; }
.uxp-plano .crit > button { margin:var(--sp-3); }
.uxp-plano .crit > .crit-body { padding:var(--sp-4); }
.modal[data-edicao-protegida] .hint, .modal[data-edicao-protegida] label, .modal[data-edicao-protegida] .btn { font-size:var(--text-base); }
.modal[data-edicao-protegida] .btn { min-height:32px; }
.uxp-file { display:flex; align-items:center; gap:var(--sp-3); flex-wrap:wrap; }
.uxp-file > .hint { overflow-wrap:anywhere; }
.uxp-file-input { position:absolute; width:1px; height:1px; padding:0; border:0; clip-path:inset(50%); overflow:hidden; }
@media (pointer:coarse) {
 .uxp-plano .btn, .uxp-plano .uxp-help > summary, .uxp-plano .uxp-issues > summary, .uxp-check { min-height:44px; }
 .uxp-check input { width:24px; height:24px; }
 .modal[data-edicao-protegida] .btn { min-height:44px; }
}
