:root{
  --primary:#006B4F;
  --primary-dark:#004C38;
  --slate:#4A5568;
  --bg:#F7FAFC;
  --white:#FFFFFF;
  --line:#CBD5E0;
  --line-dark:#A0AEC0;
  --text:#2D3748;
  --muted:#718096;
  --warning:#C05621;
  --danger:#E53E3E;
  --info:#2B6CB0;
  --ok:#006B4F;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}
body.exam-mode{background:var(--white)}
.site-shell{max-width:1440px;margin:0 auto;padding:18px}.site-shell.public-shell{max-width:none;padding:0;min-height:100vh;display:flex;flex-direction:column;background:var(--white)}
.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;background:var(--white);border:1px solid var(--line);border-radius:0;padding:14px 18px;margin-bottom:18px}
.brand-wrap{display:flex;align-items:center;gap:12px}.brand-logo,.exam-logo{width:52px;height:52px;object-fit:contain;border:1px solid var(--line);border-radius:0;background:#fff}.brand-title{font-weight:800;color:var(--primary);letter-spacing:.04em;text-transform:uppercase;font-size:15px}.brand-subtitle,.muted{color:var(--muted);font-size:13px}.topnav{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.topnav a,.topbar-select{border:1px solid var(--line);background:#fff;color:var(--slate);padding:10px 12px;border-radius:0;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.topnav a:hover{background:var(--primary);color:#fff;text-decoration:none}.topbar-center{justify-self:center}.admin-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px}.avatar-square,.notify-square,.logout-square{width:38px;height:38px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--slate);border-radius:0;font-weight:900}.notify-square{position:relative}.notify-square b{position:absolute;right:-1px;top:-1px;background:var(--danger);color:#fff;font-size:10px;min-width:14px;height:14px;line-height:14px;text-align:center}.logout-square:hover,.notify-square:hover,.avatar-square:hover{background:var(--primary);color:#fff;text-decoration:none}
.main-return-link{border:1px solid var(--line);background:#fff;color:var(--primary);padding:10px 14px;border-radius:0;font-size:16px;font-weight:900;letter-spacing:.02em;text-transform:uppercase;line-height:1;text-align:right}
.main-return-link:hover{background:var(--primary);color:#fff;text-decoration:none}

.alert{padding:13px 16px;margin:0 0 16px;border:1px solid var(--line);background:#fff;border-left:4px solid var(--slate);font-weight:700}.alert.success{border-left-color:var(--primary)}.alert.error{border-left-color:var(--danger);color:#9B2C2C}
.card,.hero-card,.stat-card{background:#fff;border:1px solid var(--line);border-radius:0}.card{padding:22px;margin-bottom:18px}.hero-card{padding:20px 22px;margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:5px solid var(--primary)}h1,h2,h3,h4{color:#1A202C;margin-top:0}h1{font-size:26px;letter-spacing:.02em}h2{font-size:18px;text-transform:uppercase;letter-spacing:.08em}.pill,.status-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:0;border:1px solid var(--line);padding:6px 9px;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:#fff;color:var(--slate)}.status-active,.badge-ok{border-color:var(--primary);color:var(--primary);background:#F0FFF4}.status-inactive,.badge-muted{border-color:var(--line-dark);color:var(--muted);background:#F7FAFC}.badge-warning{border-color:var(--warning);color:var(--warning);background:#FFF7ED}.badge-danger{border-color:var(--danger);color:var(--danger);background:#FFF5F5}.role-admin{border-color:var(--info);color:var(--info)}.role-cooperator{border-color:var(--primary);color:var(--primary)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat-card{padding:18px;border-bottom:3px solid var(--primary)}.stat-card.warning{border-bottom-color:var(--warning)}.stat-card.info{border-bottom-color:var(--info)}.stat-card strong{display:block;font-family:'JetBrains Mono','Courier New',monospace;font-size:34px;line-height:1;color:#1A202C;margin-bottom:8px}.stat-card span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--slate)}
.quick-links{display:flex;gap:10px;flex-wrap:wrap;padding:14px}.btn,button.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line-dark);border-radius:0;background:#fff;color:var(--slate);padding:11px 15px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:12px;cursor:pointer}.btn:hover,button.btn:hover{background:var(--primary);color:#fff;text-decoration:none;border-color:var(--primary)}.btn.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn.primary:hover{background:#fff;color:var(--primary)}.btn.danger{border-color:var(--danger);color:var(--danger)}.btn.danger:hover{background:var(--danger);color:#fff}.btn.small{padding:8px 10px;min-width:36px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:1.05fr 1fr}.grid.two.compact{grid-template-columns:1fr 1fr}
.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);background:#fff}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.table th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--slate);background:#F7FAFC}.table tr{height:50px}.table tr:hover td{background:#FBFFFD}.mono{font-family:'JetBrains Mono','Courier New',monospace}.progress{height:5px;background:#EDF2F7;margin-top:6px}.progress span{display:block;height:5px;background:var(--primary)}.action-icons{display:flex;gap:6px;white-space:nowrap}.data-title{font-weight:900;color:#1A202C}.data-meta{font-family:'JetBrains Mono','Courier New',monospace;color:var(--muted);font-size:12px;margin-top:4px}.filter-row{display:grid;grid-template-columns:1fr 240px;gap:12px;margin-bottom:14px}
label{display:block;margin:14px 0 7px;font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--slate)}input[type=text],input[type=url],input[type=password],input[type=number],select,textarea{width:100%;border:1px solid var(--line-dark);border-radius:0;background:#fff;color:var(--text);padding:12px 13px;font-size:15px}input:focus,select:focus,textarea:focus{outline:none;border:2px solid var(--primary);padding:11px 12px}textarea{resize:vertical;min-height:100px}.inline-check{display:inline-flex;gap:8px;align-items:center}.inline-check input{width:auto}.form-card,.auth-card{max-width:900px;margin:0 auto 18px}
/* Login clinical split */
.login-shell{min-height:100vh;display:grid;grid-template-columns:40% 60%;background:#fff}.login-visual{background:linear-gradient(rgba(0,40,30,.82),rgba(0,40,30,.82)),url('https://images.unsplash.com/photo-1582719471384-894fbb16e074?auto=format&fit=crop&w=1200&q=80') center/cover;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:42px}.login-visual h2{color:#fff;font-size:26px;line-height:1.25;text-transform:none;letter-spacing:.02em}.login-mark{font-weight:900;letter-spacing:.12em;text-transform:uppercase;border:1px solid rgba(255,255,255,.55);padding:14px;display:inline-block}.login-panel{display:flex;align-items:center;justify-content:center;padding:38px}.login-form{width:100%;max-width:440px}.login-form h1{font-size:28px;margin-bottom:8px}.login-help{text-align:right;font-size:12px;margin:8px 0 18px}.login-submit{width:100%;margin-top:8px}.security-note{margin-top:24px;border-top:1px solid var(--line);padding-top:14px;font-family:'JetBrains Mono','Courier New',monospace;font-size:12px;color:var(--muted)}
/* Empty lock state */
.lock-layout{min-height:100vh;display:grid;grid-template-columns:20% 80%;background:#fff}.lock-side{background:var(--primary);color:#fff;padding:34px;display:flex;flex-direction:column;justify-content:space-between}.lock-side strong{font-size:18px;letter-spacing:.12em;text-transform:uppercase}.lock-main{display:flex;align-items:center;justify-content:center;padding:32px}.lock-card{max-width:720px;width:100%;border:1px solid var(--line);padding:38px;background:#fff}.lock-icon{width:76px;height:76px;border:2px solid var(--primary);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:36px;margin-bottom:22px}.support-box{border:1px solid var(--line);padding:18px;margin-top:24px}.support-box h3{font-size:15px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.support-box .btn{width:100%}.back-link{display:inline-block;margin-top:12px;color:var(--slate);font-size:13px}.lock-footer{font-family:'JetBrains Mono','Courier New',monospace;font-size:11px;color:#DFF7EF}
/* Exam mode */
.exam-fixed-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;border-bottom:1px solid var(--line);background:#fff;padding:12px 20px}.exam-brand{font-weight:900;color:var(--primary);text-transform:uppercase;letter-spacing:.08em}.timer-card{border:1px solid var(--line-dark);padding:8px 12px;background:#fff}.timer-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.timer-value{font-family:'JetBrains Mono','Courier New',monospace;font-size:26px;font-weight:900;color:var(--primary)}.timer-card.warning .timer-value{color:var(--warning)}.timer-card.danger .timer-value,.timer-card.expired .timer-value{color:var(--danger)}.exam-workspace{display:grid;grid-template-columns:92px 1fr;min-height:calc(100vh - 74px)}.question-nav{border-right:1px solid var(--line);background:#F7FAFC;padding:16px 10px;position:sticky;top:74px;height:calc(100vh - 74px);overflow:auto}.question-grid{display:grid;grid-template-columns:1fr;gap:7px}.qnum{height:34px;border:1px solid var(--line-dark);display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono','Courier New',monospace;font-weight:900;background:#fff;color:var(--slate)}.qnum.answered{background:#E6FFFA;border-color:var(--primary);color:var(--primary)}.exam-content{max-width:900px;width:100%;margin:0 auto;padding:30px 28px}.paper-header{border:1px solid var(--line);padding:18px;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;margin-bottom:18px}.paper-logo{width:64px;height:64px;object-fit:contain;border:0}.paper-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:900}.paper-title{font-size:28px;margin:4px 0 0}.paper-meta-grid{display:grid;grid-template-columns:1fr 1fr 210px;gap:14px;margin:18px 0}.paper-question-block,.question-block{border:1px solid var(--line);margin-bottom:14px;background:#fff}.paper-question-block summary,.question-block summary{list-style:none;cursor:pointer;padding:14px 16px;font-weight:900;color:#1A202C;background:#F7FAFC;border-bottom:1px solid var(--line)}.paper-question-inner,.question-inner{padding:16px}.paper-answer-field textarea{font-family:Georgia,'Merriweather',serif;line-height:1.7;min-height:92px}.paper-actions{padding:18px 0 8px}.paper-submit{min-width:190px}.public-footer{padding:12px;text-align:center;color:var(--muted);font-size:12px}.footer{padding:16px 0;text-align:center;color:var(--muted);font-size:12px}.footer-login{color:var(--muted)}
.review-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px}.review-item{border:1px solid var(--line);background:#fff;padding:14px}.answer-box{white-space:pre-wrap;border:1px solid var(--line);background:#F7FAFC;min-height:120px;padding:12px;font-family:Georgia,'Merriweather',serif;line-height:1.7}.radio-row{display:flex;gap:16px;flex-wrap:wrap}.score-box{border:1px solid var(--line);border-left:4px solid var(--primary);padding:16px;background:#fff}.correction-shell{max-width:none}.correction-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px}.sticky-criteria{position:sticky;top:16px}.link-btn{background:none;border:0;color:var(--danger);cursor:pointer;padding:0;font-weight:900}.exam-item{display:flex;gap:10px;align-items:center;border:1px solid var(--line);padding:10px;margin-bottom:10px}.exam-item img{width:44px;height:44px;object-fit:contain}.exam-item span{display:block;color:var(--muted);font-size:12px}.exam-item.active{border-left:4px solid var(--primary)}
@media(max-width:980px){.topbar{grid-template-columns:1fr}.topbar-center,.admin-tools{justify-self:start}.stats-grid,.grid.two,.grid.two.compact,.review-layout,.correction-grid,.filter-row,.paper-meta-grid{grid-template-columns:1fr}.login-shell,.lock-layout{grid-template-columns:1fr}.login-visual{min-height:260px}.lock-side{min-height:190px}.exam-workspace{grid-template-columns:1fr}.question-nav{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.question-grid{grid-template-columns:repeat(8,1fr)}.exam-fixed-header{grid-template-columns:1fr}.table-wrap{border:0}.table,.table thead,.table tbody,.table th,.table td,.table tr{display:block}.table thead{display:none}.table tr{height:auto;border:1px solid var(--line);margin-bottom:10px;background:#fff}.table td{display:flex;justify-content:space-between;gap:12px}.table td:before{content:attr(data-label);font-weight:900;text-transform:uppercase;font-size:11px;color:var(--muted)}}

/* Silent save exam redesign */
.exam-workspace.focused{display:block;min-height:calc(100vh - 74px);background:#F7FAFC}.exam-content.wide{max-width:1560px;padding:26px 24px 92px}.identity-strip{display:grid;grid-template-columns:1fr 1fr 210px;gap:14px;border:1px solid var(--line);background:#fff;padding:14px 16px;margin:18px 0}.exam-progress-line{font-family:'JetBrains Mono','Courier New',monospace;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:10px 0 16px}.exam-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.exam-topic-card{position:relative;border:1px solid var(--line-dark);background:#fff;border-radius:0;min-height:260px}.topic-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);background:#fff;padding:13px 14px;min-height:62px}.topic-card-head strong{display:block;color:#1A202C;font-size:14px;line-height:1.3}.topic-number{display:inline-block;font-family:'JetBrains Mono','Courier New',monospace;font-size:12px;font-weight:900;color:var(--primary);margin-right:8px}.status-dot{width:9px;height:9px;border:1px solid var(--line-dark);background:#A0AEC0;flex:0 0 auto;margin-top:4px}.exam-topic-card.filled .status-dot{background:var(--primary);border-color:var(--primary)}.topic-card-body{padding:12px 14px}.paper-answer-field.compact{position:relative;margin-bottom:10px}.paper-answer-field.compact label{margin:9px 0 5px;font-size:10px}.paper-answer-field.compact textarea{background:#F7FAFC;border-color:#718096;min-height:86px;font-size:14px;line-height:1.55;padding-bottom:24px;font-family:Inter,Roboto,Arial,sans-serif}.char-count{position:absolute;right:9px;bottom:7px;font-family:'JetBrains Mono','Courier New',monospace;font-size:10px;color:var(--muted);background:#F7FAFC;padding:1px 3px}.submit-modal{display:none;position:fixed;inset:0;z-index:99;background:rgba(26,32,44,.58);align-items:center;justify-content:center;padding:18px}.submit-modal.open{display:flex}.submit-modal-box{width:100%;max-width:470px;background:#fff;border:2px solid #1A202C;padding:24px;box-shadow:8px 8px 0 rgba(0,0,0,.18)}.submit-modal-box h2{margin-bottom:8px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.timer-card.danger .timer-value{animation:timerPulse .8s infinite}@keyframes timerPulse{0%,100%{opacity:1}50%{opacity:.35}}@media(max-width:1180px){.exam-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.exam-card-grid,.identity-strip{grid-template-columns:1fr}.exam-content.wide{padding:18px 12px 86px}.paper-submit{position:fixed;left:12px;right:12px;bottom:12px;z-index:20;width:calc(100% - 24px)}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}

/* Refinamento Clinical Grade: sistema vivo, progresso e ergonomia */
.exam-fixed-header{grid-template-columns:1fr minmax(260px,auto) auto auto;box-shadow:0 3px 0 rgba(26,32,44,.12);gap:18px}
.exam-brand{display:flex;flex-direction:column;line-height:1.12}
.exam-brand span{font-size:11px;letter-spacing:.16em;color:var(--muted);font-weight:800;text-transform:uppercase;margin-top:3px}
.exam-live-status{font-size:11px;color:#4A5568;background:#F8FAFC;border:1px solid #CBD5E0;padding:8px 10px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.timer-card{min-width:132px;text-align:center;border:1px solid #1A202C;box-shadow:3px 3px 0 rgba(26,32,44,.12)}
.timer-label{font-size:9px;color:#4A5568;font-weight:900}
.timer-card.danger{animation:timerSoftBg 1.1s infinite;background:#FFF5F5;border-color:#C53030}
@keyframes timerSoftBg{0%,100%{background:#FFF5F5}50%{background:#FED7D7}}
.submit-check{transition:transform .12s ease,box-shadow .12s ease}.submit-check:hover,.paper-submit:hover{transform:translateY(1px);box-shadow:none}
.exam-progress-panel{position:sticky;top:74px;z-index:8;background:#F7FAFC;border:1px solid #CBD5E0;padding:10px 12px;margin:10px 0 10px;box-shadow:0 2px 0 rgba(26,32,44,.06)}
.exam-progress-text{font-family:'JetBrains Mono','Courier New',monospace;color:#2D3748;font-size:12px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px;font-weight:900}
.exam-progress-track{height:5px;background:#E2E8F0;border:1px solid #CBD5E0;overflow:hidden}.exam-progress-fill{height:100%;width:0;background:#006B4F;transition:width .25s ease}
.quick-question-nav{position:sticky;top:133px;z-index:7;display:grid;grid-template-columns:repeat(35,minmax(24px,1fr));gap:4px;background:#F7FAFC;border:1px solid #E2E8F0;padding:8px;margin-bottom:14px}
.quick-q{height:26px;display:flex;align-items:center;justify-content:center;border:1px solid #A0AEC0;background:#fff;color:#4A5568;text-decoration:none;font-family:'JetBrains Mono','Courier New',monospace;font-size:11px;font-weight:900;transition:background .15s ease,color .15s ease,border-color .15s ease}.quick-q:hover{border-color:#006B4F;color:#006B4F}.quick-q.answered{background:#006B4F;color:#fff;border-color:#006B4F}
.exam-topic-card{box-shadow:4px 4px 0 rgba(26,32,44,.08);scroll-margin-top:158px}.topic-card-head{background:#F8FAFC}.save-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid #CBD5E0;font-size:12px;font-weight:900;background:#fff;color:#A0AEC0;flex:0 0 auto}.save-icon.saving{color:#2B6CB0;border-color:#2B6CB0;background:#EBF8FF;animation:savePulse .5s ease-in-out}.save-icon.saved{color:#006B4F;border-color:#006B4F;background:#F0FFF4}.save-icon.idle{color:#A0AEC0}@keyframes savePulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.16);opacity:.55}}
.paper-answer-field.compact textarea{background:#F8FAFC;border:1px solid #A0AEC0;line-height:1.6;resize:vertical;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.paper-answer-field.compact textarea:focus{outline:none;background:#fff;border-color:#006B4F;border-width:2px;box-shadow:0 0 0 2px rgba(0,107,79,.08)}.paper-answer-field.compact textarea::placeholder{color:#718096}.char-count{background:#F8FAFC;border-left:1px solid #E2E8F0}.exam-topic-card.filled{border-color:#006B4F}.exam-topic-card.filled .topic-number{color:#006B4F}
@media(max-width:1180px){.exam-fixed-header{grid-template-columns:1fr auto auto}.exam-live-status{grid-column:1/-1}.quick-question-nav{grid-template-columns:repeat(18,minmax(24px,1fr));top:151px}}
@media(max-width:760px){.exam-fixed-header{grid-template-columns:1fr;position:sticky;padding:10px 16px}.exam-live-status{white-space:normal}.timer-card{width:100%;min-width:0}.exam-progress-panel{top:188px;margin-left:4px;margin-right:4px}.quick-question-nav{position:relative;top:auto;grid-template-columns:repeat(7,1fr);margin-left:4px;margin-right:4px}.exam-card-grid{margin-left:4px;margin-right:4px}.exam-topic-card{scroll-margin-top:12px}.paper-submit{position:fixed;left:16px;right:16px;bottom:12px;z-index:30;width:calc(100% - 32px);padding:16px 18px}.exam-content.wide{padding-left:12px;padding-right:12px}.identity-strip{margin-left:4px;margin-right:4px}}

/* Fluxo guiado: uma questão por vez */
.exam-card-grid{display:block;max-width:1120px;margin:0 auto 18px}.exam-topic-card{display:none;min-height:auto;margin-bottom:18px}.exam-topic-card.active-step{display:block;border-color:#006B4F;box-shadow:6px 6px 0 rgba(0,107,79,.10)}.exam-topic-card.active-step .topic-card-head{border-bottom-color:#006B4F}.topic-card-body{display:grid;grid-template-columns:1fr;gap:18px;padding:22px}.paper-answer-field.compact textarea{min-height:170px;font-size:15px}.topic-step-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #E2E8F0;background:#fff;padding:18px 22px}.step-prev{min-width:150px}.step-complete{min-width:230px}.quick-q.current{background:#2B6CB0;color:#fff;border-color:#2B6CB0}.quick-q.draft{background:#FEEBC8;color:#7B341E;border-color:#DD6B20}.hidden-submit{display:none!important}.paper-actions{text-align:right;max-width:1120px;margin:0 auto}.exam-progress-panel{max-width:1120px;margin:0 auto 14px;background:#fff;border:1px solid #E2E8F0;padding:14px}.exam-progress-text{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.exam-progress-track{height:10px;background:#E2E8F0;margin-top:10px;overflow:hidden}.exam-progress-fill{height:100%;width:0;background:#006B4F;transition:width .2s ease}.quick-question-nav{max-width:1120px;margin-left:auto;margin-right:auto}.exam-topic-card.draft-step{border-color:#DD6B20}.exam-topic-card.draft-step .topic-number{color:#DD6B20}
@media(max-width:760px){.topic-card-body{padding:16px}.topic-step-actions{padding:14px 16px;flex-direction:column}.topic-step-actions .btn{width:100%;justify-content:center}.step-prev{min-width:0}.step-complete{min-width:0}.paper-answer-field.compact textarea{min-height:150px}.paper-actions{text-align:center}.paper-submit{display:none!important}.exam-progress-text{font-size:13px}.quick-q{height:34px}}


/* Navegação final: retorno para portal público no login e no admin */
.dashboard-return-link{border:1px solid var(--line);background:#fff;color:var(--slate);padding:10px 12px;border-radius:0;font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;line-height:1}
.dashboard-return-link:hover{background:var(--slate);color:#fff;text-decoration:none}
.login-return-wrap{width:100%;text-align:right;margin-bottom:22px}
.login-return-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-dark);background:#fff;color:var(--primary);padding:10px 14px;border-radius:0;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.login-return-link:hover{background:var(--primary);color:#fff;text-decoration:none;border-color:var(--primary)}
@media(max-width:760px){.login-return-wrap{text-align:left}.login-return-link{width:100%;font-size:13px}.admin-tools{gap:6px;flex-wrap:wrap}.main-return-link{font-size:13px}.dashboard-return-link{font-size:11px}}

/* Refinamento clínico da questão única */
.exam-content.wide{max-width:1340px;background:#FFFFFF}
.paper-header{max-width:1180px;margin-left:auto;margin-right:auto;background:#FAFAFA;box-shadow:4px 4px 0 rgba(26,32,44,.06)}
.paper-title{font-weight:800;color:#1A202C;letter-spacing:-.02em}.paper-kicker{color:#4A5568}.muted{color:#4A5568}.exam-fixed-header{background:#FFFFFF}.timer-card{background:#003D32;border:2px solid #1A202C;box-shadow:3px 3px 0 rgba(26,32,44,.18)}.timer-card .timer-label{color:#BFE8DC}.timer-card .timer-value{color:#FFFFFF;letter-spacing:.04em}.timer-card.warning{background:#2D3748}.timer-card.danger{background:#FFF5F5;border-color:#C53030}.timer-card.danger .timer-label{color:#742A2A}.timer-card.danger .timer-value{color:#C53030}.exam-live-status{background:#FAFAFA;color:#4A5568}
.identity-strip{max-width:1180px;margin-left:auto;margin-right:auto;transition:all .18s ease}.identity-strip.summary-mode{display:block;padding:10px 14px;background:#FAFAFA;border-left:4px solid #006B4F}.identity-strip.summary-mode:before{content:attr(data-summary);font-size:13px;font-weight:800;color:#4A5568}.identity-strip.summary-mode .paper-field{display:none}.exam-progress-panel,.quick-question-nav,.exam-card-grid,.paper-actions{max-width:1180px}.quick-question-nav{grid-template-columns:repeat(35,28px);justify-content:center;background:#FFFFFF}.quick-q{border-radius:0;font-family:'JetBrains Mono','Courier New',monospace}.quick-q.current{background:#006B4F!important;color:#fff!important;border-color:#006B4F!important}.quick-q.answered{background:#fff!important;border:2px solid #006B4F!important;color:#006B4F!important}.quick-q.draft{background:#FFF7ED!important;border-color:#DD6B20!important;color:#7B341E!important}.exam-topic-card.active-step{background:#FAFAFA;border:1px solid #CBD5E0;box-shadow:6px 6px 0 rgba(26,32,44,.08)}.topic-card-head{background:#FAFAFA;padding:20px 22px 16px;border-bottom:1px solid #E2E8F0}.clinical-title-wrap{border-left:4px solid #006B4F;padding-left:14px;display:block}.clinical-title-wrap .topic-number{display:block;margin:0 0 4px;font-size:12px;color:#006B4F}.clinical-title-wrap strong{font-size:24px!important;line-height:1.18!important;font-weight:800;color:#1A202C}.topic-card-body{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:24px 22px 34px;position:relative}.paper-answer-field.compact.clinical-field{margin-bottom:0}.paper-answer-field.compact.clinical-field label{font-family:'JetBrains Mono','Courier New',monospace;font-size:11px;letter-spacing:.08em;color:#4A5568;margin:0 0 10px}.paper-answer-field.compact.clinical-field textarea{background:transparent;border:0;border-bottom:2px solid #CBD5E0;min-height:260px;padding:12px 2px 26px;font-family:Inter,Roboto,Arial,sans-serif;font-size:15px;line-height:1.65;color:#1A202C;box-shadow:none;transition:border-color .16s ease,min-height .16s ease,padding .16s ease}.paper-answer-field.compact.clinical-field textarea:focus{border:0;border-bottom:2px solid #006B4F;background:#FFFFFF;box-shadow:none;padding-bottom:30px;min-height:272px}.paper-answer-field.compact.clinical-field textarea::placeholder{font-style:italic;color:#A0AEC0}.paper-answer-field.compact.clinical-field .char-count{background:#FAFAFA;border-left:0;right:2px;bottom:5px}.card-save-time{position:absolute;right:22px;bottom:10px;font-family:'JetBrains Mono','Courier New',monospace;font-size:11px;color:#006B4F;opacity:0;transition:opacity .2s ease}.card-save-time.visible{opacity:1}.topic-step-actions{justify-content:flex-end;background:#FFFFFF;padding:16px 22px}.step-prev{margin-right:auto}.step-complete{min-width:0;height:48px;padding:0 22px}.btn.primary:hover{transform:translateY(1px)}.exam-card-grid.slide-in .exam-topic-card.active-step{animation:clinicalSlide .22s ease-out}@keyframes clinicalSlide{0%{opacity:.35;transform:translateX(18px)}100%{opacity:1;transform:translateX(0)}}
@media(max-width:1024px){.topic-card-body{grid-template-columns:1fr}.paper-answer-field.compact.clinical-field textarea{min-height:150px}.paper-answer-field.compact.clinical-field textarea:focus{min-height:164px}.quick-question-nav{grid-template-columns:repeat(12,28px)}}
@media(max-width:760px){.clinical-title-wrap strong{font-size:21px!important}.topic-card-head{padding:16px}.topic-card-body{padding:18px 16px 34px}.identity-strip{margin-left:4px;margin-right:4px}.quick-question-nav{grid-template-columns:repeat(7,1fr)}.topic-step-actions{justify-content:center}.step-prev{margin-right:0}.step-complete{width:100%}.paper-answer-field.compact.clinical-field textarea{min-height:138px}.paper-answer-field.compact.clinical-field textarea:focus{min-height:150px}}


/* Rodapé institucional administrável */
.institutional-footer{margin-top:auto;background:#0B1F1A;color:#DDEBE7;text-align:left;padding:34px 28px 18px;border-top:4px solid #006B4F}
.footer-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:34px;align-items:start}
.footer-brand-block strong{display:block;color:#FFFFFF;font-size:18px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.footer-brand-block p{margin:0;max-width:520px;color:#BFD2CC;line-height:1.65;font-size:14px}
.footer-links-block h4{font-family:'JetBrains Mono','Courier New',monospace;color:#FFFFFF;font-size:11px;text-transform:uppercase;letter-spacing:.16em;margin:0 0 12px}
.footer-links-block a{display:block;color:#DDEBE7;font-size:13px;font-weight:800;margin:8px 0;text-transform:uppercase;letter-spacing:.04em}
.footer-links-block a:hover{color:#FFFFFF;text-decoration:underline}
.footer-links-block a.footer-disabled{color:#7D918B;cursor:not-allowed;text-decoration:none}
.footer-bottom{max-width:1180px;margin:26px auto 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#9FB6AF;font-family:'JetBrains Mono','Courier New',monospace;font-size:11px}
@media(max-width:760px){.institutional-footer{padding:28px 18px 82px}.footer-grid{grid-template-columns:1fr;gap:22px}.footer-bottom{flex-direction:column}.footer-links-block a{font-size:12px}}
/* Cursos/turmas e tela inicial da prova */
.start-exam-card{max-width:620px}.start-exam-form{display:grid;gap:12px;margin-top:18px}.start-exam-form label{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#4A5568}.start-exam-form input,.start-exam-form select{width:100%;border:1px solid #CBD5E0;background:#FFFFFF;color:#1A202C;padding:14px 12px;border-radius:0;font-size:15px}.start-exam-form input:focus,.start-exam-form select:focus{outline:none;border:2px solid #006B4F;padding:13px 11px}.compact-support{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-top:18px}.identity-strip.summary-mode .paper-field{display:none!important}

/* Aspectos flexíveis por prova */
.grid.three{grid-template-columns:repeat(3,1fr)}
.aspect-config-box{border:1px solid #CBD5E0;background:#FAFAFA;margin:18px 0;padding:18px;border-left:4px solid #006B4F}
.aspect-config-box h3{margin:0 0 8px;font-size:16px;text-transform:uppercase;letter-spacing:.08em;color:#1A202C}
.aspect-grid-admin{gap:14px;margin:12px 0}
.topic-card-body.aspects-1{grid-template-columns:minmax(0,1fr)}
.topic-card-body.aspects-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.topic-card-body.aspects-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.topic-card-body.aspects-1 .paper-answer-field.compact.clinical-field textarea{min-height:300px}
.topic-card-body.aspects-2 .paper-answer-field.compact.clinical-field textarea{min-height:280px}
@media(max-width:1024px){.grid.three,.aspect-grid-admin,.topic-card-body.aspects-1,.topic-card-body.aspects-2,.topic-card-body.aspects-3{grid-template-columns:1fr}.topic-card-body.aspects-1 .paper-answer-field.compact.clinical-field textarea,.topic-card-body.aspects-2 .paper-answer-field.compact.clinical-field textarea{min-height:150px}}

/* Ajuste final de alinhamento das páginas internas do Admin */
.form-card,
.auth-card,
.center-wrap .card,
.card.form-card{
  width:100%;
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
}
.center-wrap{
  width:100%;
  max-width:1180px;
  margin:0 auto;
}
.card.form-card,
.center-wrap .card.auth-card{
  padding:26px 30px;
}
.dashboard-return-link{
  border:1px solid var(--line);
  background:#fff;
  color:var(--slate);
  padding:10px 14px;
  border-radius:0;
  font-size:13px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  line-height:1;
}
.dashboard-return-link:hover{background:var(--primary);color:#fff;text-decoration:none}
@media(max-width:1220px){
  .form-card,.auth-card,.center-wrap .card,.card.form-card,.center-wrap{max-width:100%;}
}
@media(max-width:760px){
  .card.form-card,
  .center-wrap .card.auth-card{padding:20px 16px;}
}

/* Novo padrão visual modular para páginas de configuração e prova */
.admin-modern-page{
  width:100%;
  max-width:1180px;
  margin:0 auto 28px;
}
.admin-page-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin:8px 0 18px;
}
.admin-eyebrow{
  display:block;
  margin-bottom:6px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#006B4F;
}
.admin-page-head h1{
  margin:0;
  color:#1A202C;
  font-size:28px;
  line-height:1.15;
  letter-spacing:-.02em;
}
.admin-page-head p{
  margin:8px 0 0;
  color:#4A5568;
  font-size:14px;
}
.admin-modern-form{
  display:grid;
  gap:18px;
}
.admin-card-modern{
  background:#FFFFFF;
  border:1px solid #E2E8F0;
  border-radius:4px;
  box-shadow:0 4px 6px -1px rgba(0,0,0,.10);
  padding:22px;
}
.admin-card-modern.compact-card{padding-bottom:18px}
.admin-card-title{
  margin:-2px 0 18px;
  padding-bottom:12px;
  border-bottom:1px solid #E2E8F0;
}
.admin-card-title h2{
  margin:0;
  font-size:18px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:none;
  color:#006B4F;
}
.card-description{
  margin:-6px 0 16px;
  color:#4A5568;
  font-size:14px;
  line-height:1.5;
}
.subsection-title{
  margin:22px 0 12px;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#1A202C;
}
.admin-grid{
  display:grid;
  gap:16px;
  align-items:start;
}
.admin-grid.grid-1{grid-template-columns:1fr}
.admin-grid.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-grid.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-grid.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.admin-grid .span-full{grid-column:1/-1}
.admin-grid .span-1{grid-column:span 1}
.admin-grid .span-2{grid-column:span 2}
.admin-grid .span-3{grid-column:span 3}
.field-block label{
  margin:0 0 7px;
  font-family:Inter,Roboto,Arial,sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:#4A5568;
}
.field-block input[type=text],
.field-block input[type=url],
.field-block input[type=password],
.field-block input[type=number],
.field-block select,
.field-block textarea{
  width:100%;
  border:1px solid #E2E8F0;
  border-radius:4px;
  background:#FFFFFF;
  color:#1A202C;
  padding:12px 13px;
  font-size:15px;
  line-height:1.45;
  transition:border-color .14s ease,box-shadow .14s ease;
}
.field-block textarea{resize:vertical;min-height:104px}
.field-block input:focus,
.field-block select:focus,
.field-block textarea:focus{
  outline:none;
  border:1px solid #006B4F;
  box-shadow:0 0 0 3px rgba(0,107,79,.12);
  padding:12px 13px;
}
.field-block input::placeholder,
.field-block textarea::placeholder{color:#A0AEC0}
.admin-help{
  margin-top:7px;
  font-size:12px;
  line-height:1.45;
}
.link-grid{margin-bottom:18px}
.bottom-config-grid{margin-top:18px}
.status-row-modern{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}
.admin-toggle{
  margin:0;
  padding:10px 12px;
  border:1px solid #E2E8F0;
  border-radius:4px;
  background:#F8FAFC;
}
.admin-action-bar{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:12px;
  padding:2px 0 0;
}
.admin-save-btn{
  min-height:46px;
  padding:0 20px!important;
  border-radius:4px!important;
  background:#006B4F!important;
  border-color:#006B4F!important;
  color:#FFFFFF!important;
  font-weight:800!important;
  letter-spacing:.05em!important;
}
.admin-save-btn:hover{
  transform:translateY(1px);
  background:#004C38!important;
  border-color:#004C38!important;
  color:#FFFFFF!important;
}
@media(max-width:900px){
  .admin-grid.grid-2,
  .admin-grid.grid-3,
  .admin-grid.grid-4{grid-template-columns:1fr}
  .admin-grid .span-1,
  .admin-grid .span-2,
  .admin-grid .span-3{grid-column:1/-1}
  .admin-page-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:768px){
  .admin-modern-page{padding:0 14px}
  .admin-card-modern{padding:18px 16px}
  .admin-page-head h1{font-size:24px}
  .status-row-modern{align-items:flex-start;flex-direction:column}
  .admin-action-bar{position:sticky;bottom:0;background:#F7FAFC;padding:12px 0;z-index:5}
  .admin-save-btn{width:100%}
}

/* Polimento final high-fidelity - telas Admin Configurações e Provas */
.admin-modern-page{
  max-width:1180px;
  margin:0 auto 36px;
}
.admin-page-head{
  margin:12px 0 28px;
}
.admin-page-head h1{
  font-size:28px;
  line-height:1.08;
  font-weight:800;
  color:#1A202C;
  letter-spacing:-.035em;
}
.admin-page-head p{
  margin-top:10px;
  color:#718096;
  line-height:1.55;
}
.admin-modern-form{
  gap:28px;
}
.admin-card-modern{
  padding:40px;
  border:1px solid #E2E8F0;
  border-radius:4px;
  background:#FFFFFF;
  box-shadow:0 4px 6px -1px rgba(0,0,0,.10);
}
.admin-card-modern.compact-card{
  padding-bottom:40px;
}
.admin-card-title{
  margin:0 0 24px;
  padding-bottom:16px;
  border-bottom:1px solid #E2E8F0;
}
.admin-card-title h2{
  margin:0;
  font-size:16px;
  line-height:1.25;
  font-weight:700;
  color:#4A5568;
  text-transform:none;
  letter-spacing:-.01em;
}
.card-description{
  margin:-10px 0 24px;
  color:#718096;
  font-size:14px;
  line-height:1.65;
}
.subsection-title{
  margin:32px 0 18px;
  font-size:15px;
  font-weight:700;
  color:#4A5568;
  text-transform:none;
  letter-spacing:-.01em;
}
.admin-grid{
  gap:24px;
}
.admin-grid.grid-3,
.admin-grid.grid-4{
  gap:24px 28px;
}
.field-block label{
  margin:0 0 8px;
  font-size:12px;
  font-weight:600;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#718096;
}
.field-block input[type=text],
.field-block input[type=url],
.field-block input[type=password],
.field-block input[type=number],
.field-block select,
.field-block textarea{
  min-height:50px;
  height:auto;
  border:1px solid #E2E8F0;
  border-radius:4px;
  background:#FFFFFF;
  color:#1A202C;
  padding:13px 14px;
  font-size:15px;
  line-height:1.55;
  transition:all .2s ease-in-out;
  box-shadow:none;
}
.field-block input[type=url],
.field-block textarea{
  word-break:break-all;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.field-block textarea{
  resize:vertical;
  min-height:126px;
}
.field-block input:focus,
.field-block select:focus,
.field-block textarea:focus{
  outline:none;
  border-color:#006B4F;
  box-shadow:0 0 0 3px rgba(0,107,79,.20);
  padding:13px 14px;
}
.field-block input::placeholder,
.field-block textarea::placeholder{
  color:#A0AEC0;
}
.admin-help{
  margin-top:9px;
  color:#718096;
  font-size:12px;
  line-height:1.55;
}
.link-grid,
.bottom-config-grid{
  margin-top:0;
  margin-bottom:0;
}
.status-row-modern{
  padding-top:4px;
}
.admin-toggle{
  padding:12px 14px;
  border-radius:4px;
  background:#F8FAFC;
}
.admin-action-bar{
  padding:4px 0 0;
}
.admin-save-btn{
  min-height:48px;
  padding:0 24px!important;
  border-radius:4px!important;
  background:#006B4F!important;
  border-color:#006B4F!important;
  color:#FFFFFF!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
  box-shadow:0 4px 12px rgba(0,107,79,.30)!important;
  transition:all .2s ease-in-out!important;
}
.admin-save-btn:hover{
  transform:translateY(-2px);
  background:#00523D!important;
  border-color:#00523D!important;
  color:#FFFFFF!important;
  box-shadow:0 8px 18px rgba(0,107,79,.32)!important;
}
.admin-save-btn:active{
  transform:translateY(0);
}
@media(max-width:768px){
  .admin-modern-page{
    padding:0 14px;
    margin-bottom:28px;
  }
  .admin-page-head{
    margin:8px 0 22px;
  }
  .admin-page-head h1{
    font-size:24px;
  }
  .admin-card-modern,
  .admin-card-modern.compact-card{
    padding:24px;
  }
  .admin-modern-form,
  .admin-grid,
  .admin-grid.grid-3,
  .admin-grid.grid-4{
    gap:20px;
  }
  .admin-card-title{
    margin-bottom:22px;
  }
  .admin-action-bar{
    position:sticky;
    bottom:0;
    z-index:5;
    padding:14px 0;
    background:#F7FAFC;
  }
}

/* =========================================================
   POLIMENTO FIDEDIGNO - Admin SaaS Premium
   Aplicado às telas: Configurações Gerais, Cadastrar Prova e Meu Perfil
   ========================================================= */
.admin-modern-page,
.admin-profile-page{
  width:100% !important;
  max-width:1180px !important;
  margin:0 auto 48px !important;
  padding:0 18px !important;
}
.admin-page-head{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-end !important;
  gap:24px !important;
  margin:18px 0 28px !important;
}
.admin-eyebrow{
  display:block !important;
  margin:0 0 8px !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  color:#006B4F !important;
}
.admin-page-head h1{
  margin:0 !important;
  color:#1A202C !important;
  font-size:28px !important;
  line-height:1.08 !important;
  font-weight:800 !important;
  letter-spacing:-.035em !important;
  text-transform:none !important;
}
.admin-page-head p{
  max-width:640px !important;
  margin:10px 0 0 !important;
  color:#718096 !important;
  font-size:14px !important;
  line-height:1.65 !important;
}
.admin-modern-form{
  display:grid !important;
  gap:28px !important;
}
.admin-card-modern,
.profile-card-modern{
  position:relative !important;
  background:#FFFFFF !important;
  border:1px solid #E2E8F0 !important;
  border-left:4px solid #006B4F !important;
  border-radius:10px !important;
  box-shadow:0 4px 20px rgba(0,0,0,.05) !important;
  padding:32px !important;
  overflow:hidden !important;
}
.admin-card-modern.compact-card{
  padding:32px !important;
}
.admin-card-title{
  margin:0 0 28px !important;
  padding:0 0 18px !important;
  border-bottom:1px solid #E2E8F0 !important;
}
.admin-card-title h2{
  margin:0 !important;
  color:#004D38 !important;
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  letter-spacing:-.01em !important;
  text-transform:none !important;
}
.card-description,
.admin-help,
.field-help{
  color:#718096 !important;
  font-size:13px !important;
  line-height:1.6 !important;
}
.card-description{
  margin:-12px 0 24px !important;
}
.subsection-title{
  margin:32px 0 16px !important;
  color:#004D38 !important;
  font-size:16px !important;
  font-weight:700 !important;
  line-height:1.3 !important;
  text-transform:none !important;
  letter-spacing:-.01em !important;
}
.admin-grid{
  display:grid !important;
  gap:24px !important;
  align-items:start !important;
}
.admin-grid.grid-1{grid-template-columns:1fr !important;}
.admin-grid.grid-2{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.admin-grid.grid-3{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.admin-grid.grid-4{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
.admin-grid .span-full{grid-column:1/-1 !important;}
.admin-grid .span-1{grid-column:span 1 !important;}
.admin-grid .span-2{grid-column:span 2 !important;}
.admin-grid .span-3{grid-column:span 3 !important;}
.link-grid{gap:22px 24px !important;}
.bottom-config-grid{margin-top:24px !important;}
.field-block label,
.admin-modern-page label:not(.inline-check),
.admin-profile-page label:not(.inline-check){
  display:block !important;
  margin:0 0 8px !important;
  color:#4A5568 !important;
  font-size:13px !important;
  line-height:1.15 !important;
  font-weight:600 !important;
  letter-spacing:.8px !important;
  text-transform:uppercase !important;
  box-shadow:none !important;
  border:0 !important;
  background:transparent !important;
}
.admin-modern-page input[type="text"],
.admin-modern-page input[type="url"],
.admin-modern-page input[type="password"],
.admin-modern-page input[type="number"],
.admin-modern-page select,
.admin-modern-page textarea,
.admin-profile-page input[type="text"],
.admin-profile-page input[type="url"],
.admin-profile-page input[type="password"],
.admin-profile-page input[type="number"],
.admin-profile-page select,
.admin-profile-page textarea{
  width:100% !important;
  min-height:50px !important;
  height:auto !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  background:#F7FAFC !important;
  color:#2D3748 !important;
  border:1px solid #CBD5E0 !important;
  border-radius:6px !important;
  padding:12px 16px !important;
  font-size:15px !important;
  font-weight:400 !important;
  line-height:1.5 !important;
  outline:none !important;
  transition:border-color .2s ease-in-out, box-shadow .2s ease-in-out, background-color .2s ease-in-out !important;
  box-shadow:none !important;
}
.admin-modern-page textarea,
.admin-profile-page textarea{
  min-height:118px !important;
  resize:vertical !important;
  white-space:pre-wrap !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
.admin-modern-page input[type="url"],
.admin-profile-page input[type="url"]{
  overflow-wrap:anywhere !important;
  word-break:break-all !important;
}
.admin-modern-page input:focus,
.admin-modern-page select:focus,
.admin-modern-page textarea:focus,
.admin-profile-page input:focus,
.admin-profile-page select:focus,
.admin-profile-page textarea:focus{
  border-color:#006B4F !important;
  background:#FFFFFF !important;
  box-shadow:0 0 0 3px rgba(0,107,79,.20) !important;
}
.admin-modern-page select{
  background-image:linear-gradient(45deg,transparent 50%,#4A5568 50%),linear-gradient(135deg,#4A5568 50%,transparent 50%) !important;
  background-position:calc(100% - 18px) 21px, calc(100% - 12px) 21px !important;
  background-size:6px 6px,6px 6px !important;
  background-repeat:no-repeat !important;
  padding-right:40px !important;
}
.status-row-modern{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  background:#F7FAFC !important;
  border:1px solid #E2E8F0 !important;
  border-radius:8px !important;
  padding:18px 20px !important;
}
.inline-check.admin-toggle,
.admin-modern-page .inline-check{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  color:#2D3748 !important;
  font-size:13px !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
}
.admin-modern-page input[type="checkbox"]{
  width:16px !important;
  height:16px !important;
  min-height:0 !important;
  padding:0 !important;
  accent-color:#006B4F !important;
}
.admin-action-bar{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:14px !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
}
.admin-action-bar.inside-card{
  margin:28px -32px -32px !important;
  padding:22px 32px !important;
  border-top:1px solid #E2E8F0 !important;
  background:#FAFCFB !important;
}
.admin-save-btn,
.admin-modern-page .btn.primary,
.admin-profile-page .btn.primary{
  min-height:48px !important;
  border:1px solid #006B4F !important;
  border-radius:8px !important;
  background:#006B4F !important;
  color:#FFFFFF !important;
  padding:14px 32px !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:700 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
  box-shadow:0 4px 12px rgba(0,107,79,.30) !important;
  transform:translateY(0) !important;
  transition:transform .18s ease, background-color .18s ease, box-shadow .18s ease !important;
}
.admin-save-btn:hover,
.admin-modern-page .btn.primary:hover,
.admin-profile-page .btn.primary:hover{
  background:#00523D !important;
  border-color:#00523D !important;
  color:#FFFFFF !important;
  text-decoration:none !important;
  transform:translateY(-2px) !important;
  box-shadow:0 8px 20px rgba(0,107,79,.34) !important;
}
.password-field-block{
  background:#FAFCFB !important;
  border:1px dashed #CBD5E0 !important;
  border-radius:8px !important;
  padding:18px !important;
}
.profile-card-modern{
  max-width:980px !important;
  margin:0 auto !important;
}
.profile-grid{gap:24px !important;}
@media(max-width:768px){
  .admin-modern-page,
  .admin-profile-page{padding:0 14px !important;margin-bottom:36px !important;}
  .admin-page-head{margin:8px 0 22px !important;}
  .admin-page-head h1{font-size:24px !important;}
  .admin-card-modern,
  .admin-card-modern.compact-card,
  .profile-card-modern{padding:24px !important;border-radius:10px !important;}
  .admin-grid,
  .admin-grid.grid-1,
  .admin-grid.grid-2,
  .admin-grid.grid-3,
  .admin-grid.grid-4,
  .profile-grid{grid-template-columns:1fr !important;gap:20px !important;}
  .admin-grid .span-1,
  .admin-grid .span-2,
  .admin-grid .span-3,
  .admin-grid .span-full{grid-column:1/-1 !important;}
  .status-row-modern{flex-direction:column !important;align-items:flex-start !important;}
  .admin-action-bar{justify-content:stretch !important;}
  .admin-action-bar.inside-card{margin:24px -24px -24px !important;padding:18px 24px !important;}
  .admin-save-btn,.admin-modern-page .btn.primary,.admin-profile-page .btn.primary{width:100% !important;}
}

/* Acabamento visual da página inicial do aluno */
.lock-layout{
  grid-template-columns:32% 68%;
}
.student-entry-side{
  position:relative;
  overflow:hidden;
  min-height:100vh;
  padding:42px 40px 34px;
  background:
    linear-gradient(180deg, rgba(0,107,79,.88), rgba(0,70,52,.94)),
    radial-gradient(circle at 25% 20%, rgba(255,255,255,.16), transparent 34%),
    #006B4F;
}
.student-entry-side:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.12), transparent 32%),
    url('aluno-estudando.svg') center 47%/74% auto no-repeat;
  opacity:.92;
  pointer-events:none;
}
.student-entry-side:after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:42%;
  background:linear-gradient(180deg, transparent, rgba(0,35,26,.46));
  pointer-events:none;
}
.student-side-brand,
.student-side-content,
.student-side-footer{
  position:relative;
  z-index:2;
}
.student-side-brand{
  display:inline-flex;
  align-items:center;
  min-height:48px;
  padding:0 18px;
  border:1px solid rgba(255,255,255,.55);
  color:#FFFFFF;
  font-size:15px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.14em;
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(2px);
}
.student-side-content{
  margin-top:auto;
  max-width:420px;
  color:#FFFFFF;
}
.student-illustration{
  width:220px;
  height:220px;
  margin:0 0 28px;
  background:url('aluno-estudando.svg') center/contain no-repeat;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.22));
}
.student-side-content h2{
  margin:0 0 14px;
  font-size:30px;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.035em;
  color:#FFFFFF;
}
.student-side-content p{
  margin:0;
  max-width:360px;
  color:#E7F4F0;
  font-size:15px;
  line-height:1.55;
  font-weight:600;
}
.student-side-footer{
  padding-top:28px;
  color:#DFF7EF;
  opacity:.92;
}
@media(max-width:980px){
  .lock-layout{grid-template-columns:1fr}
  .student-entry-side{min-height:360px;padding:34px 28px}
  .student-entry-side:before{background-size:280px auto;background-position:88% 54%;opacity:.75}
  .student-side-content{margin-top:70px;max-width:520px}
  .student-illustration{display:none}
  .student-side-content h2{font-size:26px}
}
@media(max-width:620px){
  .student-entry-side{min-height:300px;padding:26px 20px}
  .student-entry-side:before{background-size:220px auto;background-position:105% 58%;opacity:.48}
  .student-side-brand{font-size:12px;letter-spacing:.10em;min-height:42px;padding:0 12px}
  .student-side-content{margin-top:52px}
  .student-side-content h2{font-size:23px}
  .student-side-content p{font-size:13px;max-width:290px}
}


/* Logo institucional no acesso do aluno */
.lock-logo{
  width:96px;
  height:96px;
  margin:0 0 24px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#FFFFFF;
  border:1px solid #E2E8F0;
  border-radius:12px;
  box-shadow:0 10px 28px rgba(0,0,0,.08);
  overflow:hidden;
}
.lock-logo img{
  max-width:78px;
  max-height:78px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}
.lock-logo.logo-failed{display:none}
.lock-logo-fallback{
  color:#006B4F;
  font-weight:900;
  font-size:26px;
  letter-spacing:.08em;
}
.start-exam-card .lock-icon{display:none}
@media(max-width:620px){
  .lock-logo{width:82px;height:82px;margin-bottom:20px}
  .lock-logo img{max-width:66px;max-height:66px}
}

/* Ações de relatório e correção */
.inline-delete-form{display:inline-flex;margin:0;padding:0}.action-icons .btn.danger{white-space:nowrap}
.review-delete-form{margin-top:12px}.review-delete-form .btn{width:100%}
