:root{
  --bg:#f4f7fb;--surface:#fff;--surface-2:#f8fafc;--border:#e3e9f2;
  --text:#14213d;--muted:#64748b;--primary:#123d6a;--primary-2:#0b2c4e;
  --accent:#1f7ae0;--success:#138a5b;--warning:#aa6a00;--danger:#c53737;
  --shadow:0 10px 28px rgba(15,47,87,.08);--radius:18px
}
*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
button,input,select{font:inherit}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--primary-2),var(--primary));color:#fff;padding:24px 18px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;align-items:center;gap:12px;padding:0 8px}.brand-mark{width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.14);display:grid;place-items:center;font-weight:800}.brand strong{display:block;font-size:16px}.brand small{opacity:.72}.nav{display:flex;flex-direction:column;gap:7px}.nav button,.nav a{border:0;background:transparent;color:#dfeaf6;text-decoration:none;text-align:left;padding:11px 13px;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.nav button:hover,.nav a:hover,.nav .active{background:rgba(255,255,255,.12);color:white}.legacy-pill{font-size:10px;text-transform:uppercase;letter-spacing:.06em;background:rgba(255,255,255,.12);padding:3px 6px;border-radius:999px}.sidebar-footer{margin-top:auto;padding:12px;border-top:1px solid rgba(255,255,255,.14)}.sidebar-footer .name{font-weight:700}.sidebar-footer .role{opacity:.7;text-transform:capitalize;font-size:12px}.main{min-width:0}.topbar{height:74px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:10}.topbar h1{font-size:20px;margin:0}.topbar-actions{display:flex;gap:10px}.content{padding:28px 30px 40px;max-width:1500px;margin:auto}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--accent);font-weight:800}.hero{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}.hero h2{margin:6px 0 4px;font-size:30px}.hero p{margin:0;color:var(--muted)}.btn{border:1px solid var(--border);background:white;color:var(--text);padding:10px 14px;border-radius:11px;cursor:pointer;font-weight:700}.btn:hover{border-color:#c9d5e5}.btn.primary{background:var(--primary);border-color:var(--primary);color:white}.btn.ghost{background:transparent}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.metric{padding:20px}.metric-label{color:var(--muted);font-size:13px}.metric-value{font-size:31px;font-weight:800;margin-top:6px}.metric-foot{font-size:12px;color:var(--muted);margin-top:4px}.panel{padding:20px;margin-bottom:18px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.panel-head h3{margin:0;font-size:17px}.panel-head p{margin:3px 0 0;color:var(--muted);font-size:13px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:14px}.table{width:100%;border-collapse:collapse;min-width:760px}.table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-align:left;background:#f8fafc}.table th,.table td{padding:13px 14px;border-bottom:1px solid var(--border)}.table tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#edf5ff;color:#185d9f;font-size:12px;font-weight:700}.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.field label{display:block;font-size:12px;font-weight:800;color:var(--muted);margin-bottom:6px}.field input,.field select{width:100%;border:1px solid var(--border);background:white;border-radius:11px;padding:10px 11px;color:var(--text);outline:none}.field input:focus,.field select:focus{border-color:#8bbcf4;box-shadow:0 0 0 3px rgba(31,122,224,.09)}.empty{padding:34px;text-align:center;color:var(--muted)}.loader{padding:42px;text-align:center;color:var(--muted)}.error{background:#fff1f1;border:1px solid #ffc9c9;color:#9d2e2e;border-radius:12px;padding:12px 14px;margin-bottom:16px}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-art{background:linear-gradient(135deg,#0b2c4e,#174e82);color:white;padding:64px;display:flex;flex-direction:column;justify-content:space-between}.login-art h1{font-size:44px;max-width:650px;margin:12px 0}.login-art p{max-width:560px;line-height:1.6;color:#d8e7f6}.login-card-wrap{display:grid;place-items:center;padding:30px}.login-card{width:min(430px,100%);background:white;border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);padding:30px}.login-card h2{margin:0 0 6px}.login-card p{color:var(--muted);margin:0 0 24px}.login-card .field{margin-bottom:15px}.login-card .btn{width:100%;margin-top:6px}.hint{margin-top:16px;font-size:12px;color:var(--muted);line-height:1.5}.mobile-menu{display:none}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--success);display:inline-block;margin-right:7px}
@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.app-shell{display:block}.sidebar{position:fixed;left:-280px;width:260px;z-index:30;transition:.2s}.sidebar.open{left:0}.topbar{padding:0 18px}.mobile-menu{display:inline-flex}.content{padding:20px 16px 32px}.login-shell{grid-template-columns:1fr}.login-art{display:none}.hero{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.cards,.filters{grid-template-columns:1fr}.hero h2{font-size:25px}}
/* v0.2 - formulários React */
.success{background:#eefbf5;border:1px solid #b9e8d2;color:#156744;border-radius:12px;padding:12px 14px;margin-bottom:16px}.cell-muted{font-size:12px;color:var(--muted);margin-top:4px}.actions{display:flex;flex-wrap:wrap;gap:6px}.btn.compact{padding:7px 9px;font-size:12px;text-decoration:none}.btn.danger{border-color:#f0c5c5;color:var(--danger);background:#fff8f8}.btn.danger:hover{background:#fff0f0}.field-help{font-size:11px;color:var(--muted);margin-top:5px}.form-section{margin-bottom:18px}.section-title h3{margin:0;font-size:17px}.section-title p{margin:4px 0 0;color:var(--muted);font-size:13px}.form-grid{display:grid;gap:14px}.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.repeat-list{display:flex;flex-direction:column;gap:10px}.repeat-row{display:grid;grid-template-columns:minmax(260px,1fr) 150px 120px auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.repeat-row.area{grid-template-columns:minmax(260px,1fr) 140px auto}.repeat-row .field{margin:0}.row-remove{margin-bottom:1px}.check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.check-card{display:flex;gap:9px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:13px;cursor:pointer;background:var(--surface-2);font-weight:700}.check-card:has(input:checked){border-color:#92bff0;background:#edf5ff}.check-line{display:block;margin-top:12px;color:var(--text)}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.compact-empty{padding:18px}.filters-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.form-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.repeat-row{grid-template-columns:minmax(220px,1fr) 130px 100px auto}.check-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.form-grid.cols-3,.filters-4{grid-template-columns:1fr}.repeat-row,.repeat-row.area{grid-template-columns:1fr}.row-remove{width:100%}.check-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}
.filters-6{grid-template-columns:repeat(6,minmax(0,1fr))}.table-summary{font-size:12px;color:var(--muted);margin:0 0 10px}.question-preview{min-width:300px;max-width:520px}.pagination-bar{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:16px}.badge.status-aprovado{background:#edf9f3;color:#16734d}.badge.status-reprovado{background:#fff0f0;color:#a63232}.badge.status-revisado{background:#fff7e9;color:#8a5a00}
@media(max-width:1250px){.filters-6{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.filters-6{grid-template-columns:1fr}.pagination-bar{flex-wrap:wrap}.question-preview{min-width:220px}}

/* React v0.3 - editor de questões */
.react-quill .ql-container{min-height:180px;font-size:15px;background:#fff}.react-quill .ql-editor{min-height:180px;line-height:1.6}.react-quill.small .ql-container,.react-quill.small .ql-editor{min-height:105px}.react-quill .ql-editor img{max-width:100%;height:auto}.alt-editor{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start;margin:18px 0}.alt-letter{width:38px;height:38px;border-radius:10px;background:#eef5ff;color:#174d86;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:2px}.info-strip{margin-top:14px;padding:12px 14px;border-radius:10px;background:#eef7ff;border:1px solid #cfe5fb;font-size:14px}.info-strip.warning{background:#fff8e7;border-color:#f1d59a}.model-links{display:flex;gap:8px;flex-wrap:wrap}.import-note{border-style:dashed}.react-quill .ql-toolbar.ql-snow{border-radius:10px 10px 0 0}.react-quill .ql-container.ql-snow{border-radius:0 0 10px 10px}
@media(max-width:700px){.alt-editor{grid-template-columns:1fr}.alt-letter{margin-bottom:-8px}}

/* React v0.4 - importação DOC/DOCX e revisão */
.btn.warning{border-color:#ead09a;color:#8a5a00;background:#fffaf0}.btn.warning:hover{background:#fff5db}.batch-panel{border-left:4px solid var(--accent)}.review-list{display:flex;flex-direction:column;gap:14px}.review-card{padding:18px}.review-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.review-question{border:1px solid var(--border);border-radius:12px;background:#fff;padding:14px;min-height:auto}.review-question img,.review-alt img{max-width:100%;height:auto}.review-alts{display:flex;flex-direction:column;gap:8px;margin-top:12px}.review-alt{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.review-alt.correct{border-color:#9bd6bb;background:#effaf5}.review-alt p{display:inline;margin:0}.review-note{width:100%;margin-top:12px;border:1px solid var(--border);border-radius:11px;padding:10px 11px;font:inherit;resize:vertical}.review-note:focus{outline:none;border-color:#8bbcf4;box-shadow:0 0 0 3px rgba(31,122,224,.09)}.review-actions{margin-top:10px}.pagination-row{display:flex;align-items:center;justify-content:center;gap:14px;margin:18px 0}.model-links{margin-top:14px}
@media(max-width:720px){.review-head{flex-direction:column}.review-actions .btn{flex:1}.pagination-row{flex-wrap:wrap}}

/* React v0.5 - identidade visual fiel ao legado */
.legacy-react-app{display:block!important;min-height:100vh;background:var(--page)}
.legacy-react-app .main{width:100%!important;min-width:0;overflow-x:hidden;background:var(--page)}
.legacy-react-app .content{padding:22px;max-width:none;margin:0}
.legacy-react-app .top-menu-link button{font:inherit}
.topbar-user-area{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.legacy-count{margin-left:8px;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#fee2e2;color:#991b1b;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}
.top-menu-dropdown-content a{display:flex!important;align-items:center!important;gap:9px!important}
.top-menu-dropdown-content .legacy-count{margin-left:auto}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px}
.page-heading-title{margin:0;color:#10213a;font-size:1.55rem;font-weight:800}
.page-heading-subtitle{margin:4px 0 0;color:#6f7f95;font-size:.9rem}
.dashboard-panel{padding:0;margin-top:18px;overflow:hidden}
.legacy-panel-title{padding:14px 18px;border-bottom:1px solid var(--border);font-weight:800;color:#10213a;background:#fbfcfe}
.legacy-panel-title i{color:var(--primary);margin-right:7px}
.legacy-notification{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin:18px 0;border-radius:14px;border:1px solid #f0d38c;background:#fff8e6;color:#71530a}
.legacy-message{margin:16px;padding:13px 15px;border-radius:12px;border:1px solid var(--border);background:#f8fafc}
.legacy-message.success{border-color:#b7e5cc;background:#eefbf4;color:#176943}
.legacy-message.warning{border-color:#f1d59a;background:#fff8e7;color:#76540a}
.window-alert{margin:14px 0 0}.window-alert strong,.window-alert small{display:block}.window-alert small{margin-top:3px}
.dup-list{padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.dup-alert{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:start;border-radius:12px;padding:12px 14px;border-left:4px solid #f59e0b;background:#fffaf0}
.dup-alert.danger{border-left-color:#ef4444;background:#fff5f5}.dup-alert-icon{font-size:1.2rem}.dup-alert-content strong{display:block;color:#25344c}.dup-preview{font-size:.82rem;margin-top:6px;color:#53657c;line-height:1.4}
.legacy-login-wrapper{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem;background:url('/assets/img/bg-login.jpg') no-repeat center center fixed;background-size:cover}
.legacy-login-box{width:100%;max-width:380px;background:rgba(255,255,255,.96);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.2);padding:2rem;backdrop-filter:blur(6px)}
.legacy-login-logo{text-align:center;margin-bottom:12px}.legacy-login-logo img{max-width:150px;max-height:115px;object-fit:contain}.legacy-login-title{text-align:center;font-size:1.45rem;font-weight:800;color:#10213a;margin:0}.legacy-login-subtitle{text-align:center;color:#6f7f95;margin:4px 0 20px}.legacy-login-button{width:100%;margin-top:6px}
/* componentes React adotando densidade/cantos do legado */
.legacy-react-app .card{border-radius:18px;border-color:var(--border);box-shadow:0 10px 24px rgba(15,23,42,.04)}
.legacy-react-app .hero{margin-bottom:18px;align-items:center}.legacy-react-app .hero h2{font-size:1.55rem;color:#10213a}.legacy-react-app .eyebrow{display:none}
.legacy-react-app .panel{padding:18px}.legacy-react-app .btn{border-radius:9px;padding:8px 11px}.legacy-react-app .btn.primary{background:var(--primary);border-color:var(--primary)}
.legacy-react-app .field input,.legacy-react-app .field select,.legacy-react-app .review-note{border-radius:9px}
.legacy-react-app .table-wrap{border-radius:18px}.legacy-react-app .table th{font-size:.8rem}.legacy-react-app .table td{font-size:.88rem}
@media(max-width:980px){.topbar-user-area{width:100%}.legacy-notification{align-items:flex-start;flex-direction:column}.dup-alert{grid-template-columns:32px 1fr}.dup-alert>.btn{grid-column:2}.legacy-react-app .content{padding:16px}}
.review-duplicate-alert{margin-top:12px;padding:12px 14px;border-radius:12px;border-left:4px solid #f59e0b;background:#fffaf0}.review-duplicate-alert.danger{border-left-color:#ef4444;background:#fff5f5}.review-duplicate-item{margin-top:9px;padding-top:9px;border-top:1px solid rgba(0,0,0,.07);font-size:.88rem}.review-duplicate-item .status-chip{margin-right:6px}
.legacy-react-app>.sidebar.top-menu{height:auto!important;display:block!important;flex-direction:initial!important;gap:0!important;padding:0!important;position:sticky!important;top:0!important;width:100%!important}
.legacy-react-app .topbar{height:auto!important;min-height:68px!important;background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--border)!important;padding:14px 22px!important;display:flex!important;justify-content:space-between!important;align-items:center!important;position:relative!important;top:auto!important;z-index:20!important;backdrop-filter:none!important}
.legacy-react-app .topbar-left{display:block}.legacy-react-app .topbar-title{font-size:20px;font-weight:800;color:#10213a}.legacy-react-app .topbar-date{color:#6f7f95;font-size:13px;margin-top:2px}
.legacy-react-app .top-menu-logout{font:inherit}
@media(max-width:980px){.legacy-react-app .topbar{padding:12px 16px!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important}}
/* v0.7 - cadastros e alunos independentes do legado */
.inline-actions{align-self:end;margin:0}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding-top:16px;color:#66758b;font-size:.88rem}.panel-head input[type=file]{max-width:280px}.form-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:980px){.form-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.form-grid.cols-4{grid-template-columns:1fr}.pagination{flex-wrap:wrap}}

/* =========================================================
   v0.8 - Nova experiência visual, mantendo identidade e fluxos
========================================================= */
:root{
  --navy:#0b1930;
  --navy-2:#102846;
  --brand:#2563eb;
  --brand-2:#1d4ed8;
  --brand-soft:#eff6ff;
  --ink:#172033;
  --muted:#6b778c;
  --line:#e5eaf1;
  --surface:#ffffff;
  --surface-soft:#f8fafc;
  --page:#f3f6fb;
  --shadow:0 10px 30px rgba(17,24,39,.06);
}
body{font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--page);color:var(--ink)}
.legacy-react-app{background:var(--page)}
.legacy-react-app>.sidebar.top-menu{background:linear-gradient(92deg,var(--navy),var(--navy-2))!important;box-shadow:0 8px 28px rgba(4,18,39,.18)!important}
.top-menu-inner{max-width:1600px;margin:0 auto;width:100%;min-height:76px;padding:9px 28px}
.top-menu-brand{min-width:244px;gap:12px}
.top-menu-brand img{height:58px!important;max-width:88px;filter:drop-shadow(0 4px 10px rgba(0,0,0,.14))}
.top-menu-brand strong{font-size:15.5px;letter-spacing:.01em}.top-menu-brand small{font-size:11.5px}
.top-menu-nav{gap:7px}
.top-menu-link,.top-menu-dropbtn{min-height:44px;padding:10px 13px;border-radius:10px;font-size:13.5px;color:#d9e6f7!important}
.top-menu-link:hover,.top-menu-dropbtn:hover,.top-menu-link.active,.top-menu-dropdown.active>.top-menu-dropbtn{background:rgba(255,255,255,.11)!important;color:#fff!important;border-color:rgba(255,255,255,.08)!important;transform:none!important}
.top-menu-dropdown-content{border:1px solid rgba(226,232,240,.9)!important;border-radius:14px!important;box-shadow:0 18px 44px rgba(15,23,42,.18)!important;padding:7px!important;min-width:230px!important}
.top-menu-dropdown-content a{border-radius:9px!important;padding:10px 11px!important;font-size:13px!important;color:#27364d!important}
.top-menu-dropdown-content a:hover{background:#f1f5fb!important;color:#123f83!important}
.legacy-react-app .topbar{background:#fff!important;min-height:70px!important;padding:13px 28px!important;border-bottom:1px solid var(--line)!important}
.legacy-react-app .topbar-title{font-size:19px;color:#15233a;letter-spacing:-.01em}.legacy-react-app .topbar-date{font-size:12.5px}
.user-pill{box-shadow:none;border-color:#dfe6ef;padding:7px 12px;background:#fbfcfe}.user-pill .icon{color:var(--brand)}
.legacy-react-app .content{max-width:1600px;margin:0 auto;padding:26px 28px 42px}
.page-heading,.hero{margin-bottom:20px!important}.page-heading-title,.legacy-react-app .hero h2{font-size:1.65rem!important;letter-spacing:-.025em;color:#14233a!important}.page-heading-subtitle,.legacy-react-app .hero p{font-size:.91rem;color:#6c7b90!important}
.surface,.card,.panel-soft,.sys-card,.table-wrap{background:#fff;border:1px solid var(--line)!important;box-shadow:var(--shadow)!important;border-radius:14px!important}
.sys-cards{gap:14px}.sys-card{padding:17px 18px}.sys-card .k{font-size:28px}.sys-card .sys-icon{border-radius:11px;background:var(--brand-soft);color:var(--brand)}
.legacy-panel-title{background:#fbfcfe;border-color:var(--line);padding:13px 16px}
.btn{min-height:38px;border-radius:9px!important;padding:8px 12px!important;font-size:.82rem;font-weight:700;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;box-shadow:none!important;transition:background .16s,border-color .16s,transform .16s}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--brand)!important;border-color:var(--brand)!important;color:#fff!important}.btn.primary:hover{background:var(--brand-2)!important}
.btn.ghost{background:#fff!important;border-color:#dbe3ed!important;color:#34445b!important}.btn.ghost:hover,.btn:not(.primary):not(.danger):not(.warning):hover{background:#f7f9fc!important;border-color:#cbd6e4!important}
.btn.compact{min-height:32px;padding:6px 9px!important;font-size:.75rem;border-color:#dce4ee;background:#fff;color:#314157}
.btn.action-edit{color:#2058a8;background:#f4f8ff;border-color:#d5e4fb}.btn.action-view{color:#43516a}.btn.action-key{color:#75540c;background:#fffaf0;border-color:#f3dfb1}.btn.action-doc{color:#17704b;background:#f2fbf6;border-color:#cfeedd}.btn.danger{color:#b42318!important;background:#fff7f7!important;border-color:#f3cece!important}.btn.warning{color:#8a5a00!important;background:#fff9ec!important;border-color:#efd59b!important}
.field label{font-size:.77rem;font-weight:800;color:#47566b;margin-bottom:6px}.field input,.field select,.field textarea,.review-note{min-height:40px;border:1px solid #dce3ec!important;border-radius:9px!important;background:#fff;color:#1f2937;font-size:.87rem}.field input:focus,.field select:focus,.field textarea:focus,.review-note:focus{border-color:#8bb6f2!important;box-shadow:0 0 0 3px rgba(37,99,235,.09)!important}
.table-wrap{overflow:auto}.table{font-size:.86rem}.table thead th{background:#f8fafc!important;color:#405068!important;font-size:.74rem!important;text-transform:uppercase;letter-spacing:.035em;padding:11px 12px!important;white-space:nowrap}.table td{padding:11px 12px!important;border-color:#edf0f4!important;vertical-align:middle!important}.table tbody tr:hover{background:#fbfdff}.cell-muted{font-size:.74rem;color:#8390a3;margin-top:3px}
.actions{gap:6px!important;flex-wrap:wrap}.status-chip,.badge,.role-chip{font-size:.7rem!important;border-radius:999px!important;padding:4px 8px!important;font-weight:800!important}
.filters,.form-grid{gap:13px!important}.form-section{padding:18px!important;margin-bottom:16px!important}.section-title h3{font-size:1rem!important;color:#24334a}.section-title p{font-size:.8rem!important;color:#7a8799}
.check-card{border:1px solid #dfe6ee!important;border-radius:10px!important;background:#fff!important}.check-card.selected{border-color:#9ec1f4!important;background:#f4f8ff!important}
.info-strip,.info-banner,.notice,.legacy-notification,.legacy-message{border-radius:11px!important;box-shadow:none!important}
.review-card{border-radius:14px!important}.review-question,.review-alt{border-radius:9px!important}
.legacy-login-wrapper{background:linear-gradient(rgba(7,20,39,.42),rgba(7,20,39,.58)),url('/assets/img/bg-login.jpg') center/cover fixed!important}
.legacy-login-box{max-width:390px;border-radius:16px!important;padding:28px!important;box-shadow:0 22px 60px rgba(3,12,27,.28)!important;border:1px solid rgba(255,255,255,.7)}
.legacy-login-logo img{max-width:165px;max-height:125px}.legacy-login-title{font-size:1.5rem}.legacy-login-subtitle{font-size:.88rem}
@media(max-width:980px){.top-menu-inner{padding:8px 16px}.legacy-react-app .content{padding:18px 16px 34px}.legacy-react-app .topbar{padding:12px 16px!important}.top-menu-brand img{height:50px!important}.top-menu-brand{min-width:0}.top-menu-brand .brand-text{display:none}.top-menu-nav{padding:10px;background:var(--navy)!important;border-top:1px solid rgba(255,255,255,.08)}.top-menu-link,.top-menu-dropbtn{width:100%;justify-content:flex-start}.btn{min-height:40px}}

/* v0.9.1 - restauração cirúrgica do fluxo do legado */
.quick-access{margin-top:18px;padding:1rem 1.1rem}.section-heading{font-size:1rem;font-weight:700;margin:0 0 .8rem}.dashboard-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;align-items:start}.incomplete-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.65rem}.incomplete-card{border:1px solid #e3e8ef;border-radius:10px;padding:.7rem;background:#fff}.incomplete-title{display:flex;gap:.35rem;align-items:baseline;flex-wrap:wrap;margin-bottom:.45rem}.incomplete-disc{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;margin-bottom:.25rem;font-size:.78rem}.disc-name{font-weight:700;color:#1f5fa8;background:#eef6ff;border-radius:5px;padding:3px 7px;max-width:175px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.questoes-lista{display:grid;gap:1rem}.questao-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1rem;box-shadow:0 2px 10px rgba(15,23,42,.04)}.questao-card-header{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:.65rem}.questao-titulo{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.questao-numero{font-weight:800}.questao-acoes{display:flex;gap:.4rem;flex-wrap:wrap}.questao-meta{display:flex;flex-wrap:wrap;gap:.35rem .9rem;background:#f8fafc;border-radius:8px;padding:.55rem .7rem;margin-bottom:.75rem;font-size:.82rem}.questao-conteudo{padding:.35rem 0 .7rem;line-height:1.55}.questao-conteudo img,.alternativa-texto img{max-width:100%;height:auto}.alternativas-grid{display:grid;gap:.5rem}.alternativa-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:.55rem;align-items:start;border:1px solid #e5e7eb;border-radius:9px;padding:.6rem .7rem}.alternativa-correta{border-color:#86d2a2;background:#effaf3}.alternativa-letra{width:28px;height:28px;border-radius:999px;background:#eef2f7;display:flex;align-items:center;justify-content:center;font-weight:800}.alternativa-correta .alternativa-letra{background:#dff5e6;color:#16723a}.correct-tag{font-size:.72rem;font-weight:700;color:#16723a;background:#dff5e6;border-radius:999px;padding:.22rem .48rem;white-space:nowrap}.question-editor-flow{display:grid;gap:1rem}.question-context,.question-content{padding:1rem}.filtros-cadastro-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem}.avaliacoes-field{margin-top:1rem}.avaliacoes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-top:.45rem}.avaliacao-card{appearance:none;text-align:left;border:1px solid #dfe5ee;border-radius:12px;background:#fff;padding:.85rem;cursor:pointer;transition:.16s ease;min-height:120px}.avaliacao-card:hover{border-color:#9db8df;box-shadow:0 4px 14px rgba(15,23,42,.06)}.avaliacao-card.is-active{border-color:#3273dc;box-shadow:0 0 0 2px rgba(50,115,220,.12);background:#f7faff}.avaliacao-card-icone{color:#3273dc;font-size:1.15rem;margin-bottom:.4rem}.avaliacao-card-titulo{font-weight:800;margin-bottom:.25rem}.avaliacao-card-meta{font-size:.82rem;color:#64748b}.avaliacao-card-tags{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.55rem}.avaliacao-card-vazio{grid-column:1/-1;padding:1rem;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;background:#f8fafc}.field-label{display:block;font-weight:700}.field-help{margin-top:.35rem;font-size:.78rem;color:#64748b}.alternativas-box{margin-top:1rem}.questoes-filtros{margin-bottom:1rem}@media(max-width:1100px){.filtros-cadastro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-sections{grid-template-columns:1fr}}@media(max-width:650px){.filtros-cadastro-grid{grid-template-columns:1fr}.questao-card-header{align-items:flex-start;flex-direction:column}.alternativa-item{grid-template-columns:32px minmax(0,1fr)}.correct-tag{grid-column:2}.sys-cards{grid-template-columns:1fr 1fr}}

/* v0.9.2 — fidelidade visual/funcional ao legado nas telas auditadas */
.legacy-react-app .content{max-width:none!important;padding:20px 20px 36px!important;margin:0!important;overflow-x:hidden}
.legacy-react-app .main{min-width:0}
.legacy-react-app .topbar{display:none!important}

/* Dashboard: mesma densidade do legado */
.dashboard-cards,.sys-cards{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important;gap:16px!important}
.quick-access{margin-top:18px!important;padding:1rem 1.1rem!important}
.quick-access .title{margin-bottom:.8rem!important}
.dashboard-sections{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1rem!important;align-items:start!important;margin-top:1rem!important}
.dashboard-panel{padding:1rem!important;min-width:0}
.dashboard-link{margin-top:.75rem}
.dup-summary-bar-react{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .8rem;margin-bottom:.8rem;border-radius:10px;background:#f7f9fc;color:#42526b;font-size:.86rem}
.dup-summary-bar-react span{color:#6b7280;text-align:right}
.dup-groups-react{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;align-items:start}
.dup-group-react{border:1px solid #dfe5ee;border-radius:14px;background:#fff;overflow:hidden;min-width:0}
.dup-group-header-react{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.8rem 1rem;background:linear-gradient(180deg,#f8faff,#f4f7fb);border-bottom:1px solid #e4e9f1}
.dup-group-header-react>div{min-width:0}.dup-group-header-react strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#24324a}.dup-group-header-react small{display:block;margin-top:.18rem;color:#6b7280;font-size:.76rem}
.dup-items-react{display:grid;gap:.55rem;padding:.65rem}.dup-card-react{width:100%;border:1px solid #e2e7ef;border-radius:12px;background:#fff;padding:.7rem .8rem;text-align:left;cursor:pointer;display:grid;grid-template-columns:68px minmax(0,1fr) 16px;gap:.7rem;align-items:start}.dup-card-react:hover{border-color:#bdc9da;box-shadow:0 6px 18px rgba(31,41,55,.08)}
.dup-status-col{display:flex;flex-direction:column;align-items:center;gap:.25rem}.dup-status-col strong{font-size:.8rem;color:#4b5563}.dup-card-body{min-width:0}.dup-qids{display:flex;align-items:center;gap:.4rem;margin-bottom:.35rem}.dup-qids span{border-radius:7px;background:#edf3ff;color:#2457bd;font-weight:800;padding:.28rem .5rem}.dup-qids small{color:#9aa3b2}.dup-meta-mini{display:flex;flex-wrap:wrap;gap:.3rem .7rem;color:#5f6b7a;font-size:.76rem}.dup-indicators-react{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.4rem}.dup-open{color:#9aa3b2;font-size:.75rem;margin-top:.25rem}
.dup-modal-react{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:.75rem}.dup-modal-bg{position:absolute;inset:0;background:rgba(10,20,35,.55)}.dup-modal-box{position:relative;width:min(1380px,calc(100vw - 1.5rem));max-height:calc(100vh - 1.5rem);background:#fff;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 70px rgba(0,0,0,.24)}.dup-modal-head-react{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border-bottom:1px solid #e4e9f1;background:#f8fafc}.dup-modal-head-react h3{font-size:1.05rem;font-weight:800;margin:0}.dup-modal-head-react p{font-size:.82rem;color:#6b7280;margin:.2rem 0 0}.dup-compare-grid-react{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;background:#f3f6fa;padding:1rem;min-height:0;overflow:hidden}.dup-compare-col{min-width:0;border:1px solid #dfe5ee;border-radius:12px;background:#fff;overflow:hidden}.dup-compare-head{padding:.7rem .85rem;background:#f8fafc;border-bottom:1px solid #e4e9f1}.dup-compare-head strong,.dup-compare-head small{display:block}.dup-compare-head small{color:#6b7280;font-size:.75rem;margin-top:.15rem}.dup-compare-scroll{height:min(58vh,610px);overflow:auto;padding:.85rem}.dup-alt-list{display:grid;gap:.5rem;margin-top:.75rem}.dup-alt{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:.5rem;padding:.65rem;border:1px solid #e5e7eb;border-radius:9px}.dup-alt.correct{border-color:#8fd6a7;background:#effaf3}.dup-correct{font-size:.72rem;color:#16723a;white-space:nowrap}.dup-modal-foot-react{padding:.75rem 1rem;border-top:1px solid #e4e9f1;display:flex;justify-content:flex-end}

/* Banco de questões: enunciado e alternativas como no legado, sem estouro horizontal */
.questao-card{overflow:hidden!important}.questao-conteudo,.questao-conteudo .ql-editor,.alternativa-texto,.alternativa-texto .ql-editor{max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:normal;white-space:normal}.questao-conteudo img,.alternativa-texto img{max-width:100%!important;height:auto!important}.alternativas-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.55rem!important}.alternativa-item{min-width:0!important}.alternativa-texto{min-width:0!important}.alternativa-texto p{margin-bottom:.3rem}

/* Revisão: alternativas em duas colunas, como no legado */
.review-card{overflow:hidden}.review-question,.review-question .ql-editor,.review-alt,.review-alt span{max-width:100%;min-width:0;overflow-wrap:anywhere}.review-alts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.5rem!important}.review-alt{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:start;background:#fff!important;padding:.7rem .75rem!important}.review-alt.correct{background:#effaf3!important;border-color:#8fd6a7!important}.review-alt>strong{font-weight:800}.review-alt img{max-width:100%!important;height:auto!important}

/* Layout: duas colunas compactas e previews no tamanho do legado */
.layout-form>.page-heading{display:none}.layout-columns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;align-items:start}.layout-block{padding:24px!important;border-radius:10px!important;box-shadow:none!important}.layout-block:first-child{background:#f2f4ff!important}.block-head{display:block!important;margin-bottom:18px!important}.block-head .block-icon{display:none!important}.block-head h3{font-size:1.2rem!important;margin:0 0 4px!important}.block-head p{font-size:.86rem;color:#64748b;margin:0}.upload-config{margin-bottom:26px}.upload-config>label:first-child{display:block;font-weight:800;margin-bottom:8px}.image-preview{display:block!important;background:transparent!important;border:0!important;padding:0!important;min-height:0!important;margin-bottom:10px!important}.image-preview img{display:block!important;width:auto!important;max-width:480px!important;max-height:120px!important;height:auto!important;object-fit:contain!important;border-radius:0!important;box-shadow:none!important}.fallback-tag{display:none!important}.file-btn{display:inline-flex!important;margin-top:6px!important}.layout-block .form-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}.layout-footer-config{margin-top:20px!important;padding:20px!important}.margin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.twips-help{font-size:.78rem;color:#64748b;margin-top:8px}

/* Usuários: tabela e botões iguais ao fluxo legado */
.users-table-wrap{overflow-x:auto}.users-table{min-width:850px}.users-table td,.users-table th{vertical-align:middle}.users-table .buttons{margin-bottom:0;flex-wrap:nowrap}

/* Pesos: mesma tabela do legado e sem dependência de coluna codigo inexistente */
.money-input{display:block!important}.money-input span{display:none!important}.money-input input{width:100%!important}.single-filter{max-width:none!important}.bottom-config{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}.bottom-config .check-line{margin:0;flex:1}

@media(max-width:1180px){.dashboard-sections,.dup-groups-react,.layout-columns{grid-template-columns:1fr!important}.dup-compare-grid-react{grid-template-columns:1fr}.dup-compare-scroll{height:auto;max-height:45vh}}
@media(max-width:760px){.alternativas-grid,.review-alts{grid-template-columns:1fr!important}.layout-block .form-grid.cols-2,.margin-grid{grid-template-columns:1fr!important}.image-preview img{max-width:100%!important}.dup-summary-bar-react{align-items:flex-start;flex-direction:column}.dup-summary-bar-react span{text-align:left}}

/* v1.0 — reconstrução fiel: o CSS do legado é a referência visual */
.legacy-react-app .topbar{display:flex!important}
.legacy-react-app .content{width:100%!important;max-width:none!important;padding:24px clamp(16px,2.2vw,34px)!important;margin:0!important;overflow-x:hidden}
.legacy-react-app .section{padding:0!important;width:100%}
.legacy-react-app .section>.container,.legacy-react-app .content .container{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.topbar-right-react{display:flex;align-items:center;gap:12px;min-width:0}
.legacy-section .field{margin-bottom:.75rem}
.legacy-section .field>label{font-size:1rem;color:#363636;margin-bottom:.5em}
.legacy-section .field input:not([type=checkbox]):not([type=radio]),.legacy-section .field select,.legacy-section .field textarea{border-radius:4px;padding:.5em .75em;box-shadow:inset 0 .0625em .125em rgba(10,10,10,.05)}
.react-filter-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;align-items:end}
.react-filter-actions{display:flex;gap:8px;align-items:flex-end}
.react-filter-actions .button{min-height:40px}
.legacy-avaliacoes-table{table-layout:fixed}
.legacy-avaliacoes-table th,.legacy-avaliacoes-table td{vertical-align:top;white-space:normal;overflow-wrap:anywhere}
.legacy-avaliacoes-table .coluna-acoes{width:31%}
.acoes-avaliacao{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.acoes-avaliacao .button{justify-content:flex-start;white-space:normal;height:auto;min-height:34px}
.note-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.badge-alerta{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#ffdd57;color:#5a4300;font-size:.75rem;font-weight:800}
.avaliacao-alertas-modal{display:none;position:fixed;inset:0;z-index:9999;background:rgba(10,10,10,.55);align-items:center;justify-content:center;padding:20px}.avaliacao-alertas-modal.is-active{display:flex}.avaliacao-alertas-card{width:min(640px,100%);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.25)}.avaliacao-alertas-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid #eceff4;background:#f8fafc}.avaliacao-alertas-body{padding:20px}.alerta-grupo+.alerta-grupo{margin-top:18px}.alerta-grupo-title{font-weight:800;margin-bottom:8px;display:flex;align-items:center;gap:6px}.alerta-tags{display:flex;flex-wrap:wrap;gap:6px}
.react-questoes-grid{display:grid!important;grid-template-columns:repeat(9,minmax(0,1fr))!important;gap:12px!important;align-items:end}.react-questoes-grid .filtro-acoes{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.questao-card{box-shadow:none!important;border-radius:10px!important}.questao-conteudo{border:1px solid #e5e7eb;border-radius:10px;background:#fff;padding:.9rem!important}.questao-meta{background:#f8fafc!important;border:1px solid #edf0f4}.alternativas-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.alternativa-item{background:#fff!important;border-radius:10px!important}.alternativa-correta{background:#effaf3!important}
.legacy-section .table-container{overflow-x:auto}
.legacy-section .notification img{display:block;max-width:480px!important;width:auto!important;height:auto!important;max-height:none!important;object-fit:contain}
.legacy-section .select.is-multiple select{width:100%;min-height:140px}
.legacy-section .peso-input{max-width:220px}
@media(max-width:1250px){.react-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.react-questoes-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.legacy-avaliacoes-table .coluna-acoes{width:38%}}
@media(max-width:900px){.topbar{align-items:flex-start!important;gap:12px;flex-direction:column}.topbar-right-react{width:100%;flex-wrap:wrap}.react-filter-grid,.react-questoes-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.acoes-avaliacao{grid-template-columns:1fr}.legacy-avaliacoes-table{table-layout:auto}.legacy-avaliacoes-table .coluna-acoes{width:auto}}
@media(max-width:620px){.react-filter-grid,.react-questoes-grid{grid-template-columns:1fr!important}.react-filter-actions,.react-questoes-grid .filtro-acoes{grid-template-columns:1fr;display:grid}.alternativas-grid,.review-alts{grid-template-columns:1fr!important}.user-pill{max-width:100%;overflow:hidden}.user-pill span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* v0.10.1 — correções de paridade visual/funcional confirmadas em produção */
.questao-conteudo.ql-editor,
.alternativa-texto.ql-editor,
.review-question.ql-editor{
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}
.questao-conteudo.ql-editor{padding:14px 12px!important;}
.alternativa-texto.ql-editor{padding:2px 0!important;}

/* Filtros do banco: mesma densidade do legado, sem título interno duplicado. */
.questoes-filtros{margin-top:0!important;}
.react-questoes-grid{grid-template-columns:repeat(8,minmax(120px,1fr)) minmax(120px,.85fr)!important;gap:12px!important;align-items:end!important;}
.react-questoes-grid .filtro-acoes{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;}
@media(max-width:1180px){.react-questoes-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.react-questoes-grid .filtro-acoes{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){.react-questoes-grid{grid-template-columns:1fr!important}}

/* Cards das provas na Nova Questão: disciplina visível como no legado. */
.discipline-chip{border:1px solid #e2a900!important;background:#fff9df!important;color:#6d5500!important;font-weight:700!important;}

/* Importação DOC/DOCX com os dois grupos de modelos do legado. */
.modelos-importacao-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px;}
.modelo-importacao-card{height:100%;margin-bottom:0!important;}
.modelo-importacao-card p{margin-bottom:8px;}
.modelo-importacao-card a{display:inline-flex;align-items:center;gap:4px;}
@media(max-width:760px){.modelos-importacao-grid{grid-template-columns:1fr}}

/* Importação de alunos: substitui o file input nativo que quebrava o painel. */
.aluno-import-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;}
.file-picker{display:flex;align-items:center;min-width:360px;max-width:560px;border:1px solid #d9e1eb;border-radius:8px;overflow:hidden;background:#fff;cursor:pointer;}
.file-picker input[type=file]{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none;}
.file-picker-button{padding:9px 12px;background:#f4f7fb;border-right:1px solid #d9e1eb;font-weight:600;white-space:nowrap;}
.file-picker-name{padding:9px 12px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1;}
@media(max-width:720px){.file-picker{min-width:0;width:100%}.aluno-import-actions{width:100%}}

/* Ações de Avaliações: restaura Prova, Gabarito PDF, Cartão e Gabarito preenchido por variante. */
.acoes-avaliacao{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;align-items:stretch!important;min-width:300px;}
.acoes-avaliacao .button{width:100%;justify-content:flex-start;min-height:34px;height:auto;white-space:normal;line-height:1.15;}
.legacy-avaliacoes-table .coluna-acoes{min-width:320px;}
@media(max-width:900px){.acoes-avaliacao{grid-template-columns:1fr!important;min-width:0}.legacy-avaliacoes-table .coluna-acoes{min-width:220px}}

/* v0.10.2 — frontend React sem Bulma: componentes unificados */
.app-loading{padding:32px;text-align:center;color:#64748b;font-size:.95rem;animation:none!important;transform:none!important;position:static!important;width:auto!important;height:auto!important;border:0!important;border-radius:0!important}
.legacy-login-logo{display:none!important}

/* Compatibilidade visual própria para classes antes fornecidas pelo Bulma. */
.section{padding:1.5rem}.container{width:100%;margin:0 auto}.container.is-fluid{max-width:none}
.box{display:block;background:#fff;border:1px solid #e3e9f2;border-radius:12px;padding:1.25rem;box-shadow:none}
.title{margin:0 0 1rem;color:#17233b;font-weight:700;line-height:1.2}.title.is-4{font-size:1.5rem}.title.is-5{font-size:1.25rem}.title.is-6{font-size:1rem}
.label{display:block;font-weight:700;color:#26344d;margin-bottom:.45rem}.help{display:block;margin-top:.35rem;font-size:.78rem;color:#64748b}
.input,.textarea,.select select{width:100%;border:1px solid #d8e0ec;background:#fff;color:#17233b;border-radius:8px;padding:.58rem .72rem;outline:none;box-shadow:none;line-height:1.35}
.input:focus,.textarea:focus,.select select:focus{border-color:#7aa9e8;box-shadow:0 0 0 3px rgba(31,122,224,.09)}
.textarea{min-height:110px;resize:vertical}.select{display:block;position:relative}.select select{appearance:auto}.select.is-multiple select{min-height:140px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid #d8e0ec;background:#fff;color:#17233b;border-radius:8px;padding:.55rem .82rem;min-height:38px;cursor:pointer;text-decoration:none;font-weight:500;line-height:1.2;white-space:nowrap}
.button:hover{background:#f8fafc}.button:disabled{opacity:.55;cursor:not-allowed}.button.is-small{min-height:31px;padding:.38rem .58rem;font-size:.82rem}.button.is-fullwidth{width:100%}
.button.is-primary{background:#00c4a7;border-color:#00c4a7;color:#fff}.button.is-link{background:#485fc7;border-color:#485fc7;color:#fff}.button.is-info{background:#3e8ed0;border-color:#3e8ed0;color:#fff}.button.is-warning{background:#ffe08a;border-color:#ffe08a;color:#5f4700}.button.is-danger{background:#f14668;border-color:#f14668;color:#fff}.button.is-dark{background:#363636;border-color:#363636;color:#fff}
.button.is-light{background:#f5f7fa;color:#27354b;border-color:#edf0f4}.button.is-link.is-light{background:#eef1ff;color:#3850bd;border-color:#e1e6ff}.button.is-info.is-light{background:#eef7fd;color:#2674ad;border-color:#deeffa}.button.is-warning.is-light{background:#fff9e8;color:#8a6500;border-color:#fff0c2}.button.is-danger.is-light{background:#fff0f3;color:#cc294d;border-color:#ffdce4}.button.is-success{background:#48c78e;border-color:#48c78e;color:#fff}
.buttons{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.buttons.is-right{justify-content:flex-end}.buttons.are-small .button{min-height:31px;padding:.38rem .58rem;font-size:.82rem}
.icon{display:inline-flex;align-items:center;justify-content:center;width:1.25em;height:1.25em}
.tag{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;padding:.25rem .5rem;background:#f1f4f8;color:#34445e;font-size:.75rem;line-height:1.2}.tag.is-light{background:#f5f7fa}.tag.is-danger{background:#f14668;color:#fff}.tag.is-danger.is-light{background:#fff0f3;color:#c52d4b}.tag.is-warning{background:#ffe08a;color:#5f4700}.tag.is-warning.is-light{background:#fff8df;color:#7a5a00}.tag.is-success{background:#48c78e;color:#fff}.tag.is-success.is-light{background:#effaf5;color:#257953}.tag.is-info.is-light{background:#eef7fd;color:#2674ad}
.message{border-radius:10px;overflow:hidden;border:1px solid #e3e9f2;background:#fff;margin:0 0 1rem}.message-body{padding:.9rem 1rem}.message.is-danger{border-color:#ffcbd5;background:#fff4f6;color:#a92743}.message.is-success{border-color:#bce8d5;background:#f1fbf6;color:#23714f}.message.is-info{border-color:#cde8f8;background:#f1f9fd;color:#246b95}.message.is-light{background:#f8fafc;color:#475569}
.notification{padding:1rem;border-radius:10px;background:#f5f7fa}.notification.is-light{background:#f8fafc}.notification.is-info{background:#eef7fd;color:#246b95}.notification.is-warning{background:#fff8df;color:#765600}.notification.is-danger{background:#fff0f3;color:#a92743}
.columns{display:flex;flex-wrap:wrap;margin:-.5rem}.column{flex:1 1 0;padding:.5rem;min-width:0}.column.is-4{flex:0 0 33.333%}.column.is-5{flex:0 0 41.667%}.column.is-6{flex:0 0 50%}.column.is-7{flex:0 0 58.333%}.columns.is-vcentered{align-items:center}.columns.is-multiline{flex-wrap:wrap}
.level{display:flex;align-items:center;justify-content:space-between;gap:1rem}.level-left,.level-right{display:flex;align-items:center;gap:.75rem}
.field{margin-bottom:.85rem}.field.has-addons{display:flex;align-items:stretch}.field.has-addons .control{display:flex}.field.has-addons .control.is-expanded{flex:1}.field.has-addons .control:not(:first-child) .input,.field.has-addons .control:not(:first-child) .button{border-top-left-radius:0;border-bottom-left-radius:0}.field.has-addons .control:not(:last-child) .input,.field.has-addons .control:not(:last-child) .button{border-top-right-radius:0;border-bottom-right-radius:0}.field.is-grouped{display:flex;gap:.6rem;align-items:flex-end}.control{position:relative}.control.is-expanded{flex:1}
.table-container{width:100%;overflow-x:auto}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:.72rem .75rem;border-bottom:1px solid #e8edf4;text-align:left;vertical-align:top}.table th{background:#f8fafc;color:#384860;font-size:.78rem;text-transform:uppercase}.table.is-striped tbody tr:nth-child(even){background:#fafbfd}.table.is-hoverable tbody tr:hover{background:#f7faff}.table.is-fullwidth{width:100%}
.pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1.25rem}.pagination-previous,.pagination-next,.pagination-link{border:1px solid #d8e0ec;background:#fff;border-radius:7px;padding:.42rem .7rem;color:#26344d}.pagination-link.is-current{background:#485fc7;color:#fff;border-color:#485fc7}.pagination-list{list-style:none;margin:0;padding:0;display:flex}
.delete{width:30px;height:30px;border:0;background:#eef2f7;border-radius:999px;cursor:pointer;position:relative}.delete:before,.delete:after{content:"";position:absolute;left:8px;right:8px;top:14px;height:2px;background:#526174}.delete:before{transform:rotate(45deg)}.delete:after{transform:rotate(-45deg)}
.checkbox{display:inline-flex;align-items:center;gap:.45rem}.has-text-centered{text-align:center}.has-text-danger{color:#c53737}.has-text-info{color:#2674ad}.has-text-warning{color:#8a6500}.has-text-grey{color:#7a8597}.has-text-weight-bold{font-weight:700}.has-background-light{background:#f8fafc}.is-flex{display:flex}.is-flex-direction-column{flex-direction:column}.is-align-items-stretch{align-items:stretch}.is-align-items-flex-end{align-items:flex-end}.is-justify-content-flex-end{justify-content:flex-end}.is-expanded{flex:1}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.5rem}.ml-2{margin-left:.5rem}.mr-1{margin-right:.25rem}

/* Popup de duplicidade: conteúdo do enunciado sempre legível. */
.dup-enunciado-html,.dup-alt-html{font-size:.95rem;line-height:1.58;color:#18243a;overflow-wrap:anywhere}.dup-enunciado-html p:first-child,.dup-alt-html p:first-child{margin-top:0}.dup-enunciado-html img,.dup-alt-html img{max-width:100%;height:auto}.dup-enunciado-html table,.dup-alt-html table{max-width:100%;border-collapse:collapse}.dup-enunciado-html td,.dup-enunciado-html th,.dup-alt-html td,.dup-alt-html th{border:1px solid #d9e0e9;padding:.35rem}

/* Banco: nunca esconder alternativas válidas por conflito de estilos. */
.alternativas-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-top:12px!important}.alternativa-item{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;align-items:start!important;gap:9px!important;border:1px solid #e1e7ef!important;padding:10px 12px!important;min-height:48px!important}.alternativa-texto{display:block!important;min-width:0!important;color:#18243a!important;line-height:1.5!important}.alternativa-texto>*:first-child{margin-top:0}.alternativa-texto>*:last-child{margin-bottom:0}

@media(max-width:760px){.columns{display:block;margin:0}.column,.column.is-4,.column.is-5,.column.is-6,.column.is-7{padding:.35rem 0;flex-basis:auto}.level{align-items:flex-start;flex-direction:column}.alternativas-grid{grid-template-columns:1fr!important}}

/* v0.10.3 — paridade cirúrgica com o fluxo legado */
/* Banco de Questões: exatamente 4 filtros por linha no desktop, como questoes/lista.php. */
.react-questoes-grid,
.questoes-filtros-grid.react-questoes-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:end!important;
}
.react-questoes-grid .filtro-acoes{
  display:flex!important;
  gap:8px!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
@media(max-width:900px){
  .react-questoes-grid,.questoes-filtros-grid.react-questoes-grid{grid-template-columns:1fr!important}
  .react-questoes-grid .filtro-acoes{display:grid!important;grid-template-columns:1fr!important}
}

/* Avaliações: largura e distribuição da tabela do legado. */
.table-wrap-responsive{width:100%!important;overflow:visible!important;box-sizing:border-box!important}
.legacy-avaliacoes-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;table-layout:fixed!important}
.legacy-avaliacoes-table th,.legacy-avaliacoes-table td{vertical-align:top!important;white-space:normal!important;word-wrap:break-word!important;overflow-wrap:anywhere!important}
.legacy-avaliacoes-table .coluna-acoes{width:230px!important;min-width:230px!important}
.legacy-avaliacoes-table th:nth-child(2){width:125px}
.legacy-avaliacoes-table th:nth-child(3){width:88px}
.legacy-avaliacoes-table th:nth-child(4){width:55px}
.legacy-avaliacoes-table th:nth-child(5){width:88px}
.legacy-avaliacoes-table th:nth-child(6){width:82px}
.legacy-avaliacoes-table th:nth-child(7){width:78px}
.legacy-avaliacoes-table th:nth-child(8){width:86px}
.legacy-avaliacoes-table .acoes-avaliacao{display:grid!important;grid-template-columns:repeat(2,minmax(95px,1fr))!important;gap:6px!important}
.legacy-avaliacoes-table .acoes-avaliacao .button{width:100%!important;justify-content:flex-start!important;white-space:normal!important;height:auto!important;min-height:2.5em!important;padding-left:.65rem!important;padding-right:.65rem!important}
@media(max-width:768px){
  .table-wrap-responsive{overflow:visible!important}
  .legacy-avaliacoes-table,.legacy-avaliacoes-table thead,.legacy-avaliacoes-table tbody,.legacy-avaliacoes-table th,.legacy-avaliacoes-table td,.legacy-avaliacoes-table tr{display:block!important;width:100%!important}
  .legacy-avaliacoes-table thead{display:none!important}
  .legacy-avaliacoes-table .coluna-acoes{width:100%!important;min-width:0!important}
  .legacy-avaliacoes-table .acoes-avaliacao{grid-template-columns:1fr!important}
}

/* Motor Matemático 1.0: interface explícita no cadastro/edição manual. */
.math-engine-bar{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #d9e2ee;border-bottom:0;background:#f7faff;border-radius:10px 10px 0 0}
.math-engine-toggle{border:1px solid #b8c9e3;background:#fff;color:#173b67;border-radius:8px;padding:7px 10px;font-weight:700;cursor:pointer}
.math-engine-toggle:hover{background:#eef5ff}
.math-engine-hint{font-size:.78rem;color:#66758a}
.math-engine-panel{border:1px solid #d9e2ee;border-bottom:0;background:#fff;padding:10px}
.math-template-grid{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:9px}
.math-template-btn{border:1px solid #d9e2ee;background:#f8fafc;border-radius:7px;padding:6px 9px;cursor:pointer;font-size:.78rem}
.math-template-btn:hover{border-color:#7aa7df;background:#eef5ff}
.math-custom-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.math-custom-row input{width:100%;border:1px solid #cfd9e6;border-radius:8px;padding:8px 10px}
.avaliacao-card-vazio.aguardando-filtros{grid-column:1/-1;background:#f8fafc;border-style:dashed;color:#65748a;text-align:left}
@media(max-width:620px){.math-engine-bar{align-items:flex-start;flex-direction:column}.math-custom-row{grid-template-columns:1fr}.math-custom-row .btn{width:100%}}

/* v0.10.4 — consistência visual e fluxo sob demanda */
.cadastro-standard,.usuario-form-standard,.layout-modern-form{background:#fff;border:1px solid #dfe6ef;border-radius:14px;padding:18px;box-shadow:none;margin-bottom:18px}
.inline-create-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-bottom:14px}.inline-create-form .field{margin:0}.inline-create-form .btn{min-width:120px;height:42px}
.standard-table th{background:#f6f8fb;color:#35445c}.standard-table td,.standard-table th{vertical-align:middle}.area-actions{display:grid;grid-template-columns:minmax(160px,1fr) auto auto;gap:8px;align-items:center}.area-actions input{width:100%;border:1px solid #d7e0eb;border-radius:8px;padding:9px 10px;min-width:0}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.section-title h3{font-size:1.05rem;margin:0 0 4px}.section-title p{margin:0;color:#6d7d92}
.status-chip.is-success{background:#edf9f3;color:#187348;border:1px solid #ccebdd}.btn.warning{background:#fff8e6;border-color:#ffe6a9;color:#7a5800}.btn.success{background:#eefaf4;border-color:#caead9;color:#166b45}.page-intro{margin:0 0 14px;color:#63738a}
.usuario-form-standard{max-width:980px}.usuario-form-standard>.field{max-width:760px}.usuario-form-standard select[multiple]{min-height:150px;width:100%;border:1px solid #d7e0eb;border-radius:10px;padding:8px;background:#fff}

.questoes-filtros-grid.react-questoes-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;align-items:end!important}.questoes-filter-actions-row{display:flex;justify-content:flex-end;margin-top:2px}.questoes-filter-actions-row .filtro-acoes{display:flex!important;gap:8px!important}.questoes-filter-actions-row .button{min-width:110px}
@media(max-width:950px){.questoes-filtros-grid.react-questoes-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.questoes-filtros-grid.react-questoes-grid{grid-template-columns:1fr!important}.questoes-filter-actions-row .filtro-acoes{width:100%;display:grid!important;grid-template-columns:1fr 1fr!important}}

.dup-match{background:#ffe08a!important;color:#2d2500!important;padding:0 .08em;border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.dup-enunciado-html .dup-match,.review-question .dup-match,.dup-preview .dup-match{background:#fff09f!important}
.formula-rendered{display:inline-block;vertical-align:middle;max-width:100%;overflow-x:auto}.formula-rendered .katex{font-size:1.04em}.math-engine-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:.82rem}.math-ok{color:#16764c;background:#edf9f3;border:1px solid #cdebdc;border-radius:999px;padding:3px 8px}.math-preview{margin-top:10px;padding:10px;border:1px solid #dce4ef;background:#fafcff;border-radius:8px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center}.math-preview>span{color:#66758a;font-size:.78rem}.math-error{margin-top:8px;color:#b4233b;background:#fff3f5;border:1px solid #ffd6de;padding:8px 10px;border-radius:7px}

.layout-modern-form{padding:18px}.layout-config-columns{gap:18px;margin:0!important}.layout-config-columns>.column{padding:0!important}.layout-config-block{height:100%;background:#f8fafc;border:1px solid #dde5ef;border-radius:12px;padding:18px}.layout-config-block.primary{background:#f3f6ff;border-color:#d9e3ff}.layout-config-block h2{margin:0 0 16px!important;color:#1d2b43}.layout-config-block img{display:block;max-width:100%!important;width:auto!important;max-height:125px!important;height:auto!important;object-fit:contain;background:#fff;border:1px solid #dbe3ee;border-radius:10px;padding:6px;margin:6px 0 10px}.layout-config-block input[type=file]{width:100%;border:1px dashed #cfd9e6;background:#fff;border-radius:9px;padding:9px}.layout-modern-form textarea{width:100%;border:1px solid #d7e0eb;border-radius:10px;padding:10px;resize:vertical}.layout-modern-form .columns{margin:0}.layout-modern-form .column{padding:.4rem}.layout-modern-form .message{margin-top:10px}
@media(max-width:980px){.layout-config-columns{display:grid!important;grid-template-columns:1fr!important}.area-actions{grid-template-columns:1fr}.inline-create-form{grid-template-columns:1fr}.inline-create-form .btn{width:100%}}

/* Evita que títulos internos repitam o título da barra superior. */
.content>.section.legacy-section>.container>h1.title:first-child{display:none}
.page-action-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 14px}.page-action-row .page-intro{margin:0}.page-action-row>.btn:only-child{margin-left:auto}
@media(max-width:620px){.page-action-row{align-items:stretch;flex-direction:column}.page-action-row>.btn{width:100%}}

/* v0.10.6 — Dashboard: somente alertas de duplicidade em largura total */
.dashboard-sections-single{grid-template-columns:1fr!important}
.dashboard-panel-duplicidade{width:100%;max-width:none}
.dashboard-panel-duplicidade .dup-groups-react{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;gap:1rem!important}
@media(max-width:720px){.dashboard-panel-duplicidade .dup-groups-react{grid-template-columns:1fr!important}}


/* v0.10.7 — duplicidade/revisão alinhadas ao legado e mídia robusta */
.legacy-dup-modal{width:min(1320px,calc(100vw - 28px));max-height:calc(100vh - 28px)}
.legacy-dup-modal-body{padding:16px;background:#f5f7fa;min-height:0;overflow:hidden}
.legacy-dup-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid #dfe5ee;border-radius:10px;padding:10px 12px;margin-bottom:12px}
.legacy-dup-summary strong{font-size:1.05rem}
.legacy-dup-question-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;border-bottom:1px solid #dfe5ee;background:#f8fafc}
.legacy-dup-question-head>div{display:grid;gap:3px}
.legacy-dup-question-number{font-weight:800;font-size:1rem}
.legacy-dup-proof,.legacy-dup-prof{font-size:.79rem;color:#5f6b7c}
.legacy-dup-scroll{height:min(58vh,610px);padding:12px}
.legacy-dup-question-panel{border:1px solid #dfe5ee;border-radius:10px;padding:14px;background:#fff}
.legacy-dup-alt-letter{width:28px;height:28px;border-radius:50%;background:#eef2f7;display:flex;align-items:center;justify-content:center;font-weight:800}
.legacy-modal-close{border:0;background:#eef2f7;width:34px;height:34px;border-radius:50%;font-size:1.5rem;line-height:1;cursor:pointer;color:#64748b}
.legacy-dup-foot{justify-content:space-between;align-items:center}
.legacy-dup-legend{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#64748b}
.legacy-dup-legend i{width:15px;height:10px;background:#fff0a8;border:1px solid #f1cd60;border-radius:2px}

.legacy-review-card{border-left:4px solid #3273dc!important;padding:14px 16px!important}
.legacy-review-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:10px;border-bottom:1px solid #e7ebf0}
.legacy-review-ident,.legacy-review-tags,.legacy-review-reuse-tags{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.legacy-review-id{font-weight:800;color:#1258b0;background:#eef5ff;border-radius:16px;padding:5px 9px}
.legacy-review-duplicate{margin:12px 0;padding:14px;border-radius:8px;display:flex;gap:10px}
.legacy-review-duplicate.danger{background:#fff0f3;border-left:4px solid #f14668;color:#b4233c}
.legacy-review-duplicate.warning{background:#fffbea;border-left:4px solid #ffdd57;color:#7a6500}
.legacy-review-alert-icon{font-size:1.2rem;line-height:1}
.legacy-review-alert-body{width:100%}
.legacy-review-alert-title{display:block;margin-bottom:4px}
.legacy-review-alert-text{margin-bottom:9px}
.legacy-review-reuse-list{display:grid;gap:8px}
.legacy-review-reuse-box{background:#fff;border:1px solid #e3e8ef;border-radius:10px;padding:11px;color:#243046}
.legacy-review-reuse-line{font-size:.82rem;color:#4b5563;margin-top:6px}
.legacy-review-preview{margin-top:9px;line-height:1.55}
.legacy-review-question{margin-top:12px;border:1px solid #e2e8f0;border-radius:10px;padding:14px;background:#fff;line-height:1.6}
.legacy-review-alts{margin-top:10px}

.dup-enunciado-html img,.dup-alt-html img,
.legacy-review-question img,.legacy-review-preview img,
.review-alt img,.questao-conteudo img,.alternativa-texto img{
  max-width:100%!important;height:auto!important;object-fit:contain!important
}
.dup-enunciado-html img,.legacy-review-question img,.questao-conteudo img{display:block;margin:8px auto}
.dup-enunciado-html table,.legacy-review-question table,.questao-conteudo table,
.dup-alt-html table,.review-alt table,.alternativa-texto table{max-width:100%;overflow:auto}


/* v0.10.8 — correção definitiva das colunas de Avaliações */
.table-wrap-responsive{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
}

.legacy-avaliacoes-table{
  width:100%!important;
  min-width:1180px!important;
  table-layout:fixed!important;
}

.legacy-avaliacoes-table th,
.legacy-avaliacoes-table td{
  vertical-align:top!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

/* ID */
.legacy-avaliacoes-table th:nth-child(1),
.legacy-avaliacoes-table td:nth-child(1){
  width:48px!important;
  white-space:nowrap!important;
}

/* Avaliação */
.legacy-avaliacoes-table th:nth-child(2),
.legacy-avaliacoes-table td:nth-child(2){
  width:125px!important;
}

/* Série */
.legacy-avaliacoes-table th:nth-child(3),
.legacy-avaliacoes-table td:nth-child(3){
  width:88px!important;
  white-space:normal!important;
}

/* Bimestre */
.legacy-avaliacoes-table th:nth-child(4),
.legacy-avaliacoes-table td:nth-child(4){
  width:55px!important;
  white-space:nowrap!important;
}

/* Data */
.legacy-avaliacoes-table th:nth-child(5),
.legacy-avaliacoes-table td:nth-child(5){
  width:92px!important;
  white-space:nowrap!important;
}

/* Formato */
.legacy-avaliacoes-table th:nth-child(6),
.legacy-avaliacoes-table td:nth-child(6){
  width:88px!important;
  white-space:nowrap!important;
}

/* Tipo */
.legacy-avaliacoes-table th:nth-child(7),
.legacy-avaliacoes-table td:nth-child(7){
  width:88px!important;
  white-space:nowrap!important;
}

/* Variantes */
.legacy-avaliacoes-table th:nth-child(8),
.legacy-avaliacoes-table td:nth-child(8){
  width:92px!important;
  white-space:nowrap!important;
}

/* Cadastro de questões quando presente */
.legacy-avaliacoes-table th:nth-child(9):not(.coluna-acoes),
.legacy-avaliacoes-table td:nth-child(9):not(.coluna-acoes){
  width:165px!important;
}

.legacy-avaliacoes-table .cadastro-periodo{
  white-space:normal!important;
}

.legacy-avaliacoes-table .datas-periodo{
  white-space:nowrap!important;
}

/* Ações */
.legacy-avaliacoes-table .coluna-acoes{
  width:250px!important;
  min-width:250px!important;
}

.legacy-avaliacoes-table .acoes-avaliacao{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(118px,1fr))!important;
  gap:6px!important;
}

.legacy-avaliacoes-table .acoes-avaliacao .button{
  width:100%!important;
  min-width:0!important;
  justify-content:flex-start!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  line-height:1.15!important;
  min-height:34px!important;
  padding:.45rem .55rem!important;
  font-size:.78rem!important;
}

@media(max-width:768px){
  .legacy-avaliacoes-table{
    min-width:0!important;
  }
}


/* v0.10.9 — tabela de Avaliações deve caber integralmente no desktop */
.table-wrap-responsive{
  overflow-x:auto!important;
  overflow-y:visible!important;
}

.legacy-avaliacoes-table{
  width:100%!important;
  min-width:0!important;
  table-layout:fixed!important;
}

.legacy-avaliacoes-table th,
.legacy-avaliacoes-table td{
  box-sizing:border-box!important;
  padding-left:.65rem!important;
  padding-right:.65rem!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Redistribuição compacta sem cortar Ações */
.legacy-avaliacoes-table th:nth-child(1),
.legacy-avaliacoes-table td:nth-child(1){width:4%!important}

.legacy-avaliacoes-table th:nth-child(2),
.legacy-avaliacoes-table td:nth-child(2){width:11%!important}

.legacy-avaliacoes-table th:nth-child(3),
.legacy-avaliacoes-table td:nth-child(3){width:7%!important}

.legacy-avaliacoes-table th:nth-child(4),
.legacy-avaliacoes-table td:nth-child(4){width:5%!important}

.legacy-avaliacoes-table th:nth-child(5),
.legacy-avaliacoes-table td:nth-child(5){width:8%!important}

.legacy-avaliacoes-table th:nth-child(6),
.legacy-avaliacoes-table td:nth-child(6){width:8%!important}

.legacy-avaliacoes-table th:nth-child(7),
.legacy-avaliacoes-table td:nth-child(7){width:8%!important}

.legacy-avaliacoes-table th:nth-child(8),
.legacy-avaliacoes-table td:nth-child(8){width:8%!important}

.legacy-avaliacoes-table th:nth-child(9):not(.coluna-acoes),
.legacy-avaliacoes-table td:nth-child(9):not(.coluna-acoes){width:15%!important}

.legacy-avaliacoes-table .coluna-acoes{
  width:26%!important;
  min-width:0!important;
}

.legacy-avaliacoes-table .acoes-avaliacao{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  min-width:0!important;
}

.legacy-avaliacoes-table .acoes-avaliacao .button{
  min-width:0!important;
  padding:.42rem .5rem!important;
  font-size:.76rem!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* em larguras menores, permita rolagem em vez de cortar */
@media(max-width:1100px){
  .legacy-avaliacoes-table{
    min-width:1080px!important;
  }
}


/* v0.10.10 — botão Gabarito preenchido em Avaliações */
.legacy-avaliacoes-table .acoes-avaliacao .button.gabarito-preenchido,
.legacy-avaliacoes-table .acoes-avaliacao .gabarito-preenchido{
  background:#171717!important;
  border-color:#171717!important;
  color:#fff!important;
}

.legacy-avaliacoes-table .acoes-avaliacao .button.gabarito-preenchido *,
.legacy-avaliacoes-table .acoes-avaliacao .gabarito-preenchido *{
  color:#fff!important;
  fill:currentColor!important;
}

.legacy-avaliacoes-table .acoes-avaliacao button:has(.label-gabarito-preenchido){
  background:#171717!important;
  border-color:#171717!important;
  color:#fff!important;
}


/* v0.10.11 — fluxo Nova Questão e tabela Avaliações */
.avaliacao-card.is-closed{
  opacity:.64!important;
  cursor:not-allowed!important;
  background:#f7f8fa!important;
  border-style:dashed!important;
}
.avaliacao-card.is-closed:hover{transform:none!important;box-shadow:none!important}
.card-window-warning{background:#fff0c7!important;color:#805b00!important}
.avaliacao-card-periodo{display:block;margin-top:7px;color:#8a6a16;font-size:.74rem}
.selected-import-proof{display:flex;gap:10px;align-items:center;margin-bottom:12px;padding:9px 12px;border-radius:8px;background:#f5f8fc;border:1px solid #e0e7ef}
.modelos-importacao-grid.single{grid-template-columns:1fr!important}
.cadastro-completo-tag{display:inline-flex;align-items:flex-start;gap:6px;background:#ecfaf3;color:#147a4b;border-radius:18px;padding:6px 10px;font-size:.72rem;line-height:1.15;white-space:nowrap}
.cadastro-completo-tag i{margin-top:1px;color:#20a464}

.legacy-avaliacoes-table .col-caderno{white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important}
.legacy-avaliacoes-table .col-questoes{text-align:center!important;white-space:nowrap!important}

/* 11 colunas: ID, Avaliação, Série, Bim., Data, Formato, Tipo, Caderno, Questões, Cadastro, Ações */
.legacy-avaliacoes-table th:nth-child(1),.legacy-avaliacoes-table td:nth-child(1){width:3%!important}
.legacy-avaliacoes-table th:nth-child(2),.legacy-avaliacoes-table td:nth-child(2){width:11%!important}
.legacy-avaliacoes-table th:nth-child(3),.legacy-avaliacoes-table td:nth-child(3){width:6%!important}
.legacy-avaliacoes-table th:nth-child(4),.legacy-avaliacoes-table td:nth-child(4){width:4%!important}
.legacy-avaliacoes-table th:nth-child(5),.legacy-avaliacoes-table td:nth-child(5){width:7%!important}
.legacy-avaliacoes-table th:nth-child(6),.legacy-avaliacoes-table td:nth-child(6){width:7%!important}
.legacy-avaliacoes-table th:nth-child(7),.legacy-avaliacoes-table td:nth-child(7){width:7%!important}
.legacy-avaliacoes-table th:nth-child(8),.legacy-avaliacoes-table td:nth-child(8){width:8%!important}
.legacy-avaliacoes-table th:nth-child(9),.legacy-avaliacoes-table td:nth-child(9){width:6%!important}
.legacy-avaliacoes-table .col-cadastro{width:14%!important}
.legacy-avaliacoes-table .coluna-acoes{width:27%!important}


/* v0.10.12 — organização Banco de Questões e feedback */
.questoes-filtros{
  margin-bottom:12px!important;
}
.questoes-filter-actions-row{
  margin-top:12px!important;
  display:flex!important;
  justify-content:flex-end!important;
}
.questao-card{
  overflow:hidden!important;
}
.questao-card .questao-conteudo{
  min-height:0!important;
  height:auto!important;
}
.questao-card .alternativas-grid{
  align-items:stretch!important;
}
.message.is-success .message-body{
  background:#effaf5;
  border:1px solid #b7e7cf;
  color:#257953;
}

/* Ajuste cirúrgico: filtro de Avaliações agora possui também Formato. */
@media(min-width:1251px){
  .filter-grid-avaliacoes.react-filter-grid{grid-template-columns:repeat(8,minmax(0,1fr))}
}
.cartao-nominal-check{
  min-height:40px;
  display:flex;
  align-items:center;
  gap:4px;
  margin-top:2px;
}
.legacy-avaliacoes-table .acoes-avaliacao .button.nominal-card-button{
  background:#e8f7ff!important;
  border-color:#b9e4f7!important;
  color:#075985!important;
}

.layout-upload-field{margin-bottom:18px}
.layout-upload-field>.label{display:block;margin-bottom:7px;font-weight:700}
.layout-upload-field>img{display:block;max-width:100%;max-height:145px;object-fit:contain;background:#fff;border:1px solid #dbe3ee;border-radius:10px;padding:6px;margin-bottom:9px}
.layout-upload-field>input[type=file]{width:100%;border:1px dashed #cfd9e6;background:#fff;border-radius:9px;padding:9px}

/* Professor - provas abertas */
.professor-open-tests{margin-top:18px;padding:1rem 1.1rem}.professor-open-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.professor-open-head .section-heading{margin-bottom:.2rem}.professor-open-help{font-size:.82rem;color:#64748b}.professor-tests-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:.85rem}.professor-test-card{border:1px solid #dfe5ee;border-radius:12px;background:#fff;padding:.9rem;min-width:0}.professor-test-title{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;padding-bottom:.65rem;margin-bottom:.65rem;border-bottom:1px solid #edf1f5}.professor-test-title>strong{font-size:.95rem}.professor-test-date{font-size:.78rem;color:#64748b;margin-left:auto}.professor-disc-list{display:grid;gap:.45rem}.professor-disc-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid #e5e7eb;border-radius:9px;padding:.55rem .65rem}.professor-disc-main{display:flex;flex-direction:column;gap:.08rem;min-width:0}.professor-disc-main strong{font-size:.84rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.professor-disc-main span{font-size:.75rem;color:#64748b}.professor-disc-status{font-size:.74rem;font-weight:800;border-radius:999px;padding:.25rem .5rem;white-space:nowrap}.professor-disc-row.is-complete{border-color:#b7e4c7;background:#f2fbf5}.professor-disc-row.is-complete .professor-disc-status{background:#dff5e6;color:#16723a}.professor-disc-row.is-pending{border-color:#f2d59b;background:#fffaf0}.professor-disc-row.is-pending .professor-disc-status{background:#fff0c7;color:#8a5a00}.professor-disc-row.is-exceeded{border-color:#f1b7b7;background:#fff5f5}.professor-disc-row.is-exceeded .professor-disc-status{background:#fde2e2;color:#a51d1d}.professor-open-empty{padding:.85rem;border:1px dashed #cbd5e1;border-radius:9px;background:#f8fafc;color:#64748b}@media(max-width:720px){.professor-open-head{align-items:flex-start;flex-direction:column}.professor-tests-grid{grid-template-columns:1fr}.professor-test-date{margin-left:0}.professor-disc-row{align-items:flex-start;flex-direction:column}}
