/* Admin v1.1: surfaces, theme tokens and responsive navigation. */
:root{--surface:#fff;--surface-soft:#f8fafb;--field:#fcfdfd;--positive:#287b5e;--positive-bg:#ecf7f1;--danger:#b54747;--danger-bg:#fff1f1;--accent-soft:#eaf5f2;--shadow:0 3px 14px #193a4210;color-scheme:light}
:root[data-accent=blue]{--teal:#2867c9;--accent-soft:#edf3ff}:root[data-accent=violet]{--teal:#7154ca;--accent-soft:#f3efff}
:root[data-theme=dark]{--ink:#e5ecf0;--muted:#9aaab7;--line:#303e49;--bg:#111a22;--surface:#1b2732;--surface-soft:#202e3a;--field:#15212b;--teal:#61c4af;--positive:#80d4ad;--positive-bg:#203b32;--danger:#f29a9a;--danger-bg:#422b32;--accent-soft:#253e3b;--shadow:0 3px 14px #0002;color-scheme:dark}
:root[data-theme=dark][data-accent=blue]{--teal:#8cb8ff;--accent-soft:#253650}:root[data-theme=dark][data-accent=violet]{--teal:#bca5ff;--accent-soft:#362f4c}
[hidden]{display:none!important}.icon{flex-shrink:0;vertical-align:middle}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;padding:7px;text-decoration:none}.icon-button .icon{width:18px;height:18px}.icon-button:hover{background:var(--accent-soft);color:var(--teal);border-color:var(--line);text-decoration:none}.icon-button:disabled{opacity:.5;cursor:wait}.danger-text{color:var(--danger)}.danger-text:hover{background:var(--danger-bg);color:var(--danger)}.card,.topbar{background:var(--surface);border-color:var(--line)}.card{box-shadow:var(--shadow)}.topbar{height:80px;position:relative}.topbar-start{display:flex;align-items:center;gap:17px}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb .muted{padding:0 8px}.breadcrumb strong{color:var(--ink)}.account-link{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.account-link:hover{text-decoration:none}.account-name{font-size:12px}.avatar{background:var(--accent-soft);color:var(--teal);flex-shrink:0}.menu-toggle{display:inline-flex}.account form{margin:0;padding-left:8px;border-left:1px solid var(--line)}.theme-toggle{margin-right:4px}[data-theme=light] .icon-sun,[data-theme=dark] .icon-moon{display:none}.sidebar{width:264px;padding:26px 16px 20px}.workspace{margin-left:264px}.sidebar .brand{font-size:29px;margin:0 12px 30px;min-height:36px;gap:0}.brand-name{overflow:hidden;max-width:190px;text-overflow:ellipsis;white-space:nowrap}.sidebar nav{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3b565d transparent}.nav-section{margin:0 0 18px}.nav-caption{font-size:9px;font-weight:700;letter-spacing:1.2px;margin:12px 12px 7px;color:#86a2a8;line-height:1.5;text-transform:uppercase}.nav-item{font-size:12px;padding:10px 12px;gap:12px;margin:3px 0;line-height:1.35;min-height:40px}.nav-item .icon{width:18px;height:18px;color:#8cb8b7}.nav-item.selected{border-left:2px solid #85d5bd;padding-left:10px}.sidebar-foot{margin-top:14px;display:flex;align-items:center;flex-shrink:0;white-space:nowrap}.sidebar-foot small{margin-left:0}.sidebar-close{display:none}.nav-backdrop{position:fixed;inset:0;background:#07171a99;border:0;z-index:25}.skip-link{position:fixed;top:-70px;left:20px;background:var(--surface);color:var(--ink);padding:12px;z-index:100}.skip-link:focus{top:10px}.button{background:var(--surface);color:var(--ink);border-color:var(--line);gap:8px}.button .icon{width:16px;height:16px}.button.primary{background:var(--teal);border-color:var(--teal);color:#fff}[data-theme=dark] .button.primary{color:#101d23}.button.danger{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}.tag{background:var(--surface-soft);color:var(--muted)}.tag.light{background:#ffffff0e;color:#a3d7ca}.badge{background:var(--surface-soft);color:var(--muted);border-color:var(--line)}.badge.success{background:var(--positive-bg);color:var(--positive);border-color:var(--line)}.badge.inactive .status-dot{background:var(--muted)}.badge-list{display:flex;gap:6px;flex-wrap:wrap}.badge-list .badge{white-space:normal}.module-icon{background:var(--accent-soft);color:var(--teal)}.stat>strong,.text-stat{color:var(--ink)}.module-bottom,td{border-color:var(--line)}.form-field input:not([type=checkbox]),.form-field select,.form-field textarea{background:var(--field);color:var(--ink);border-color:var(--line)}.form-field input[type=checkbox],.choice input{accent-color:var(--teal);width:16px;height:16px;flex-shrink:0}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--teal);outline:2px solid var(--accent-soft)}.form-field .field-error,.field-error{color:var(--danger)}.form-field.checkbox{align-items:flex-start}.checkbox label{font-weight:500}.flash{background:var(--positive-bg);color:var(--positive);border-color:var(--line)}.flash.error{background:var(--danger-bg);color:var(--danger);border-color:var(--line)}th{background:var(--surface-soft);color:var(--muted)}td{font-size:12px}.table-scroll{overflow-x:auto}.table-scroll table{min-width:780px}.identity-cell{display:flex;align-items:center;gap:12px;min-width:180px}.name-link{font-weight:650;color:var(--ink)}.name-link:hover{color:var(--teal)}.mini-label{font-size:9px;color:var(--teal)}.summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:23px}.summary-item{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:18px 20px;color:var(--muted);font-size:12px}.summary-item>.icon{width:22px;height:22px;color:var(--teal)}.summary-item strong{font-size:23px;color:var(--ink);margin-right:5px;font-weight:650}.list-toolbar{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.search-input{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--field);border-radius:7px;padding:0 12px;flex:1;min-width:220px;color:var(--muted)}.search-input input{width:100%;border:0;background:transparent;color:var(--ink);padding:10px 0;font-size:12px;outline-offset:2px}.list-toolbar>select{border:1px solid var(--line);border-radius:7px;padding:10px 12px;background:var(--field);color:var(--ink);font-size:12px}.list-toolbar>a{font-size:12px}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:3px}.row-actions form{margin:0;display:flex}.actions-heading{text-align:right}.back-link{display:inline-flex;gap:7px;align-items:center;font-size:12px;margin-bottom:14px;color:var(--muted)}.back-link .icon{width:15px}.editor-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:22px}.editor-grid>.card{min-width:0}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.card-heading{display:flex;gap:13px;align-items:flex-start;margin-bottom:24px}.card-heading>.icon{color:var(--teal);margin-top:3px}.card-heading h2,.card-heading h3{margin:0 0 5px;font-size:18px}.card-heading p{font-size:12px;margin:0}.card-heading .link-button{margin-left:auto;color:var(--teal);font-size:11px}.form-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:23px;padding:18px 0}.help-text{font-size:11px;color:var(--muted);margin:15px 0 0;line-height:1.7}.choice-list{display:grid;gap:6px}.choice{display:flex!important;align-items:flex-start;gap:10px;font-size:12px!important;font-weight:400!important;border:1px solid transparent;padding:10px 11px;border-radius:7px;margin:0!important}.choice:hover{background:var(--surface-soft);border-color:var(--line)}.choice strong{font-size:12px;font-weight:550}.choice small{font-size:10px;margin-top:3px}.choice input{margin-top:3px}.info-note{display:flex;gap:11px;align-items:flex-start;padding:14px 16px;background:var(--accent-soft);color:var(--teal);font-size:12px;border-radius:8px;line-height:1.7}.info-note>.icon{margin-top:2px}.permissions-heading{margin-top:28px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.permission-group .card-heading{margin-bottom:10px}.permission-detail{background:var(--surface-soft);border-radius:8px;padding:20px}.permission-detail h3{font-size:15px}.permission-detail p{display:flex;gap:9px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:9px}.permission-detail .icon{width:15px;height:15px;color:var(--teal)}.profile-banner{display:flex;align-items:center;gap:20px;margin-bottom:24px}.profile-banner h2{margin:0 0 4px}.profile-banner p{margin:0 0 8px}.profile-banner>.badge{margin-left:auto}.avatar-large{width:68px;height:68px;font-size:27px;border-radius:16px}.details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:15px 0 32px}.details-grid dt,.module-facts dt{font-size:11px;color:var(--muted);margin-bottom:5px}.details-grid dd{margin:0;font-size:14px;overflow-wrap:anywhere}.appearance-card{margin-top:22px}.appearance-card .card-heading{margin:0}.delete-card{max-width:730px;padding:30px}.delete-icon{display:grid;place-items:center;width:54px;height:54px;background:var(--danger-bg);color:var(--danger);border-radius:13px;margin-bottom:22px}.delete-icon .icon{width:25px;height:25px}.settings-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px}.settings-nav{display:flex;flex-direction:column;gap:6px;align-self:start;position:sticky;top:20px}.settings-nav a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:8px;color:var(--muted);font-size:12px}.settings-nav a:hover{background:var(--accent-soft);color:var(--teal);text-decoration:none}.settings-sections{display:grid;gap:20px;min-width:0}.settings-sections .form-footer{margin:0;padding-top:0}.theme-previews{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:4px 0 24px}.theme-preview{display:flex;gap:15px;height:105px;border-radius:9px;overflow:hidden;border:1px solid var(--line)}.theme-preview>span{width:25%;background:#183439}.theme-preview>div{padding:15px 0;flex:1}.theme-preview i{display:inline-block;width:30%;height:25px;border-radius:4px;margin-right:10px}.theme-preview strong{display:block;font-size:11px;font-weight:500}.preview-light{background:#f1f5f6;color:#344b54}.preview-light i{background:#fff;border:1px solid #dee7e9}.preview-dark{background:#111a22;color:#e5ecf0}.preview-dark i{background:#263743;border:1px solid #344954}.module-notice{margin-bottom:24px}.managed-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.managed-module{display:flex;flex-direction:column;padding:26px}.managed-module h2{font-size:19px;margin-bottom:6px}.managed-module>.muted{font-size:12px}.module-tags{display:flex;gap:7px;flex-wrap:wrap;margin:3px 0 20px}.module-facts{margin:0 0 15px;display:grid;gap:12px}.module-facts>div{display:flex;justify-content:space-between;gap:15px}.module-facts dt{margin:0}.module-facts dd{margin:0;font-size:12px;text-align:right}.module-details{border-top:1px solid var(--line);padding:12px 0;font-size:11px;color:var(--muted)}.module-details summary{cursor:pointer}.module-details .badge-list{margin-top:12px;gap:5px 12px}.module-actions{margin-top:auto;padding-top:17px;border-top:1px solid var(--line)}.protected-label{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px;min-height:40px}.auth-shell{background:var(--surface)}.auth-card{background:var(--surface)}.auth-shell>.theme-error{position:static}.footer a{color:var(--muted)}
@media(min-width:761px){.sidebar-collapsed .sidebar{width:80px;padding-left:12px;padding-right:12px}.sidebar-collapsed .workspace{margin-left:80px}.sidebar-collapsed .brand{margin:0 0 30px;justify-content:center}.sidebar-collapsed .brand-mark{margin:0}.sidebar-collapsed .brand-name,.sidebar-collapsed .nav-text,.sidebar-collapsed .nav-caption,.sidebar-collapsed .sidebar-label{display:none}.sidebar-collapsed .nav-item{justify-content:center;padding:11px}.sidebar-collapsed .nav-item.selected{padding-left:9px}.sidebar-collapsed .nav-section+.nav-section{padding-top:12px;border-top:1px solid #2b444a}.sidebar-collapsed .sidebar-foot{justify-content:center;padding:16px 0}.sidebar-collapsed .sidebar-foot .status-dot{margin:0}}
@media(max-width:1150px){.editor-grid{grid-template-columns:1fr}.settings-layout{grid-template-columns:150px minmax(0,1fr)}.content{padding-left:25px;padding-right:25px}.topbar{padding:0 25px}.summary-item{padding:14px}.summary-item span{font-size:11px}.summary-item strong{font-size:21px}}
@media(max-width:760px){.sidebar{width:264px;transform:translateX(-100%)}.nav-open .sidebar{transform:translateX(0)}.workspace{margin-left:0}.sidebar-close{display:inline-flex;position:absolute;right:10px;top:10px;color:#a9bec1}.sidebar .brand{padding-top:10px}.topbar{height:70px;padding:0 15px}.breadcrumb{display:none}.account-name{display:none}.account-link{gap:0}.account{gap:6px}.account form{padding-left:5px}.theme-toggle{margin-right:0}.content{padding:25px 16px}.summary-row{gap:8px}.summary-item{padding:12px;gap:6px;align-items:flex-start}.summary-item>.icon{width:17px}.summary-item span{font-size:10px;line-height:1.5}.summary-item strong{font-size:20px;display:block;line-height:1.2}.field-grid,.permission-grid,.managed-module-grid{grid-template-columns:1fr}.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;flex-direction:row;overflow:auto;gap:4px}.settings-nav a{font-size:11px;white-space:nowrap;padding:10px}.settings-nav .icon{width:16px}.list-toolbar{padding:15px;gap:10px}.search-input{flex-basis:100%}.list-toolbar>select{flex:1}.card{padding:20px}.table-card{padding:0}.profile-banner{gap:14px;flex-wrap:wrap}.avatar-large{width:54px;height:54px;font-size:22px}.profile-banner>.badge{margin-left:0}.theme-previews{gap:12px}.details-grid{gap:18px}.details-grid dd{font-size:12px}.module-facts>div{gap:10px}.managed-module h2{font-size:18px}.form-footer{flex-wrap:wrap}.section-heading{gap:10px}.section-heading>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.stat>span,.stat p,.stat strong small,.module-card p,.module-bottom{color:var(--muted)}.stat .text-stat{color:var(--teal)}

/* Mensagens persistem até o usuário fechar ou navegar. */
.flash{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-left:4px solid currentColor;border-radius:8px;padding:14px 16px;overflow-wrap:anywhere;font-size:13px;margin:0 0 16px;background:var(--surface-soft);color:var(--ink)}
.flash.error{background:var(--danger-bg);color:var(--danger)}.flash.success{background:var(--positive-bg);color:var(--positive)}.flash.info{background:var(--accent-soft);color:var(--teal)}.flash.warning{background:#fff7e0;color:#805b0b}
:root[data-theme=dark] .flash.warning{background:#3b3320;color:#efd28c}
.notification-body{flex:1;min-width:0}.notification-body strong,.notification-body span{display:block}.notification-body strong{margin-bottom:4px}.flash .icon-button{color:inherit;margin:-5px -7px -5px 0}.flash>.icon{margin-top:2px}.flash [data-metric=message]{flex:1;min-width:0}

/* Notificações não devem ocupar as colunas da apresentação e do formulário. */
.auth-shell{position:relative;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.auth-shell>[data-notifications]{position:absolute;top:16px;right:16px;width:min(440px,calc(100% - 32px));z-index:50}
.auth-brand,.auth-card{min-width:0}
@media(max-width:760px){
  .auth-shell{grid-template-columns:minmax(0,1fr)}
  .auth-shell>[data-notifications]{position:static;width:auto;margin:16px 16px 0;grid-column:1}
  .auth-shell>[data-notifications]:not(:has([data-notification])){display:none}
}

/* Consistent form feedback and bounded content on narrow screens. */
.workspace,.content,.page-heading>div,.field-grid>*,.topbar-start{min-width:0}
.form-field input:not([type=checkbox]),.form-field select,.form-field textarea{min-width:0;max-width:100%}
.page-heading h1,.card h2,.card h3,.info-note,.footer{overflow-wrap:anywhere}
.list-toolbar label{display:grid;gap:5px;font-size:12px;min-width:0;color:var(--muted)}
.list-toolbar label input,.list-toolbar label select{width:100%;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--field);color:var(--ink)}
.list-toolbar label input[type=checkbox]{width:auto}
.form-errors{padding:18px 20px;margin-bottom:22px;border:1px solid var(--danger);border-left:4px solid var(--danger);border-radius:9px;background:var(--danger-bg);color:var(--danger);overflow-wrap:anywhere}
.form-errors h2{font-size:16px;margin-bottom:8px}.form-errors ul{padding-left:20px;margin:0}.form-errors a{color:inherit;text-decoration:underline}
[aria-invalid=true]{border-color:var(--danger)!important}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
@media(max-width:760px){.page-heading{align-items:flex-start;flex-wrap:wrap}.page-heading .actions{width:100%}.page-heading .button{white-space:normal}.list-toolbar label{flex:1 1 130px}.footer{margin:0 16px;gap:10px;flex-wrap:wrap}.pagination{flex-wrap:wrap}.info-note{min-width:0}}
.help-text,.editor-status,.notification-body,.permission-detail dd{overflow-wrap:anywhere}

/* Audit policy and searchable permission catalog. */
.audit-configuration{padding:0}.audit-configuration>summary{padding:20px;cursor:pointer;font-size:16px;font-weight:600}.audit-configuration>summary span{font-size:12px;font-weight:400;margin-left:12px}.audit-configuration form{padding:0 20px 4px}.audit-scope-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0;font-size:12px}.audit-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.audit-module-choice{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--surface-soft);cursor:pointer;min-width:0}.audit-module-choice input{accent-color:var(--teal);margin-top:5px}.audit-module-choice strong{font-size:13px}.audit-module-choice span{min-width:0;overflow-wrap:anywhere}.audit-module-choice:has(input:checked){border-color:var(--teal);background:var(--accent-soft)}.audit-filters label{flex:1 1 150px}.audit-filters label:first-child{flex-basis:200px}.audit-table td{vertical-align:top}.audit-table .badge{white-space:normal}.audit-date{white-space:nowrap}.audit-event{margin-top:10px}.audit-event summary{cursor:pointer;color:var(--teal);font-size:12px}.audit-event-content{max-height:300px;overflow:auto;max-width:500px;margin-top:12px;padding:12px;background:var(--surface-soft);border:1px solid var(--line);border-radius:6px}.audit-event dl{margin:0}.audit-event dt{font-size:11px;color:var(--muted);font-weight:600;margin-top:8px}.audit-event dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:11px ui-monospace,monospace}.permission-search{margin:20px 0}.permission-group>summary{padding:18px;cursor:pointer;font-size:15px;font-weight:600}.permission-group>summary small{display:inline;font-weight:400;margin-left:10px}.permission-group .permission-group-body{padding:0 18px 18px}.permission-grid details.permission-group{padding:0;align-self:start}.permission-group .card-heading{margin:0 0 12px;align-items:center}.permission-group .card-heading .link-button{margin-left:0}.permission-selection{font-size:12px;color:var(--muted)}.permission-selection-help{margin-bottom:20px}@media(max-width:760px){.audit-configuration>summary span{display:block;margin:8px 0 0}.audit-module-grid{grid-template-columns:1fr}.audit-configuration .form-footer{justify-content:flex-start}.audit-event-content{max-width:280px}.permission-grid{grid-template-columns:1fr}}
.choice[hidden],.permission-group[hidden]{display:none!important}
.audit-scroll-hint{display:none}@media(max-width:760px){.audit-scroll-hint{display:block;margin:0;padding:12px 16px}}
