:root{color-scheme:dark;--bg:#091322;--bg2:#101f34;--card:#15253b;--muted:#91a4bd;--line:#2a3b54;--strong:#eff6ff;--green:#65dbc3;--green2:#31bda8;--orange:#e7ac6b;--shadow:0 24px 70px #02091640;font-family:Inter,'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 74% -10%,#123f54 0%,transparent 36%),var(--bg);color:var(--strong);font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:hover,a:hover{transition:.18s ease}button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--green);outline-offset:3px}.shell{max-width:1190px;min-height:100vh;margin:auto;padding:0 32px;display:flex;flex-direction:column}.topbar{min-height:94px;border-bottom:1px solid #ffffff17;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:13px;line-height:1.16;letter-spacing:.12em;font-size:13px}.brand small{display:block;color:var(--green);font-size:10px;letter-spacing:.22em;margin-top:6px}.brand-icon{background:#d1fff0;color:#071e26;border-radius:12px;padding:12px 10px;letter-spacing:-.08em;font-weight:950;font-size:20px}.brand-icon span{font-size:10px;letter-spacing:-.03em}.topbar nav{display:flex;gap:29px;align-items:center;color:#bdcbe0;font-weight:600;font-size:13px}.topbar nav a:hover,.back:hover,.subtle-help a:hover{color:var(--green)}.admin-link{color:#8295ad!important}main{flex:1}.hero{padding:76px 0 61px;max-width:760px}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--green);font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:750}.pulse{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px #63dcc01d}.hero h1,.page-hero h1{font-size:clamp(38px,6.4vw,72px);letter-spacing:-.055em;line-height:1.12;margin:18px 0 17px;font-weight:820}.hero h1 span{color:var(--green)}.hero p,.page-hero p{color:#a8bbd1;font-size:17px;max-width:660px;margin:0;line-height:1.8}.hero-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}.hero-chips span{border:1px solid #466076;color:#c3d5e2;font-size:12px;padding:8px 12px;border-radius:99px}.section-intro{margin-bottom:25px}.kicker,.card-kicker{font-size:10px;letter-spacing:.17em;color:var(--green);font-weight:800}.section-intro h2,.list-header h2,.admin-top h2{font-size:27px;letter-spacing:-.03em;margin:7px 0 5px}.section-intro p,.admin-top p{color:var(--muted);margin:0}.exam-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.exam-card{position:relative;overflow:hidden;display:flex;flex-direction:column;background:linear-gradient(145deg,#172c40,#132338);border:1px solid #33475e;border-radius:20px;padding:27px;min-height:319px;box-shadow:var(--shadow)}.exam-card:before{content:"";width:240px;height:180px;position:absolute;top:-85px;right:-100px;border-radius:50%;background:#60dec31c;filter:blur(18px)}.exam-card:hover,.module-card:hover{border-color:#58bfad;transform:translateY(-3px)}.exam-header{display:flex;justify-content:space-between;align-items:center}.exam-no{color:#6db7ae;font-size:13px;letter-spacing:.15em}.exam-icon{width:51px;height:51px;border:1px solid #5486755c;border-radius:12px;display:grid;place-items:center;color:var(--green);font-size:29px;background:#64dbbe12}.exam-body{margin:32px 0 auto}.exam-body h3{font-size:30px;margin:9px 0 9px;letter-spacing:-.04em}.exam-body p{margin:0;color:#a5b7ca;font-size:14px;line-height:1.6}.exam-footer{display:flex;gap:10px;justify-content:space-between;align-items:center;border-top:1px solid #ffffff1a;margin-top:26px;padding-top:18px;font-size:12px;color:#93a7bc}.exam-footer strong{color:var(--green);font-weight:750}.exam-footer strong span{margin-left:7px}.subtle-help{color:var(--muted);margin:25px 0 55px;padding:18px;background:#102038;border:1px solid #253b53;border-radius:12px;font-size:13px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.subtle-help a{color:var(--green);font-weight:750}.footer{margin-top:45px;padding:27px 0 32px;border-top:1px solid #ffffff15;color:#6f859f;font-size:11px;display:flex;justify-content:space-between;gap:15px}.back{display:inline-block;color:#a8bfd5;margin-top:32px;font-size:13px}.page-hero{margin:26px 0 40px;border-bottom:1px solid #ffffff19;padding-bottom:37px}.page-hero h1{font-size:clamp(32px,5vw,50px);margin:17px 0 8px}.page-hero p{font-size:15px}.page-hero.compact{margin-bottom:32px}.sep{color:#54758e;font-weight:400}.list-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.quiet{color:var(--muted);font-size:12px}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.module-card{display:flex;flex-direction:column;padding:25px 22px;border:1px solid #2c405a;border-radius:16px;background:#112238;min-height:212px;transition:.18s}.module-head{display:flex;align-items:center;justify-content:space-between;gap:9px}.module-index{font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--green)}.module-card h3{font-size:20px;letter-spacing:-.028em;margin:27px 0 5px}.module-card p{margin:0 0 22px;color:var(--muted);font-size:12px}.module-go{border-top:1px solid #ffffff15;padding-top:12px;margin-top:auto;font-size:12px;color:var(--green);display:flex;justify-content:space-between;font-weight:750}.module-status{border:1px solid #60738652;border-radius:30px;font-size:10px;white-space:nowrap;padding:5px 8px;color:#a9bbcf;display:inline-flex;align-items:center;gap:6px}.module-status i{width:6px;height:6px;display:inline-block;border-radius:100%;background:currentColor}.module-status.is-open{color:var(--green);border-color:#66bfa04d;background:#185b5133}.module-status.needs-pass{color:#cbd6ed}.module-status.is-closed{color:#a9aab3;background:#393e4933}.auth-panel{margin:0 auto;max-width:560px;background:linear-gradient(170deg,#172a42,#102136);border-radius:22px;border:1px solid #324962;padding:41px 44px 37px;text-align:center;box-shadow:var(--shadow)}.lock-art{width:72px;height:72px;background:#1f514d;border:1px solid #387a72;border-radius:20px;display:grid;place-items:center;margin:0 auto 20px;color:var(--green);font-size:44px}.auth-panel h2{font-size:28px;letter-spacing:-.04em;margin:11px 0}.auth-panel p{color:var(--muted);margin:0 auto 25px;max-width:400px;font-size:14px}.auth-form{display:flex;flex-direction:column;gap:10px;text-align:left}.auth-form label,.new-pass label{font-size:12px;color:#c8d9eb;font-weight:700;margin-top:7px}.auth-form input,.new-pass input{border-radius:10px;background:#091829;color:#fff;border:1px solid #3d5570;padding:14px 15px;width:100%;outline:0}.auth-form input:focus,.new-pass input:focus{border-color:var(--green)}.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 17px;gap:8px;font-weight:760;border-radius:11px;border:1px solid transparent;font-size:13px;line-height:1.2;text-align:center}.button.primary{background:var(--green);color:#052621}.button.primary:hover{background:#b1fce9}.button.ghost{color:#e2edf9;background:#17283b;border-color:#3a526c}.button.ghost:hover{background:#203951}.button.warn{background:#392622;color:#ffb5a2;border-color:#7d4d42}.button.small{padding:10px 12px;font-size:12px}.auth-form .button{margin-top:10px}.auth-panel>.button{margin:5px auto}.auth-note,.helptext{border-top:1px solid #ffffff16;margin-top:23px!important;padding-top:18px;color:#849ab2!important;font-size:12px!important}.field-error{border:1px solid #e7a09c6b;border-radius:10px;background:#692d352d;color:#ffd1c9;padding:12px;margin:15px auto;max-width:600px;font-size:13px}.notice{border:1px solid #3e8072;padding:11px 15px;color:var(--green);border-radius:9px;margin-top:16px;background:#1a564130}.unlocked-banner{display:flex;gap:16px;align-items:center;padding:18px 22px;background:#17463e87;border:1px solid #45a48c;border-radius:14px}.unlocked-banner .check{font-size:20px;color:#083327;font-weight:900;background:var(--green);border-radius:100%;width:35px;height:35px;display:grid;place-items:center}.unlocked-banner strong{color:#bcf4e5}.unlocked-banner p{margin:4px 0 0;font-size:12px;color:#a9cdc5}.resource-actions{display:flex;flex-wrap:wrap;gap:11px;margin:20px 0}.preview-section{margin-top:30px}.preview-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.preview-heading h2{font-size:22px}.preview-heading span{color:var(--muted);font-size:12px}.preview-section iframe{display:block;width:100%;min-height:760px;background:white;border:1px solid #344a62;border-radius:12px}.admin-panel{margin-bottom:45px}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:22px 0}.admin-section-title{color:#dcebf7;font-size:18px;margin:28px 0 16px}.admin-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-module{padding:19px;border-radius:15px;border:1px solid #2c425b;background:#112239}.admin-module-heading{display:flex;justify-content:space-between;align-items:start;gap:14px}.admin-module strong{font-size:15px}.admin-module p{margin:3px 0 12px;color:var(--muted);font-size:12px}.admin-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.new-pass{font-size:12px;color:#aac1d7;margin-top:18px;border-top:1px solid #ffffff18;padding-top:13px}.new-pass summary{cursor:pointer}.new-pass form{margin-top:12px;display:flex;flex-direction:column;gap:7px}.new-pass .button{align-self:start}.secret-panel{border:2px solid #63dcc2;background:#0c302e;padding:21px;border-radius:15px;margin-bottom:29px}.secret-panel h2{font-size:22px;margin:0 0 8px;color:#b8f8e6}.secret-panel p{color:#cee3dd;font-size:13px}.secret-panel textarea{background:#061f20;border:1px solid #3c857a;border-radius:8px;color:#dffdef;padding:15px;width:100%;resize:vertical;font-family:ui-monospace,monospace;font-size:13px}.secret-foot{color:#b6d6cd;font-size:11px}.admin-module input{background:#091829}@media(max-width:850px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-modules{grid-template-columns:1fr}.exam-card{min-height:280px}.exam-body h3{font-size:26px}}@media(max-width:630px){.shell{padding:0 17px}.topbar{min-height:79px}.brand{font-size:11px}.brand-icon{font-size:16px;padding:9px}.topbar nav{gap:14px;font-size:11px}.topbar nav .admin-link{display:none}.hero{padding:49px 0 40px}.hero p,.page-hero p{font-size:14px}.exam-grid,.module-grid{grid-template-columns:1fr}.exam-card{min-height:262px}.exam-body{margin-top:24px}.module-card{min-height:175px}.module-card h3{margin-top:17px}.footer{flex-direction:column}.list-header{align-items:start;flex-direction:column}.auth-panel{padding:29px 19px}.resource-actions{flex-direction:column}.resource-actions .button{width:100%}.preview-section iframe{min-height:540px}.admin-top{flex-direction:column;align-items:stretch}}

/* Atualização 2026: seletor claro/escuro, acessibilidade e painel de segurança. */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;padding:9px 12px;border-radius:11px;border:1px solid var(--line);color:var(--strong);background:var(--card);font-size:12px;font-weight:700;white-space:nowrap}
.theme-toggle:hover{border-color:var(--green);color:var(--green)}
.theme-icon{font-size:19px;line-height:1}.topbar{flex-wrap:wrap}.topbar nav{margin-left:auto}
.security-settings,.audit-panel{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--card);margin-top:26px}
.security-settings h3,.audit-panel h3{margin:7px 0;font-size:20px}.security-settings p,.audit-panel p{font-size:13px;color:var(--muted);margin:4px 0 17px}
.security-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.security-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:var(--strong)}
.security-form input{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:var(--bg);color:var(--strong)}.security-form .button{grid-column:1/-1;justify-self:start}
.audit-list{display:flex;flex-direction:column;gap:0}.audit-row{display:grid;grid-template-columns:150px 1fr 130px;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line);font-size:12px}.audit-row time,.audit-row span{color:var(--muted)}
:root[data-theme="light"]{color-scheme:light;--bg:#f4f7fb;--bg2:#eaf1f6;--card:#ffffff;--muted:#506579;--line:#cddbe7;--strong:#13283b;--green:#007b68;--green2:#008875;--orange:#996027;--shadow:0 16px 50px #203b5515}
[data-theme="light"] body{background:radial-gradient(ellipse at 70% -15%,#d4f3eb 0%,transparent 42%),var(--bg);color:var(--strong)}
[data-theme="light"] .topbar,[data-theme="light"] .footer,[data-theme="light"] .page-hero{border-color:#cddbe7}
[data-theme="light"] .topbar nav{color:#375369}[data-theme="light"] .admin-link{color:#61788e!important}
[data-theme="light"] .brand-icon{background:#006f60;color:#fff}[data-theme="light"] .brand small{color:#007b68}
[data-theme="light"] .hero p,[data-theme="light"] .page-hero p,[data-theme="light"] .exam-body p,[data-theme="light"] .module-card p{color:#435c70}
[data-theme="light"] .hero-chips span{border-color:#c1d6e3;color:#3a5368;background:#fff}
[data-theme="light"] .exam-card{background:linear-gradient(145deg,#fff,#edf6f6);border-color:#cbdce5;box-shadow:var(--shadow)}
[data-theme="light"] .exam-card:before{background:#6acbb923}
[data-theme="light"] .exam-no{color:#007f69}[data-theme="light"] .exam-icon{background:#e3f7f1;border-color:#b0dacd}
[data-theme="light"] .exam-footer,[data-theme="light"] .module-go,[data-theme="light"] .new-pass{border-color:#d9e5ed}[data-theme="light"] .exam-footer{color:#577186}
[data-theme="light"] .subtle-help{background:#fff;border-color:#d4e1ea}
[data-theme="light"] .footer{color:#60788e}[data-theme="light"] .back{color:#35536b}
[data-theme="light"] .module-card,[data-theme="light"] .admin-module{background:#fff;border-color:#d0dfe8}
[data-theme="light"] .module-status{border-color:#b9ccda;color:#466078}[data-theme="light"] .module-status.is-open{background:#d6f4e9;color:#006e5b;border-color:#9bcfbb}[data-theme="light"] .module-status.needs-pass{color:#815015;background:#fff5e3}[data-theme="light"] .module-status.is-closed{background:#eaf0f4;color:#647785}
[data-theme="light"] .auth-panel{background:linear-gradient(170deg,#fff,#edf5f8);border-color:#cbdce7}[data-theme="light"] .lock-art{background:#def5ec;border-color:#afd9c9}[data-theme="light"] .auth-form label,[data-theme="light"] .new-pass label{color:#28485c}
[data-theme="light"] .auth-form input,[data-theme="light"] .new-pass input,[data-theme="light"] .admin-module input{background:#fff;color:#1b3041;border-color:#b5c9d8}
[data-theme="light"] .button.primary{color:#fff;background:#007b68}[data-theme="light"] .button.primary:hover{background:#005e51}
[data-theme="light"] .button.ghost{color:#244759;background:#f3f8fa;border-color:#aebfc9}[data-theme="light"] .button.ghost:hover{background:#e0eff0}
[data-theme="light"] .button.warn{background:#fff1ec;color:#9b4526;border-color:#e5ad97}
[data-theme="light"] .auth-note,[data-theme="light"] .helptext{border-color:#dbe5eb;color:#536b7e!important}
[data-theme="light"] .field-error{background:#fff1f0;color:#a32627;border-color:#efb0b0}
[data-theme="light"] .notice{background:#e0f7ec;color:#006d57;border-color:#90cfb5}
[data-theme="light"] .unlocked-banner{background:#e0f7ed;border-color:#84c8b0}[data-theme="light"] .unlocked-banner strong{color:#115340}[data-theme="light"] .unlocked-banner p{color:#426b5c}
[data-theme="light"] .preview-section iframe{border-color:#cbdce7}
[data-theme="light"] .admin-section-title{color:#1e394c}[data-theme="light"] .admin-top p{color:#536b7c}
[data-theme="light"] .secret-panel{background:#e5f8f2;border-color:#4e9d87}[data-theme="light"] .secret-panel h2{color:#006e58}[data-theme="light"] .secret-panel p,[data-theme="light"] .secret-foot{color:#355c50}
[data-theme="light"] .secret-panel textarea{background:#fff;color:#123a2d;border-color:#9bcfbc}
[data-theme="light"] .sep{color:#8ca6b9}
[data-theme="light"] .pulse{box-shadow:0 0 0 5px #007b681b}
@media(max-width:800px){.security-form{grid-template-columns:1fr}.audit-row{grid-template-columns:1fr 1fr}.audit-row span{grid-column:1/-1}}
@media(max-width:630px){.topbar{padding:12px 0;row-gap:12px}.topbar nav{order:3;width:100%;justify-content:space-between;margin:0}.topbar nav .admin-link{display:inline!important}.theme-toggle{margin-left:auto}.audit-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* Leitor dos enunciados: preserva as páginas como renderizadas do PDF. */
.preview-cover-link{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:600px;margin:15px auto 32px;color:var(--green);font-weight:700;text-align:center}
.preview-cover{display:block;width:min(100%,440px);height:auto;box-shadow:0 17px 46px #0004;border:1px solid var(--line);border-radius:5px;background:#fff}
.reader-title{padding:15px 0 22px}.reader-title h1{font-size:clamp(23px,3.4vw,36px);line-height:1.2;letter-spacing:-.035em;margin:12px 0 6px}.reader-title h1 span{color:var(--green)}
.reader-title p{font-size:13px;color:var(--muted);margin:0}
.reader-toolbar{position:sticky;top:0;z-index:10;background:var(--card);border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:10px 12px;flex-wrap:wrap;box-shadow:0 12px 35px #0002}
.reader-toolbar-group{display:flex;align-items:center;gap:8px;color:var(--strong);font-size:13px}
.reader-toolbar button,.reader-toolbar input{font:inherit;min-height:36px;min-width:38px;border:1px solid var(--line);border-radius:8px;background:var(--bg2);color:var(--strong);text-align:center;padding:3px 7px}
.reader-toolbar button{cursor:pointer;font-weight:750}.reader-toolbar button:disabled{opacity:.4;cursor:default}
.reader-toolbar input{width:58px;appearance:textfield;-moz-appearance:textfield}.reader-toolbar input::-webkit-outer-spin-button,.reader-toolbar input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.reader-zoom-label{display:inline-block;min-width:43px;text-align:center;font-variant-numeric:tabular-nums}
.reader-pdf-link{color:var(--green);font-size:13px;font-weight:700;padding:8px}
.reader-pages{--reader-zoom:1;display:flex;flex-direction:column;align-items:center;gap:26px;padding:25px 0 40px;overflow-x:auto}
.reader-sheet{width:var(--reader-width, min(100%, 880px));max-width:none;min-width:0;flex:none;margin:0;scroll-margin-top:104px}
.reader-sheet img{display:block;width:100%;height:auto;aspect-ratio:595 / 842;background:#fff;border-radius:3px;box-shadow:0 12px 46px #0004;object-fit:contain}
.reader-sheet figcaption{font-size:11px;color:var(--muted);text-align:center;padding-top:9px}
@media(max-width:700px){.reader-toolbar{justify-content:center}.reader-toolbar-group{gap:4px}.reader-toolbar button{min-width:32px}.reader-title{padding-bottom:15px}.reader-sheet{scroll-margin-top:155px}.reader-pages{padding-top:15px;gap:18px}}
/* Mensagem de diagnóstico quando a imagem da página não puder ser carregada. */
.reader-error{min-height:160px;border:1px solid #d8a1a1;background:#fff7f7;border-radius:8px;padding:15px}
.reader-error img{display:none}
.reader-error-message{padding:24px;text-align:center;color:#8e2525;font-size:14px;line-height:1.7}
