:root{--navy:#102a43;--navy2:#091f34;--teal:#16a6a1;--teal2:#0d8f8a;--amber:#f4a340;--off:#f7fafc;--white:#fff;--ink:#19364f;--muted:#667d8f;--line:#dfe8ee;--danger:#c13f4b;--success:#198b67;--shadow:0 20px 55px rgba(16,42,67,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--off);color:var(--ink);font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%}button,input,select,textarea{font:inherit}.container{width:min(1160px,calc(100% - 36px));margin:auto}.topbar{height:74px;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(16,42,67,.08);display:flex;align-items:center;position:sticky;top:0;z-index:30}.topbar .container{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:23px;color:var(--teal);letter-spacing:-1px}.brand b{color:var(--navy)}.brand img{width:39px;height:39px;object-fit:cover;border-radius:10px}.nav{display:flex;align-items:center;gap:28px;font-weight:800;font-size:13px;color:#50697c}.nav a:hover{color:var(--teal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;padding:13px 19px;background:var(--teal);color:#fff;font-weight:900;font-size:13px;cursor:pointer;transition:.2s;box-shadow:0 10px 25px rgba(22,166,161,.18)}.btn:hover{background:var(--teal2);transform:translateY(-1px)}.btn-sm{padding:9px 14px;font-size:11px}.btn-navy{background:var(--navy)}.btn-navy:hover{background:#1c425f}.btn-amber{background:var(--amber);color:var(--navy)}.btn-outline{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}.btn-danger{background:var(--danger)}.btn-block{width:100%}.badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#e9f7f6;color:var(--teal2);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.8px}.badge.amber{background:#fff1dd;color:#a26312}.badge.navy{background:#e7eef3;color:var(--navy)}
.marketing-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#fcfeff,#edf9f8);padding:82px 0}.marketing-hero:after{content:"";position:absolute;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(22,166,161,.2),transparent 68%);right:-100px;top:-170px}.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:70px}.eyebrow{color:var(--teal2);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:2px}.marketing-hero h1{font-size:clamp(47px,5.4vw,76px);line-height:.99;letter-spacing:-4px;color:var(--navy);margin:18px 0 24px}.marketing-hero h1 span{color:var(--teal);position:relative}.marketing-hero h1 span:after{content:"";position:absolute;height:7px;left:0;right:0;bottom:-4px;border-radius:9px;background:var(--amber)}.lead{font-size:18px;line-height:1.7;color:#5e7587;max-width:620px}.hero-actions{display:flex;gap:13px;margin-top:28px}.hero-panel{background:var(--navy);border-radius:25px;padding:25px;box-shadow:0 35px 80px rgba(16,42,67,.25);transform:rotate(1deg)}.hero-panel-top{display:flex;align-items:center;justify-content:space-between;color:#fff;margin-bottom:20px}.hero-panel-top img{width:45px;height:45px;object-fit:cover;border-radius:12px}.hero-panel-top>div{display:flex;align-items:center;gap:11px}.hero-panel-top small{color:#8fd8d4}.hero-tools{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.hero-tools article{background:#fff;border-radius:13px;padding:16px;min-height:105px}.tool-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#e8f7f6;color:var(--teal2);font-weight:900}.tool-icon.amber{background:#fff0da;color:#b46c0e}.hero-tools b{display:block;color:var(--navy);font-size:12px;margin:10px 0 3px}.hero-tools small{color:#8498a6;font-size:9px}.strip{background:#fff;border-block:1px solid var(--line);padding:21px 0}.strip .container{display:flex;justify-content:center;gap:40px;align-items:center;font-size:11px;font-weight:900;color:#50697b}.strip i{width:5px;height:5px;border-radius:50%;background:var(--amber)}.marketing-section{padding:86px 0}.section-head{text-align:center;max-width:760px;margin:0 auto 42px}.section-head h2{font-size:clamp(34px,4vw,52px);letter-spacing:-2px;color:var(--navy);margin:10px 0}.section-head p{color:var(--muted);line-height:1.7}.feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.feature-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:22px;min-height:220px;box-shadow:0 12px 35px rgba(16,42,67,.04)}.feature-card h3{font-size:16px;color:var(--navy);margin:18px 0 10px}.feature-card p{font-size:12px;line-height:1.65;color:var(--muted)}.school-band{background:var(--navy);color:#fff;padding:78px 0}.school-band .container{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.school-band h2{font-size:43px;letter-spacing:-2px;margin:10px 0 18px}.school-band p{color:#aec2d0;line-height:1.7}.school-band ul{list-style:none;padding:0;display:grid;gap:12px}.school-band li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(22,166,161,.25);color:#7bddda;margin-right:10px;font-weight:900}.school-mock{background:#fff;color:var(--navy);padding:25px;border-radius:19px;box-shadow:var(--shadow)}.mock-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px}.mock-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.mock-stats div{background:#f2f7f9;border-radius:10px;padding:15px}.mock-stats strong{display:block;font-size:25px}.mock-stats span{font-size:9px;color:var(--muted)}.pricing{background:#fff}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.price-card{border:1px solid var(--line);border-radius:20px;padding:28px;display:flex;flex-direction:column;position:relative}.price-card.featured{border:2px solid var(--teal);box-shadow:0 22px 55px rgba(22,166,161,.12)}.price-card h3{font-size:21px;color:var(--navy);margin:12px 0}.price{font-size:36px;font-weight:900;color:var(--navy);letter-spacing:-2px}.price small{font-size:11px;color:var(--muted);letter-spacing:0}.price-card ul{list-style:none;padding:0;display:grid;gap:12px;flex:1}.price-card li{font-size:12px;color:#587083}.price-card li:before{content:"✓";color:var(--teal);font-weight:900;margin-right:8px}.price-card p{font-size:11px;color:var(--muted)}.marketing-footer{background:var(--navy2);color:#a8bdcc;padding:45px 0 24px}.marketing-footer .container{display:flex;justify-content:space-between;align-items:center}.marketing-footer small{font-size:10px}
.auth-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.auth-side{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--navy),#164d63);padding:54px;display:flex;flex-direction:column;justify-content:space-between;color:#fff}.auth-side:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-180px;bottom:-170px}.auth-side .brand b{color:#fff}.auth-side h1{font-size:48px;line-height:1.05;letter-spacing:-2px;max-width:520px}.auth-side p{color:#b6ced9;line-height:1.7;max-width:520px}.auth-form-wrap{display:grid;place-items:center;padding:45px}.auth-card{width:min(100%,460px)}.auth-card h2{font-size:31px;color:var(--navy);margin:0 0 8px}.auth-card>p{color:var(--muted);font-size:13px;margin-bottom:28px}.form-grid{display:grid;gap:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:7px}.field label{font-size:11px;font-weight:900;color:var(--navy)}.field input,.field select,.field textarea{width:100%;border:1px solid #d7e3ea;border-radius:10px;padding:12px 13px;background:#fff;color:var(--ink);outline:none}.field textarea{min-height:95px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(22,166,161,.1)}.form-note{font-size:10px;color:#8094a4;line-height:1.55}.auth-switch{text-align:center;margin-top:20px;font-size:12px;color:var(--muted)}.auth-switch a{color:var(--teal2);font-weight:900}.account-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.account-option{position:relative}.account-option input{position:absolute;opacity:0}.account-option label{display:block;border:1px solid var(--line);border-radius:12px;padding:13px;cursor:pointer;font-size:11px}.account-option label b{display:block;color:var(--navy);font-size:13px;margin-bottom:3px}.account-option input:checked+label{border-color:var(--teal);background:#effaf9;box-shadow:0 0 0 2px rgba(22,166,161,.08)}
.app-shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:var(--navy2);color:#9cb5c7;padding:22px 14px;display:flex;flex-direction:column;z-index:25}.sidebar .brand{padding:0 10px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar .brand b{color:#fff}.workspace{margin:18px 7px 12px;border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:10px;display:flex;gap:9px;align-items:center}.workspace i{width:31px;height:31px;border-radius:8px;display:grid;place-items:center;background:var(--teal);color:#fff;font-style:normal;font-weight:900}.workspace div{display:flex;flex-direction:column;min-width:0}.workspace b{font-size:10px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace small{font-size:8px;color:#7898ad}.side-label{font-size:8px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;color:#57788f;margin:17px 12px 8px}.side-nav{display:grid;gap:4px}.side-nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:9px;font-size:11px;font-weight:800}.side-nav a:hover,.side-nav a.active{background:rgba(22,166,161,.18);color:#fff}.side-nav i{width:22px;text-align:center;font-style:normal;color:#75d3ce}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding:15px 10px 0}.sidebar-foot a{font-size:10px;color:#a7bece}.app-main{grid-column:2;min-width:0}.app-top{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:20}.app-top h1{font-size:17px;color:var(--navy);margin:0}.user-chip{display:flex;gap:10px;align-items:center}.user-avatar{width:35px;height:35px;border-radius:10px;background:#e4f6f5;color:var(--teal2);display:grid;place-items:center;font-size:11px;font-weight:900}.user-chip div{display:flex;flex-direction:column}.user-chip b{font-size:10px;color:var(--navy)}.user-chip small{font-size:8px;color:var(--muted)}.app-content{padding:28px 30px 55px;max-width:1500px}.welcome-banner{position:relative;overflow:hidden;background:linear-gradient(110deg,var(--navy),#174e63);color:#fff;border-radius:18px;padding:27px 30px;display:flex;justify-content:space-between;align-items:center}.welcome-banner:after{content:"";position:absolute;width:190px;height:190px;border:24px solid rgba(22,166,161,.17);border-radius:50%;right:-25px;top:-70px}.welcome-banner h2{font-size:25px;margin:4px 0}.welcome-banner p{font-size:11px;color:#b6cad6;margin:0}.welcome-banner .badge{position:relative;z-index:2}.quick-actions{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:18px}.quick-action{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px;transition:.2s}.quick-action:hover{transform:translateY(-2px);box-shadow:0 14px 35px rgba(16,42,67,.08)}.quick-action i{width:35px;height:35px;border-radius:9px;background:#eaf7f6;color:var(--teal2);display:grid;place-items:center;font-style:normal;font-weight:900}.quick-action b{display:block;font-size:11px;color:var(--navy);margin-top:10px}.quick-action small{font-size:8px;color:#8499a8}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:18px}.stat-card,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px}.stat-card small{font-size:9px;color:var(--muted)}.stat-card strong{display:block;font-size:28px;color:var(--navy);margin-top:5px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:18px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.panel-head h2{font-size:15px;color:var(--navy);margin:0}.panel-head p{font-size:10px;color:var(--muted);margin:4px 0 0}.empty{text-align:center;padding:45px 20px;color:var(--muted)}.empty i{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:#edf7f6;color:var(--teal2);font-style:normal;font-size:22px;margin:0 auto 13px}.empty h3{font-size:14px;color:var(--navy);margin:6px}.empty p{font-size:10px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:8px;text-transform:uppercase;letter-spacing:1px;color:#8ca0ae;padding:10px;border-bottom:1px solid var(--line)}.table td{padding:12px 10px;border-bottom:1px solid #edf2f5;font-size:10px;color:#526b7d}.table td b{color:var(--navy)}.actions{display:flex;gap:6px;flex-wrap:wrap}.flash{border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:11px;font-weight:700}.flash.success{background:#e7f7f0;color:#176f53}.flash.warning{background:#fff2dd;color:#985c11}.flash.error{background:#fdebed;color:#a92e3b}.code-box{display:inline-flex;align-items:center;gap:8px;background:var(--navy);color:#fff;border-radius:9px;padding:8px 12px;font-size:13px;font-weight:900;letter-spacing:2px}.limit-card{background:#fff9ef;border:1px solid #f4d8ae;border-radius:11px;padding:13px;color:#87540e;font-size:10px;margin-bottom:15px}.word-cloud{min-height:290px;border-radius:16px;background:linear-gradient(145deg,var(--navy),#164c62);padding:28px;display:flex;align-items:center;justify-content:center;align-content:center;flex-wrap:wrap;gap:12px}.word-cloud span{font-weight:900;color:#fff;line-height:1}.word-cloud span:nth-child(3n+1){color:#76d8d3}.word-cloud span:nth-child(4n){color:#ffc266}.join-page{min-height:100vh;background:linear-gradient(140deg,var(--navy),#146d73);display:grid;place-items:center;padding:20px}.join-card{width:min(100%,560px);background:#fff;border-radius:22px;padding:32px;box-shadow:0 30px 80px rgba(0,0,0,.24)}.join-card .brand{justify-content:center;margin-bottom:25px}.join-card h1{text-align:center;font-size:25px;color:var(--navy)}.join-card>p{text-align:center;color:var(--muted);font-size:12px}.answer-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.answer-option input{position:absolute;opacity:0}.answer-option label{display:block;padding:15px;border:1px solid var(--line);border-radius:11px;cursor:pointer;font-size:12px;font-weight:800}.answer-option input:checked+label{background:#e8f7f6;border-color:var(--teal);color:var(--teal2)}.locked{background:linear-gradient(135deg,#fff8eb,#fff);border:1px solid #f3d9b4}.locked h2{color:#8d570f}
@media(max-width:1100px){.feature-grid{grid-template-columns:repeat(3,1fr)}.quick-actions{grid-template-columns:repeat(3,1fr)}.stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){.nav>a:not(.btn){display:none}.hero-layout,.school-band .container,.auth-page{grid-template-columns:1fr}.auth-side{display:none}.hero-panel{margin-top:20px}.feature-grid,.pricing-grid{grid-template-columns:1fr}.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.app-main{grid-column:auto}.app-content{padding:20px 16px}.quick-actions{grid-template-columns:repeat(2,1fr)}.grid-2,.grid-3{grid-template-columns:1fr}.app-top{padding:0 16px}.menu-toggle{display:block!important}}@media(max-width:520px){.marketing-hero{padding:55px 0}.marketing-hero h1{letter-spacing:-2.5px}.hero-actions{flex-direction:column}.hero-tools{grid-template-columns:1fr}.strip .container{gap:12px;font-size:9px}.strip i{display:none}.feature-grid{grid-template-columns:1fr}.mock-stats{grid-template-columns:1fr}.form-row,.account-options,.answer-options{grid-template-columns:1fr}.auth-form-wrap{padding:25px 18px}.stat-grid,.quick-actions{grid-template-columns:1fr}.welcome-banner{padding:22px}.welcome-banner .badge{display:none}.marketing-footer .container{flex-direction:column;gap:13px}.app-top h1{font-size:14px}}
.menu-toggle{display:none;border:0;background:#edf7f6;color:var(--teal2);border-radius:8px;width:36px;height:36px;font-weight:900}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:11px;padding:12px 17px;font-size:11px;font-weight:900;cursor:pointer}.button-primary{background:var(--teal);color:#fff}.button-primary:hover{background:var(--teal2)}.button-secondary{background:var(--navy);color:#fff}.button-ghost{background:#edf3f6;color:var(--navy)}.button-full{width:100%}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.page-heading h1{margin:5px 0;font-size:29px;color:var(--navy);letter-spacing:-1px}.page-heading p{margin:0;color:var(--muted);font-size:11px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;background:#e9f7f6;color:var(--teal2);font-size:9px;font-weight:900}.status-pill.muted{background:#edf3f6;color:#587185}.content-grid{display:grid;gap:17px}.content-grid-sidebar{grid-template-columns:minmax(0,1fr) 330px}.card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:21px}.card h2{font-size:17px;color:var(--navy);margin:7px 0 14px}.section-heading.compact{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-heading.compact h2{margin:4px 0}.sticky-card{position:sticky;top:90px;align-self:start}.sidebar-stack{display:grid;gap:17px;align-self:start}.stack-form{display:grid;gap:12px}.stack-form label{display:grid;gap:6px;font-size:10px;font-weight:900;color:var(--navy)}.stack-form input,.stack-form select,.stack-form textarea{width:100%;border:1px solid #d7e3ea;border-radius:9px;padding:11px 12px;background:#fff;color:var(--ink);outline:none}.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(22,166,161,.1)}.stack-form small{font-weight:400;color:var(--muted);line-height:1.4}.empty-state{text-align:center;padding:60px 25px}.empty-state.small{padding:42px 20px}.empty-state h2,.empty-state h3{color:var(--navy)}.empty-state p{color:var(--muted);font-size:11px;line-height:1.6;max-width:570px;margin:8px auto 18px}.table-note{display:block;color:var(--muted);font-size:9px;margin-top:4px}.booking-list{display:grid;gap:10px}.booking-item{display:flex;align-items:center;gap:14px;border:1px solid #e5edf2;border-radius:12px;padding:13px}.booking-item h3{font-size:12px;color:var(--navy);margin:0 0 4px}.booking-item p{font-size:10px;color:#587185;margin:0}.booking-item small{font-size:8px;color:#8a9ca9}.calendar-chip{width:49px;height:54px;border-radius:10px;background:#e9f7f6;color:var(--teal2);display:grid;place-items:center;padding:6px;flex:0 0 auto}.calendar-chip strong{font-size:19px;line-height:1}.calendar-chip span{font-size:7px;font-weight:900}.notice{border-radius:11px;padding:13px;margin:12px 0;font-size:10px}.notice p{margin:5px 0 0}.notice.warning{background:#fff2dd;color:#8f5811}.app-pricing{margin-top:18px}.price-card h2{font-size:20px;color:var(--navy);margin:10px 0}.price-line{display:flex;align-items:baseline;gap:5px;color:var(--navy)}.price-line strong{font-size:31px;letter-spacing:-2px}.price-line span,.annual-note,.plan-context{font-size:9px;color:var(--muted)}.check-list{list-style:none;padding:0;display:grid;gap:10px;flex:1}.check-list li{font-size:10px;color:#587185}.check-list li:before{content:"✓";color:var(--teal);font-weight:900;margin-right:7px}.price-badge{position:absolute;right:18px;top:18px;background:var(--teal);color:#fff;border-radius:999px;padding:6px 9px;font-size:8px;font-weight:900}.button-stack{display:grid;gap:8px}.payment-info-card{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:17px;background:linear-gradient(115deg,#fff,#eff9f8)}.payment-info-card p{font-size:10px;color:var(--muted);max-width:730px;line-height:1.55}.security-seal{white-space:nowrap;background:var(--navy);color:#fff;border-radius:11px;padding:13px 16px;font-size:10px;font-weight:900}.auth-shell{min-height:calc(100vh - 74px);display:grid;place-items:center;padding:45px 18px;background:linear-gradient(145deg,#f8fcfd,#eaf7f6)}.checkout-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:29px;box-shadow:var(--shadow)}.checkout-card h1{font-size:25px;color:var(--navy);margin:8px 0 18px}.back-link{display:inline-block;font-size:10px;color:var(--muted);margin-bottom:20px}.checkout-total{display:flex;justify-content:space-between;align-items:center;background:var(--navy);color:#fff;border-radius:12px;padding:15px;margin-bottom:15px}.checkout-total span{font-size:10px}.checkout-total strong{font-size:23px}.payment-option{display:flex!important;grid-template-columns:none!important;align-items:center;gap:11px;border:1px solid var(--line);border-radius:11px;padding:12px;cursor:pointer}.payment-option input{width:auto!important}.payment-option span{display:grid;gap:2px}.payment-option small{font-size:8px!important}.checkout-footnote{text-align:center;font-size:8px!important;line-height:1.5}.pricing-grid .button{margin-top:8px}
@media(max-width:900px){.content-grid-sidebar{grid-template-columns:1fr}.sticky-card{position:static}.payment-info-card{align-items:flex-start;flex-direction:column}.page-heading{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.app-pricing{grid-template-columns:1fr}.security-seal{white-space:normal}.card{padding:17px}}

/* ProfTempo 1.1 — experiências interativas e gestão escolar */
.form-row.three{grid-template-columns:repeat(3,1fr)}.icon-button{width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--danger);font-weight:900;cursor:pointer}.icon-button:disabled{opacity:.35;cursor:not-allowed}.table-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.table-actions form{margin:0}.status-pill.danger{background:#fdebed;color:var(--danger)}
.quiz-question-editor{border:1px solid var(--line);border-radius:15px;padding:18px;margin-bottom:14px;background:linear-gradient(145deg,#fff,#f8fbfc);display:grid;gap:13px}.question-editor-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.question-editor-head strong{color:var(--navy);font-size:13px}.question-editor-head small{display:block;color:var(--muted);font-size:9px;margin-top:3px;font-weight:400}.quiz-builder-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px}.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.activity-card{border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;grid-template-columns:1fr auto;gap:14px;background:linear-gradient(145deg,#fff,#f7fbfc)}.activity-card-main h3{color:var(--navy);margin:9px 0 5px;font-size:16px}.activity-card-main p{color:var(--muted);font-size:10px;line-height:1.5;margin:0}.share-code{display:flex;align-items:center;gap:9px;margin-top:14px}.share-code>span{font-size:9px;font-weight:900;text-transform:uppercase;color:var(--muted)}.share-qr{width:132px;height:132px;display:grid;place-items:center;background:#fff;padding:8px;border-radius:12px;border:1px solid var(--line)}.share-qr img,.share-qr canvas{width:116px!important;height:116px!important}.share-link-row{display:flex;grid-column:1/-1;gap:8px;min-width:0}.share-link-row input,.copy-value input{min-width:0;flex:1;border:1px solid var(--line);border-radius:9px;padding:9px 10px;color:#587185;background:#fff;font-size:9px}.leaderboard{display:grid;gap:8px}.leader-row{display:grid;grid-template-columns:34px 1fr auto auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;color:var(--muted);font-size:10px}.leader-row strong,.leader-row>b{color:var(--navy);font-size:12px}.leader-row.podium{background:linear-gradient(90deg,#fff8e9,#fff);border-color:#f2d49f}.rank-number{width:28px;height:28px;border-radius:9px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}
.player-body{background:#102a43}.gamified-card{width:min(100%,720px);position:relative;overflow:hidden}.player-kicker{display:block;text-align:center;color:var(--teal2);font-size:10px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase}.join-code-input{text-align:center;font-size:32px!important;font-weight:900;letter-spacing:10px;color:var(--navy)!important}.player-start{font-size:15px;padding:16px}.quiz-progress-head{display:flex;justify-content:space-between;color:var(--navy);font-size:11px;font-weight:900}.quiz-progress{height:8px;border-radius:999px;background:#e9f0f3;margin:8px 0 18px;overflow:hidden}.quiz-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),#69d8ce);border-radius:inherit;transition:width .5s}.timer-pill{display:table;margin:0 auto;background:#fff2dd;color:#9a5e10;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:900}.timer-pill.urgent{background:#fdebed;color:var(--danger);animation:timerBeat .65s infinite}.player-question{font-size:clamp(22px,4vw,34px)!important;line-height:1.2;margin:18px 0 24px!important}.game-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.game-option{border:0;border-radius:15px;min-height:92px;padding:15px;color:#fff;display:flex;align-items:center;gap:13px;text-align:left;cursor:pointer;box-shadow:0 10px 25px #102a4322;transition:.18s}.game-option:hover{transform:translateY(-3px) scale(1.01)}.game-option:disabled{opacity:.75}.game-option b{width:38px;height:38px;display:grid;place-items:center;background:#ffffff2e;border-radius:10px;font-size:18px}.game-option span{font-size:13px;font-weight:900}.option-a{background:#df5068}.option-b{background:#247899}.option-c{background:#e9a126}.option-d{background:#6247aa}.feedback-burst{text-align:center;padding:25px 0;animation:feedbackPop .45s ease both}.feedback-burst>span{display:grid;place-items:center;width:90px;height:90px;border-radius:50%;margin:0 auto 10px;color:#fff;font-size:50px;font-weight:900}.feedback-burst.correct>span{background:var(--teal);box-shadow:0 0 0 14px #16a6a11f}.feedback-burst.wrong>span{background:var(--danger);box-shadow:0 0 0 14px #c13f4b1f}.feedback-burst h1{margin:16px 0 5px}.feedback-burst p{color:var(--muted)}.score-chip{display:table;margin:auto;background:var(--navy);color:#fff;border-radius:999px;padding:9px 15px;font-size:11px}.next-message{text-align:center;color:var(--muted);font-size:10px}.final-score{font-size:72px;color:var(--teal2);font-weight:900;text-align:center;letter-spacing:-5px}.final-score span{display:block;font-size:11px;letter-spacing:1px;color:var(--muted);text-transform:uppercase}.confetti{position:absolute;inset:0;pointer-events:none}.confetti i{position:absolute;left:var(--x);top:-20px;width:8px;height:14px;background:var(--amber);animation:confettiFall 2.4s var(--delay) ease-in infinite;transform:rotate(var(--spin))}.confetti i:nth-child(3n){background:var(--teal)}.confetti i:nth-child(4n){background:#df5068}@keyframes feedbackPop{from{opacity:0;transform:scale(.75)}to{opacity:1;transform:scale(1)}}@keyframes confettiFall{to{top:105%;transform:rotate(calc(var(--spin) + 360deg))}}@keyframes timerBeat{50%{transform:scale(1.08)}}
.cloud-presenter-panel{position:relative}.live-indicator{display:flex;align-items:center;gap:7px;color:var(--teal2);font-size:10px;font-weight:900}.live-indicator i{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 0 #16a6a166;animation:livePulse 1.5s infinite}@keyframes livePulse{70%{box-shadow:0 0 0 8px #16a6a100}}.live-cloud{position:relative;min-height:480px;border-radius:24px;overflow:hidden;background:radial-gradient(circle at 50% 45%,#fff 0,#f2faf9 55%,#e5f3f4 100%);display:grid;place-items:center;padding:55px}.cloud-silhouette{position:absolute;font-size:min(62vw,720px);line-height:.65;color:#dcefee;filter:drop-shadow(0 20px 30px #17384a14);user-select:none;transform:translateY(18px)}.cloud-words{position:relative;z-index:2;width:min(820px,90%);min-height:300px;display:flex;align-items:center;justify-content:center;align-content:center;gap:10px 15px;flex-wrap:wrap}.cloud-words span:not(.cloud-waiting){font-family:"Trebuchet MS","Arial Rounded MT Bold",sans-serif;font-weight:900;line-height:1;animation:wordArrive .45s calc(var(--word-index)*.025s) ease both;text-shadow:0 2px 0 #fff}.cloud-waiting{font-weight:900;color:#6f8d9b;font-size:18px}.cloud-toolbar{display:flex;justify-content:space-between;align-items:center;margin-top:13px;color:var(--muted);font-size:10px}.share-panel{margin-top:14px;border:1px solid var(--line);border-radius:15px;padding:15px;background:#f9fcfd;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:15px}.share-panel>div:first-child{display:grid;gap:7px}.share-panel>div:first-child>span{font-size:9px;color:var(--muted);font-weight:900;text-transform:uppercase}@keyframes wordArrive{from{opacity:0;transform:scale(.5) rotate(-5deg)}to{opacity:1}}
.agenda-card{margin-bottom:17px}.agenda-filter{display:flex;gap:8px}.agenda-filter select,.agenda-filter input{border:1px solid var(--line);border-radius:9px;padding:8px;background:#fff;color:var(--ink);font-size:10px}.weekly-grid-wrap{overflow:auto}.weekly-grid{width:100%;border-collapse:separate;border-spacing:4px;min-width:820px}.weekly-grid th{font-size:9px;color:var(--muted);font-weight:700;padding:8px}.weekly-grid thead th:not(:first-child){background:#f1f7f8;border-radius:9px}.weekly-grid thead span,.weekly-grid thead b{display:block}.weekly-grid thead b{color:var(--navy);margin-top:3px}.weekly-grid tbody th{text-align:right;width:88px}.weekly-grid tbody th b,.weekly-grid tbody th span{display:block}.weekly-grid tbody th b{color:var(--navy);font-size:10px}.weekly-grid tbody th span{font-size:8px}.weekly-grid td{height:65px;min-width:125px;border:1px dashed #dce7ec;border-radius:8px;padding:4px;vertical-align:top}.schedule-block{background:linear-gradient(135deg,var(--teal2),var(--teal));color:#fff;border-radius:7px;padding:7px;margin-bottom:3px;box-shadow:0 5px 12px #16a6a122}.schedule-block strong,.schedule-block span{display:block;font-size:8px}.schedule-block span{opacity:.8;margin-top:2px}.booking-info{flex:1;min-width:0}.period-picker{border:1px solid var(--line);border-radius:10px;padding:10px;display:grid;gap:6px}.period-picker legend{font-size:9px;font-weight:900;color:var(--navy);padding:0 5px}.period-picker label{display:flex!important;grid-template-columns:none!important;align-items:center;gap:7px!important;padding:6px;border-radius:7px;background:#f7fafb}.period-picker input{width:auto!important}.period-settings{margin-top:15px}details.card summary{cursor:pointer;color:var(--navy);font-size:11px}
.library-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:15px}.library-stats article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:16px}.library-stats span{display:block;color:var(--muted);font-size:9px}.library-stats strong{display:block;color:var(--navy);font-size:24px;margin-top:5px}.subnav{display:flex;gap:5px;margin:0 0 15px;border-bottom:1px solid var(--line)}.subnav a{padding:10px 15px;font-size:10px;font-weight:900;color:var(--muted);border-bottom:2px solid transparent}.subnav a.active{color:var(--teal2);border-color:var(--teal)}.catalog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.book-card{border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;grid-template-columns:45px 1fr;gap:13px}.book-spine{width:43px;height:58px;border-radius:4px 9px 9px 4px;background:linear-gradient(135deg,var(--navy),#27566d);color:#8ee0dc;display:grid;place-items:center;font-size:20px;box-shadow:inset 5px 0 #ffffff19}.book-card h3{font-size:13px;color:var(--navy);margin:5px 0}.book-card p,.book-card small{color:var(--muted);font-size:9px;line-height:1.5}.availability{display:flex;justify-content:space-between;gap:8px;margin-top:10px;font-size:9px}.availability b{color:var(--teal2)}.availability span{color:var(--muted)}.inline-form{display:flex;gap:6px;margin-top:10px}.inline-form input{min-width:0;width:100%;border:1px solid var(--line);border-radius:8px;padding:7px;font-size:9px}.result-list{display:grid;gap:10px}.result-card{border:1px solid var(--line);border-radius:12px;padding:13px}.result-summary{display:flex;justify-content:space-between;align-items:center}.result-summary>div{display:grid;gap:3px}.result-summary strong{color:var(--navy);font-size:12px}.result-summary span{color:var(--muted);font-size:9px}.score-bubble{width:48px;height:48px;border-radius:13px;background:#fff0e1;color:#a65f09;display:grid;place-items:center;font-size:13px}.score-bubble.pass{background:#e7f7f0;color:var(--success)}.result-breakdown{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:9px;border-top:1px solid var(--line)}.result-breakdown span{background:#f2f6f8;border-radius:8px;padding:6px 8px;color:var(--muted);font-size:8px}.result-breakdown b{display:block;color:var(--navy);margin-bottom:2px}.subject-ranges{border:1px solid var(--line);border-radius:14px;padding:16px;background:#f9fcfd}.subject-range-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;align-items:end;margin-top:12px}.subject-key{margin-top:18px;padding:12px;background:#f2f7f8;border-radius:10px;display:grid;gap:5px}.subject-key strong{color:var(--navy);font-size:10px}.subject-key span{color:var(--muted);font-size:9px}
.pix-intro{display:flex;gap:12px;align-items:center;padding:14px;background:#eff9f8;border-radius:12px;margin-bottom:15px}.pix-symbol{width:42px;height:42px;border-radius:12px;background:var(--teal);color:#fff;display:grid;place-items:center;font-size:20px}.pix-intro strong{color:var(--navy);font-size:12px}.pix-intro p{margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.payment-reference{text-align:center;border:1px dashed var(--teal);background:#effaf9;border-radius:12px;padding:13px;margin-bottom:14px}.payment-reference span,.payment-reference small,.payment-reference strong{display:block}.payment-reference span,.payment-reference small{font-size:9px;color:var(--muted)}.payment-reference strong{color:var(--navy);font-size:19px;letter-spacing:2px;margin:4px}.pix-steps{list-style:none;padding:0;display:grid;gap:11px}.pix-steps li{display:grid;grid-template-columns:32px 1fr;gap:11px;align-items:start}.pix-steps li>span{width:30px;height:30px;border-radius:9px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900}.pix-steps strong{display:block;color:var(--navy);font-size:11px;margin-bottom:5px}.pix-steps p{font-size:9px!important;margin:4px 0 8px!important}.copy-value{display:flex;gap:6px}
@media(max-width:1000px){.activity-grid,.catalog-grid{grid-template-columns:1fr}.share-panel{grid-template-columns:auto auto}.share-panel .share-link-row{grid-column:1/-1}.library-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.form-row.three,.game-options{grid-template-columns:1fr}.activity-card{grid-template-columns:1fr}.share-qr{margin:auto}.share-link-row{flex-direction:column}.live-cloud{min-height:400px;padding:25px}.cloud-silhouette{font-size:480px}.share-panel{grid-template-columns:1fr}.share-panel .share-qr{grid-row:auto}.cloud-toolbar,.agenda-filter{align-items:stretch;flex-direction:column}.subject-range-row{grid-template-columns:1fr 1fr}.subject-range-row .field:first-child{grid-column:1/-1}.library-stats{grid-template-columns:1fr 1fr}.leader-row{grid-template-columns:30px 1fr auto}.leader-row>span:nth-child(3){display:none}}

/* Privacidade, páginas legais e pagamentos — 1.17.0 */
.privacy-notice{position:fixed;z-index:1000;right:18px;bottom:18px;left:18px;display:flex;max-width:1120px;margin:auto;align-items:center;justify-content:space-between;gap:22px;padding:18px 20px;border:1px solid #b8d8d4;border-radius:16px;background:#fff;box-shadow:0 18px 55px rgba(16,42,67,.2);color:var(--navy)}
.privacy-notice strong{display:block;font-size:13px}.privacy-notice p{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.privacy-notice-actions{display:flex;flex:0 0 auto;align-items:center;gap:8px}.privacy-notice-actions form{margin:0}.privacy-notice .button{white-space:nowrap}
.privacy-check{display:grid;grid-template-columns:20px 1fr;gap:9px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fbfc;color:var(--muted);font-size:10px;line-height:1.5}.privacy-check input{margin-top:2px}.privacy-check a{color:var(--teal2);font-weight:800;text-decoration:underline}
.legal-page{min-height:70vh;padding:58px 0 80px;background:#f4f8f8}.legal-layout{display:grid;grid-template-columns:230px minmax(0,850px);gap:24px;justify-content:center}.legal-hero{grid-column:1/-1;max-width:850px;margin:0 auto 12px;text-align:center}.legal-hero h1{margin:8px 0 12px;color:var(--navy);font-size:clamp(30px,5vw,52px)}.legal-hero p{color:var(--muted);line-height:1.65}.legal-index{position:sticky;top:92px;align-self:start;display:grid;gap:4px;padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff}.legal-index strong{margin-bottom:7px;color:var(--navy)}.legal-index a{padding:8px;border-radius:7px;color:var(--muted);font-size:10px}.legal-index a:hover{background:#eaf7f6;color:var(--teal2)}.legal-content{padding:34px}.legal-content section{scroll-margin-top:90px}.legal-content section+section{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.legal-content h2{margin:0 0 10px;color:var(--navy);font-size:20px}.legal-content p,.legal-content li{color:#526b7d;font-size:12px;line-height:1.75}.legal-content li+li{margin-top:6px}.legal-content a{color:var(--teal2);font-weight:800}
.payment-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:18px}.payment-method-card{display:grid;gap:7px;padding:20px;border:1px solid var(--line);border-radius:13px;background:#fff;text-align:left;cursor:pointer;transition:.2s}.payment-method-card:hover{transform:translateY(-2px);border-color:var(--teal);box-shadow:0 12px 28px rgba(16,42,67,.1)}.payment-method-card strong{color:var(--navy);font-size:15px}.payment-method-card span{color:var(--muted);font-size:10px;line-height:1.5}.payment-method-card small{color:var(--teal2);font-weight:900}.mercado-payment-box{display:grid;gap:12px;margin:18px 0;text-align:center}.mercado-payment-box h2,.mercado-payment-box p{margin:0}.mercado-payment-box p{color:var(--muted);font-size:11px;line-height:1.6}.mercado-payment-box .pix-symbol{margin:auto}
@media(max-width:760px){.privacy-notice{align-items:stretch;flex-direction:column}.privacy-notice-actions{flex-wrap:wrap}.legal-layout{grid-template-columns:1fr}.legal-index{position:static}.legal-content{padding:22px}.payment-method-grid{grid-template-columns:1fr}}

/* Avaliações 1.2: banco ENEM, diagramação e leitura óptica */
.module-launcher{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.module-action{display:grid;grid-template-columns:38px 1fr;gap:11px;border:1px solid var(--line);border-radius:15px;padding:16px;background:#fff;box-shadow:0 9px 28px rgba(16,42,67,.05);transition:.2s}.module-action:hover{transform:translateY(-2px);border-color:var(--teal)}.module-action>i{width:38px;height:38px;border-radius:11px;background:#e8f7f6;color:var(--teal2);display:grid;place-items:center;font-style:normal;font-size:18px;font-weight:900}.module-action b{display:block;color:var(--navy);font-size:12px;margin:2px 0 5px}.module-action span{display:block;color:var(--muted);font-size:9px;line-height:1.5}.module-action>strong{grid-column:2;color:var(--teal2);font-size:9px}.module-action.primary{background:var(--navy);border-color:var(--navy)}.module-action.primary b{color:#fff}.module-action.primary span{color:#afc3d0}.module-action.primary>strong{color:#71d2ce}
.exam-workspace-grid{display:grid;grid-template-columns:minmax(390px,.8fr) minmax(0,1.2fr);gap:18px;align-items:start}.question-form-panel{position:sticky;top:88px}.enem-options{display:grid;gap:9px}.option-field label{display:flex;align-items:center;gap:7px}.option-field label i{width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-style:normal}.inline-check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:8px;font-size:11px;color:var(--ink);cursor:pointer}.inline-check input{width:auto!important}.question-bank-list{display:grid;gap:12px;max-height:1180px;overflow:auto;padding-right:4px}.bank-question{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px}.bank-question-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.bank-question-head>div{display:flex;gap:6px}.bank-question-head small{color:var(--muted);font-size:9px}.bank-question p{font-size:11px;line-height:1.65;color:#355266}.question-command{display:block;font-size:11px;line-height:1.5;color:var(--navy);margin:8px 0}.question-thumb{width:100%;max-height:210px;object-fit:contain;background:#f5f8fa;border-radius:10px;margin:12px 0}.question-meta{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.question-meta span{background:#f0f5f7;border-radius:999px;padding:5px 8px;font-size:8px;color:#607887}.difficulty{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:8px;font-style:normal;font-weight:900;white-space:nowrap}.difficulty-easy{background:#e8f7ef;color:#198b67}.difficulty-medium{background:#fff2dc;color:#a9670f}.difficulty-hard{background:#fde9eb;color:#b43a48}.filter-panel{margin-bottom:18px}.filter-bar{display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:10px;align-items:end}.layout-checks{align-content:center}.selection-mode{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}.selection-mode label{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:11px;padding:10px 12px;font-size:10px;font-weight:800;background:#f9fbfc}.selection-mode .mini-number{width:64px;padding:6px;border:1px solid var(--line);border-radius:7px}.builder-question-list{display:grid;gap:7px;max-height:600px;overflow:auto;padding:3px}.builder-question{display:grid;grid-template-columns:auto 50px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:10px 12px;cursor:pointer;background:#fff}.builder-question:hover,.builder-question.selected{border-color:var(--teal);background:#effaf9}.builder-question input{width:17px;height:17px;accent-color:var(--teal)}.builder-question .question-index{font-size:9px;color:var(--muted)}.builder-question b{display:block;color:var(--navy);font-size:10px}.builder-question small{display:block;color:var(--muted);font-size:9px;line-height:1.45;margin-top:3px}.sticky-submit{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:10px;background:rgba(255,255,255,.96);border-top:1px solid var(--line);padding:13px 0 2px;margin-top:10px}.sticky-submit span{font-size:10px;font-weight:900;color:var(--teal2)}.scan-tip{background:#eff9f8;border-radius:12px;padding:15px;margin-top:18px}.scan-tip b{font-size:12px;color:var(--navy)}.scan-tip ol{margin:8px 0 0;padding-left:19px;color:var(--muted);font-size:10px;line-height:1.8}
.omr-layout{display:grid;grid-template-columns:minmax(310px,.65fr) minmax(0,1.35fr);gap:18px;align-items:start;margin-bottom:18px}.omr-controls{position:sticky;top:88px}.omr-reader{min-width:0}.step-head{margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.step-number{float:left;width:28px;height:28px;border-radius:9px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900;margin-right:10px}.camera-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.camera-note,.scan-quality,.scan-current{border-radius:9px;background:#f1f6f8;color:var(--muted);font-size:9px;line-height:1.55;padding:9px 11px}.scan-quality:not(:empty){background:#fff4df;color:#8a5a15;margin-top:9px}.omr-video{width:100%;max-height:360px;object-fit:cover;border-radius:13px;background:#071d2b}.omr-canvas-wrap{position:relative;min-height:430px;background:#0a1d29;border-radius:14px;overflow:hidden;display:grid;place-items:center}.omr-canvas-wrap canvas{display:block;max-width:100%;max-height:72vh;cursor:crosshair}.canvas-placeholder{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:#8da4b2;gap:8px}.canvas-placeholder[hidden]{display:none}.canvas-placeholder b{font-size:45px}.omr-marker-order{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:8px}.omr-marker-order span{padding:7px;background:#edf3f5;border-radius:7px;text-align:center;font-size:8px;color:#5a7280}.omr-review{grid-column:1/-1}.omr-review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:9px;margin-bottom:16px}.omr-review-item{border:1px solid var(--line);border-radius:11px;padding:9px;margin:0;display:flex;flex-wrap:wrap;gap:5px;background:#fff}.omr-review-item.low-confidence{border-color:#f4a340;background:#fff8ea}.omr-review-item legend{font-weight:900;color:var(--navy);padding:0 5px}.omr-review-item label{position:relative;cursor:pointer}.omr-review-item label input{position:absolute;opacity:0}.omr-review-item label{border:1px solid var(--line);border-radius:7px;padding:6px 8px;font-size:9px;font-weight:800;background:#fff}.omr-review-item label:has(input:checked){background:var(--teal);color:#fff;border-color:var(--teal)}.omr-review-item small{width:100%;color:var(--muted);font-size:8px;margin-top:3px}.field input:disabled{background:#edf2f4;color:#6f828d}
@media(max-width:1100px){.module-launcher{grid-template-columns:1fr 1fr}.exam-workspace-grid,.omr-layout{grid-template-columns:1fr}.question-form-panel,.omr-controls{position:static}.question-bank-list{max-height:none}.omr-review{grid-column:auto}}
@media(max-width:700px){.module-launcher{grid-template-columns:1fr}.filter-bar{grid-template-columns:1fr}.builder-question{grid-template-columns:auto 1fr}.builder-question .question-index{display:none}.builder-question .difficulty{grid-column:2}.sticky-submit{flex-direction:column;align-items:stretch}.omr-marker-order{grid-template-columns:1fr 1fr}.omr-canvas-wrap{min-height:300px}.omr-review-grid{grid-template-columns:1fr}.camera-actions .btn{flex:1}.exam-workspace-grid{display:block}.question-form-panel{margin-bottom:18px}}

/* Administração 1.4: usuários, financeiro e liberações manuais */
.admin-tabs{overflow-x:auto}.admin-tabs a{white-space:nowrap}.admin-tabs a span{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;border-radius:999px;background:#fff0da;color:#a26312;font-size:8px}.admin-stat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.admin-stat-grid article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:0 10px 30px rgba(16,42,67,.04)}.admin-stat-grid span,.admin-stat-grid small{display:block;color:var(--muted);font-size:9px}.admin-stat-grid strong{display:block;color:var(--navy);font-size:26px;letter-spacing:-1px;margin:7px 0 3px}.admin-stat-grid .attention{background:#fff9ef;border-color:#f3d9b4}.admin-stat-grid .attention strong{color:#a26312}.admin-stat-grid .revenue{background:linear-gradient(135deg,var(--navy),#174e63);border-color:var(--navy)}.admin-stat-grid .revenue span,.admin-stat-grid .revenue small{color:#aec2d0}.admin-stat-grid .revenue strong{color:#fff;font-size:21px}.admin-overview-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:17px}.admin-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.admin-shortcuts a{border:1px solid var(--line);border-radius:13px;padding:15px;transition:.2s}.admin-shortcuts a:hover{border-color:var(--teal);transform:translateY(-2px)}.admin-shortcuts i{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e8f7f6;color:var(--teal2);font-style:normal;font-weight:900}.admin-shortcuts b,.admin-shortcuts small{display:block}.admin-shortcuts b{color:var(--navy);font-size:11px;margin:10px 0 4px}.admin-shortcuts small{color:var(--muted);font-size:8px;line-height:1.5}.admin-feed{display:grid;gap:11px}.admin-feed article{display:flex;gap:10px;align-items:center}.admin-feed i{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px #e8f7f6}.admin-feed b,.admin-feed small{display:block}.admin-feed b{color:var(--navy);font-size:10px;text-transform:capitalize}.admin-feed small{color:var(--muted);font-size:8px;margin-top:3px}.admin-filter{display:grid;grid-template-columns:minmax(230px,1.5fr) 1fr 1fr auto;gap:9px;margin-bottom:16px}.admin-filter input,.admin-filter select{border:1px solid var(--line);border-radius:9px;padding:10px 11px;background:#fff;color:var(--ink);font-size:10px}.admin-table{min-width:880px}.admin-table td{vertical-align:middle}.admin-manage-card{margin-bottom:17px;border-color:#b8dedc;box-shadow:0 15px 40px rgba(22,166,161,.08)}.admin-manage-head{display:flex;align-items:center;gap:12px;padding-bottom:15px;border-bottom:1px solid var(--line);margin-bottom:16px}.admin-manage-head>div:nth-child(2){flex:1}.admin-manage-head h2{margin:3px 0;font-size:19px}.admin-manage-head p{margin:0;color:var(--muted);font-size:10px}.user-avatar.large{width:48px;height:48px;border-radius:14px;font-size:14px}.admin-manage-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:15px}.admin-action-column{display:grid;gap:12px;align-content:start}.admin-action-box{border:1px solid var(--line);border-radius:13px;padding:16px;background:#fbfdfe}.admin-action-box h3{margin:0;color:var(--navy);font-size:13px}.admin-action-box>p{margin:0;color:var(--muted);font-size:9px;line-height:1.55}.admin-action-box textarea{resize:vertical}.muted-box{background:#f8fafb}.admin-inline-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-inline-actions form{margin:0}.payment-tabs{margin-top:3px}.audit-details{display:block;max-width:420px;white-space:normal;line-height:1.45;font-size:8px}.admin-section-note{margin:4px 0 0;color:var(--muted);font-size:9px}.password-card{max-width:560px}.password-card .btn{justify-self:start}
.notice.success{background:#e7f7f0;color:#176f53}.password-recovery-card{width:min(100%,560px);margin:auto}.password-recovery-card h1{margin-bottom:12px}
.mail-diagnostic-card{margin-top:17px}.mail-diagnostic-grid{display:grid;grid-template-columns:1fr 330px;gap:18px;align-items:start}.mail-config-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mail-config-summary span{border:1px solid var(--line);border-radius:10px;padding:11px;color:var(--muted);font-size:9px}.mail-config-summary b{display:block;color:var(--navy);font-size:9px;margin-bottom:4px}.mail-test-form{border-left:1px solid var(--line);padding-left:18px}.mail-log-table{margin-top:16px}.mail-log-table .table{min-width:680px}
@media(max-width:1150px){.admin-stat-grid{grid-template-columns:repeat(3,1fr)}.admin-overview-grid,.admin-manage-grid{grid-template-columns:1fr}.admin-shortcuts{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:760px){.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-shortcuts{grid-template-columns:1fr}.admin-filter{grid-template-columns:1fr}.admin-manage-head{align-items:flex-start;flex-wrap:wrap}.admin-manage-head .btn{margin-left:60px}.admin-manage-grid .form-row{grid-template-columns:1fr}}
@media(max-width:760px){.mail-diagnostic-grid{grid-template-columns:1fr}.mail-test-form{border-left:0;border-top:1px solid var(--line);padding:15px 0 0}.mail-config-summary{grid-template-columns:1fr}}
@media(max-width:460px){.admin-stat-grid{grid-template-columns:1fr}.admin-manage-head .btn{margin-left:0}.admin-inline-actions{display:grid}.admin-inline-actions .btn{width:100%}}

/* Biblioteca 1.11: acervo visual, circulação e portal exclusivo dos alunos */
.library-heading{align-items:center}.library-nav{overflow-x:auto;display:flex;white-space:nowrap}.library-nav a{flex:0 0 auto}.status-pill.danger{background:#fdebed;color:#a92e3b}.library-access-card{margin-top:17px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(135deg,#fff,#eefaf9);border-color:#bfe5e2}.library-access-card h2{margin:6px 0}.library-access-card p,.library-section-note{color:var(--muted);font-size:10px;line-height:1.6}.library-link-box{display:flex;gap:8px;align-items:center;margin-top:13px}.library-link-box code{display:block;max-width:680px;overflow:auto;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-size:10px}.library-link-box.vertical{display:grid;align-items:stretch}.library-filter-card{margin-bottom:17px}.library-filter{display:grid;grid-template-columns:minmax(220px,2fr) minmax(180px,1fr) auto auto;gap:10px;align-items:end}.library-filter label,.library-inline-search{font-size:10px;font-weight:900;color:var(--navy)}.library-filter input,.library-filter select,.library-inline-search input{width:100%;margin-top:6px;border:1px solid var(--line);border-radius:9px;padding:11px;background:#fff;color:var(--ink)}.library-inline-search{display:flex;gap:7px;align-items:center}.library-inline-search input{margin:0;min-width:220px}.library-book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:16px}.library-book-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 34px rgba(16,42,67,.05)}.library-cover-button{position:relative;display:block;width:100%;height:270px;padding:0;border:0;background:#eaf0f3;cursor:pointer;overflow:hidden}.library-cover-button>img{width:100%;height:100%;object-fit:cover;transition:.25s}.library-cover-button>span:last-child{position:absolute;left:10px;right:10px;bottom:10px;padding:9px;border-radius:9px;background:rgba(9,31,52,.9);color:#fff;font-size:9px;font-weight:900;opacity:0;transform:translateY(5px);transition:.2s}.library-cover-button:hover>img{transform:scale(1.035)}.library-cover-button:hover>span:last-child,.library-cover-button:focus>span:last-child{opacity:1;transform:none}.library-cover-placeholder{width:100%;height:100%;display:grid;place-content:center;gap:8px;background:linear-gradient(145deg,#e9f2f5,#d4e6e9);color:#6a8695;font-size:48px}.library-cover-placeholder small{font-size:10px;text-transform:uppercase;letter-spacing:1px}.library-book-body{display:flex;flex:1;flex-direction:column;padding:16px}.library-book-body h3{margin:6px 0 5px;color:var(--navy);font-size:15px;line-height:1.25}.library-book-body>p{margin:0 0 13px;color:var(--muted);font-size:10px}.library-book-body .availability{margin-top:auto;margin-bottom:13px}.library-book-body .status-pill{align-self:flex-start;margin-top:auto}.library-book-modal{width:min(900px,calc(100% - 24px));max-height:90vh;border:0;border-radius:18px;padding:24px;box-shadow:0 35px 100px rgba(7,28,43,.35);color:var(--ink)}.library-book-modal::backdrop{background:rgba(6,26,39,.72)}.library-modal-close{position:absolute;right:12px;top:10px;width:35px;height:35px;border:0;border-radius:50%;background:#edf3f5;color:var(--navy);font-size:22px;cursor:pointer}.library-modal-grid{display:grid;grid-template-columns:260px 1fr;gap:26px;align-items:start}.library-modal-cover{width:100%;height:360px;object-fit:cover;border-radius:13px;background:#edf2f4}.library-modal-grid h2{margin:7px 36px 8px 0;color:var(--navy);font-size:25px}.library-modal-grid>div>p{color:var(--muted)}.library-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:18px 0}.library-facts div{border:1px solid var(--line);border-radius:9px;padding:10px}.library-facts dt{font-size:8px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.library-facts dd{margin:4px 0 0;color:var(--navy);font-size:10px;font-weight:800}.library-synopsis{border-top:1px solid var(--line);padding:15px 0}.library-synopsis h3{margin:0 0 7px;color:var(--navy);font-size:13px}.library-synopsis p{color:var(--muted);font-size:10px;line-height:1.7;white-space:normal}.library-title-cell,.library-student-cell{display:flex;gap:10px;align-items:center}.library-title-cell img,.library-title-cell i{width:42px;height:56px;border-radius:7px;object-fit:cover;background:#edf3f5;display:grid;place-items:center;font-style:normal}.library-edit-cover{display:block;width:115px;height:155px;object-fit:cover;border-radius:10px;margin:0 auto 14px}.library-student-cell img,.library-student-cell i{width:39px;height:39px;border-radius:11px;object-fit:cover;background:#e5f6f5;color:var(--teal2);display:grid;place-items:center;font-style:normal;font-weight:900}.library-student-cell div{display:flex;flex-direction:column}.library-student-cell span{color:var(--muted);font-size:8px;margin-top:3px}.library-student-preview{display:block;width:90px;height:90px;object-fit:cover;border-radius:18px;margin:0 auto 14px}.check-row{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:8px!important}.check-row input{width:auto!important}.library-book-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.library-book-picker a{border:1px solid var(--line);border-radius:11px;padding:14px}.library-book-picker b,.library-book-picker span{display:block}.library-book-picker b{font-size:11px;color:var(--navy)}.library-book-picker span{font-size:9px;color:var(--muted);margin-top:5px}.library-copy-list{display:grid;gap:10px}.library-copy-row{display:grid;grid-template-columns:145px repeat(3,1fr) 130px;gap:9px;align-items:end;border:1px solid var(--line);border-radius:12px;padding:12px}.library-copy-row label{font-size:8px;font-weight:900;color:var(--navy)}.library-copy-row input,.library-copy-row select{width:100%;margin-top:5px;border:1px solid var(--line);border-radius:8px;padding:9px;font-size:9px}.library-copy-row .wide{grid-column:2/5}.library-copy-code{align-self:stretch;display:flex;flex-direction:column;gap:6px}.library-copy-code code{font-size:9px}.library-ranking,.library-movement-list{display:grid;gap:9px}.library-ranking article,.library-movement-list article{display:flex;align-items:center;gap:10px;border-bottom:1px solid #edf2f5;padding:10px 0}.library-ranking i{width:28px;height:28px;border-radius:9px;background:#e8f7f6;color:var(--teal2);display:grid;place-items:center;font-style:normal;font-weight:900}.library-ranking div,.library-movement-list div{flex:1}.library-ranking b,.library-ranking span,.library-movement-list b,.library-movement-list span{display:block}.library-ranking b,.library-movement-list b{font-size:10px;color:var(--navy)}.library-ranking span,.library-movement-list span{font-size:8px;color:var(--muted);margin-top:3px}.library-ranking strong{color:var(--teal2);font-size:18px}.library-settings-form{max-width:620px}

.library-student-body{background:#f2f7f8}.library-login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.library-login-intro{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:52px;background:linear-gradient(145deg,var(--navy),#146d73);color:#fff}.library-login-intro:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-170px;bottom:-190px}.library-login-intro .brand{align-self:flex-start}.library-login-intro .brand b{color:#fff}.library-login-intro h1{max-width:520px;margin:15px 0;font-size:55px;line-height:1;letter-spacing:-3px}.library-login-intro p{max-width:530px;color:#bfdae0;line-height:1.7}.library-login-intro small{color:#8bc2ca}.library-login-wrap{display:grid;place-items:center;padding:35px}.library-login-card{width:min(100%,430px)}.library-login-card h2{margin:7px 0;color:var(--navy);font-size:30px}.library-login-card>p{color:var(--muted);font-size:11px;margin-bottom:24px}.library-login-help{text-align:center!important;font-size:9px!important;margin-top:17px!important}.library-student-header{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line)}.library-student-header-inner{width:min(1260px,calc(100% - 32px));height:72px;margin:auto;display:flex;align-items:center;gap:22px}.library-student-school{display:flex;flex-direction:column;padding-left:20px;border-left:1px solid var(--line)}.library-student-school b{font-size:11px;color:var(--navy)}.library-student-school small{font-size:8px;color:var(--muted)}.library-student-header nav{display:flex;align-items:center;gap:7px;margin-left:auto}.library-student-header nav a{padding:9px 11px;border-radius:8px;color:var(--muted);font-size:9px;font-weight:900}.library-student-header nav a:hover,.library-student-header nav a.active{background:#e8f7f6;color:var(--teal2)}.library-student-menu{display:none;margin-left:auto;border:0;border-radius:9px;background:#e8f7f6;color:var(--teal2);width:38px;height:38px}.library-student-main{width:min(1260px,calc(100% - 32px));margin:25px auto 60px}.library-student-welcome{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(110deg,var(--navy),#174e63);color:#fff;border-radius:18px;padding:25px 28px;margin-bottom:17px}.library-student-welcome:after{content:"";position:absolute;width:180px;height:180px;border:25px solid rgba(22,166,161,.2);border-radius:50%;right:-35px;top:-85px}.library-student-welcome h1{margin:4px 0;font-size:26px}.library-student-welcome p{margin:0;color:#b8ccd7;font-size:10px}.library-student-welcome>img,.library-student-welcome>i{position:relative;z-index:2;width:54px;height:54px;border-radius:15px;object-fit:cover;background:#fff;color:var(--teal2);display:grid;place-items:center;font-style:normal;font-weight:900}.library-student-filter{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:17px}.library-student-filter form{display:grid;grid-template-columns:2fr 1fr auto;gap:10px;align-items:end}.library-student-filter label{font-size:9px;font-weight:900;color:var(--navy)}.library-student-filter input,.library-student-filter select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:9px;padding:11px}.student-catalog{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.library-student-list{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px}.library-student-list>article{display:grid;grid-template-columns:64px 1fr auto auto;gap:13px;align-items:center;border-bottom:1px solid #edf2f5;padding:12px 0}.library-student-list>article>img,.library-student-list>article>i{width:54px;height:70px;border-radius:8px;object-fit:cover;background:#edf3f5;display:grid;place-items:center;font-style:normal}.library-student-list h3{margin:0;color:var(--navy);font-size:12px}.library-student-list p,.library-student-list small{display:block;margin:4px 0 0;color:var(--muted);font-size:9px}

@media(max-width:1050px){.library-copy-row{grid-template-columns:130px 1fr 1fr}.library-copy-row .wide{grid-column:auto}.library-copy-row .actions{grid-column:2/4}.library-filter{grid-template-columns:1fr 1fr}.library-login-intro h1{font-size:44px}}
@media(max-width:820px){.library-access-card{align-items:stretch;flex-direction:column}.library-modal-grid{grid-template-columns:180px 1fr}.library-modal-cover{height:270px}.library-login-page{grid-template-columns:1fr}.library-login-intro{display:none}.library-student-school{display:none}.library-student-menu{display:block}.library-student-header nav{display:none;position:absolute;left:16px;right:16px;top:64px;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px;box-shadow:var(--shadow)}.library-student-header nav.open{display:flex}.library-student-header nav a{text-align:center}.library-student-list>article{grid-template-columns:54px 1fr}.library-student-list>article>.status-pill,.library-student-list>article>form{grid-column:2}.library-student-filter form{grid-template-columns:1fr}}
@media(max-width:620px){.library-filter{grid-template-columns:1fr}.library-inline-search{width:100%}.section-heading.compact{align-items:flex-start;flex-direction:column}.library-book-grid{grid-template-columns:1fr 1fr}.library-cover-button{height:225px}.library-modal-grid{grid-template-columns:1fr}.library-modal-cover{width:150px;height:210px;margin:auto}.library-facts{grid-template-columns:1fr}.library-copy-row{grid-template-columns:1fr}.library-copy-row .wide,.library-copy-row .actions{grid-column:auto}.library-link-box{align-items:stretch;flex-direction:column}.library-link-box code{max-width:100%}.library-student-main{width:min(100% - 22px,1260px)}.library-student-welcome{padding:20px}.library-student-welcome h1{font-size:21px}}
@media(max-width:430px){.library-book-grid{grid-template-columns:1fr}.library-cover-button{height:330px}.library-student-list>article{grid-template-columns:1fr}.library-student-list>article>img,.library-student-list>article>i{width:72px;height:92px}.library-student-list>article>.status-pill,.library-student-list>article>form{grid-column:auto}}

/* Pesquisa pública 1.15: mestrado e doutorado */
.research-band{position:relative;overflow:hidden;padding:90px 0;background:linear-gradient(135deg,#edf9f8,#f7fafc)}.research-band:before{content:"";position:absolute;width:380px;height:380px;left:-210px;bottom:-220px;border:65px solid rgba(22,166,161,.08);border-radius:50%}.research-intro{position:relative;max-width:760px;margin-bottom:38px}.research-intro h2{margin:11px 0 13px;color:var(--navy);font-size:clamp(34px,4vw,51px);line-height:1.05;letter-spacing:-2px}.research-intro p{max-width:690px;color:var(--muted);line-height:1.7}.research-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:20px}.research-card{display:flex;flex-direction:column;min-height:430px;padding:30px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 20px 55px rgba(16,42,67,.08)}.research-card.master-card{border-top:5px solid #1fa4b8}.research-card.doctorate-card{border-top:5px solid var(--amber)}.research-card-head{display:flex;align-items:center;gap:11px}.research-card-head img,.research-card-head i{width:48px;height:48px;border-radius:12px;object-fit:contain;background:#e9f7f8;padding:6px}.research-card-head i{display:grid;place-items:center;background:#fff1dd;color:#aa650e;font-size:26px;font-style:normal}.research-card-head span{font-size:9px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase;color:var(--teal2)}.doctorate-card .research-card-head span{color:#a76410}.research-card h3{margin:22px 0 9px;color:var(--navy);font-size:28px;letter-spacing:-1px}.research-card>p{margin:0 0 17px;color:var(--muted);font-size:12px;line-height:1.7}.research-card ul{display:grid;gap:10px;margin:0 0 24px;padding:0;list-style:none}.research-card li{color:#587083;font-size:11px}.research-card li:before{content:"✓";margin-right:8px;color:var(--teal);font-weight:900}.research-card>.btn{align-self:flex-start;margin-top:auto}.experiment-status{display:grid;gap:5px;margin:3px 0 24px;padding:16px;border:1px dashed #e5c48d;border-radius:13px;background:#fffaf1}.experiment-status b{color:var(--navy);font-size:12px}.experiment-status small{color:var(--muted);font-size:9px;line-height:1.5}.experiment-status span{justify-self:start;margin-top:4px;padding:5px 8px;border-radius:999px;background:#fff0d9;color:#9c5d0d;font-size:8px;font-weight:900;text-transform:uppercase}
.doctoral-page{background:#f7fafc}.doctoral-hero{padding:100px 0 82px;background:linear-gradient(125deg,#102a43,#174e63);color:#fff}.doctoral-hero .eyebrow{color:#75d6d1}.doctoral-hero h1{max-width:760px;margin:15px 0;font-size:clamp(48px,6vw,74px);line-height:1;letter-spacing:-4px}.doctoral-hero p{max-width:710px;margin:0 0 28px;color:#c2d3dd;font-size:17px;line-height:1.75}.doctoral-content{padding:70px 0}.doctoral-content>.container{display:grid;grid-template-columns:1.3fr .7fr;gap:22px;align-items:start}.doctoral-card,.doctoral-note{padding:30px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 15px 45px rgba(16,42,67,.07)}.doctoral-card h2{margin:14px 0 8px;color:var(--navy);font-size:30px}.doctoral-card>p,.doctoral-note p{color:var(--muted);font-size:12px;line-height:1.75}.doctoral-placeholder{display:flex;align-items:center;gap:13px;margin-top:24px;padding:18px;border:1px dashed #e0bd83;border-radius:13px;background:#fff9ef}.doctoral-placeholder i{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--amber);color:var(--navy);font-style:normal;font-size:19px;font-weight:900}.doctoral-placeholder div{display:flex;flex-direction:column}.doctoral-placeholder b{color:var(--navy);font-size:12px}.doctoral-placeholder small{margin-top:4px;color:var(--muted);font-size:9px}.doctoral-note h3{margin:0 0 9px;color:var(--navy)}
@media(max-width:820px){.research-grid,.doctoral-content>.container{grid-template-columns:1fr}.doctoral-hero{padding:75px 0 65px}}
@media(max-width:520px){.research-band{padding:62px 0}.research-card{min-height:0;padding:23px}.research-card>.btn{width:100%}.doctoral-hero h1{font-size:48px;letter-spacing:-2px}.doctoral-card,.doctoral-note{padding:22px}}
.experiment-status.available{border-color:#9dd6c4;background:#effaf6}.experiment-status.available span{background:#dff4ec;color:#197254}.research-card-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:auto}.research-card-actions>a:not(.btn){color:var(--teal2);font-size:10px;font-weight:900}.research-card-actions .btn{margin-top:0}@media(max-width:520px){.research-card-actions{align-items:stretch;flex-direction:column}.research-card-actions .btn{width:100%}.research-card-actions>a:not(.btn){text-align:center}}

/* Frequência escolar 1.19: leitor híbrido, gestão diária e biometria protegida */
.attendance-heading{align-items:center}.attendance-nav{display:flex;overflow-x:auto;white-space:nowrap}.attendance-nav a{flex:0 0 auto}.attendance-note{color:var(--muted);font-size:10px;line-height:1.65}.attendance-scan-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,.7fr);gap:17px;align-items:start}.attendance-camera-card{overflow:hidden}.attendance-camera{position:relative;overflow:hidden;width:100%;aspect-ratio:16/9;margin:16px 0;border-radius:16px;background:#071b2b}.attendance-camera video,.attendance-camera canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.attendance-camera canvas{z-index:2;pointer-events:none}.attendance-camera-message{position:absolute;inset:0;z-index:3;display:grid;place-items:center;padding:25px;background:rgba(7,27,43,.82);color:#fff;text-align:center;font-weight:900}.attendance-camera-message[hidden]{display:none}.attendance-reader-state{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:13px;padding:14px;background:#f7fafc}.attendance-reader-state>i{width:13px;height:13px;border-radius:50%;background:#8da0ae;box-shadow:0 0 0 6px rgba(141,160,174,.13)}.attendance-reader-state div{display:flex;flex-direction:column;gap:4px}.attendance-reader-state b{color:var(--navy);font-size:12px}.attendance-reader-state span{color:var(--muted);font-size:9px}.attendance-reader-state.ready>i{background:var(--teal);box-shadow:0 0 0 6px rgba(22,166,161,.13);animation:attendancePulse 1.8s infinite}.attendance-reader-state.success{border-color:#9fdcc7;background:#effaf6}.attendance-reader-state.success>i{background:#198b67}.attendance-reader-state.late{border-color:#f0c889;background:#fff8eb}.attendance-reader-state.late>i,.attendance-reader-state.candidate>i{background:var(--amber)}.attendance-reader-state.error{border-color:#ecc1c5;background:#fff3f4}.attendance-reader-state.error>i{background:var(--danger)}.attendance-reader-state.duplicate{border-color:#cbd9e2;background:#f3f7f9}.attendance-privacy-line{margin-top:10px;color:var(--muted);font-size:8px;line-height:1.5}.attendance-live-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.attendance-live-stats article{display:flex;min-height:91px;flex-direction:column;justify-content:center;padding:15px;border-radius:14px;background:linear-gradient(145deg,var(--navy),#174e63);color:#fff;text-align:center;box-shadow:0 12px 30px rgba(16,42,67,.13)}.attendance-live-stats strong{font-size:26px}.attendance-live-stats span{margin-top:3px;color:#b8ccd7;font-size:8px;text-transform:uppercase;font-weight:900}.attendance-recent{display:grid;gap:4px}.attendance-recent article{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #edf2f5}.attendance-recent article>i{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;background:#e5f6f5;color:var(--teal2);font-style:normal;font-size:9px;font-weight:900}.attendance-recent article>div{min-width:0;flex:1}.attendance-recent b,.attendance-recent span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-recent b{font-size:10px;color:var(--navy)}.attendance-recent span{margin-top:3px;color:var(--muted);font-size:8px}.attendance-recent em{color:var(--teal2);font-size:8px;font-style:normal;font-weight:900}.attendance-recent em.late{color:#b36b0e}.attendance-filter{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:17px}.attendance-filter form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.attendance-filter label{font-size:9px;font-weight:900;color:var(--navy)}.attendance-filter input,.attendance-filter select{display:block;min-width:170px;margin-top:5px;border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff}.attendance-day-actions{display:flex;align-items:center;gap:8px}.attendance-status-present{background:#dff5ec;color:#167354}.attendance-status-late{background:#fff0d7;color:#9f620e}.attendance-status-absent{background:#fdebed;color:#a92e3b}.attendance-status-justified{background:#e8effc;color:#385e9b}.attendance-status-pending{background:#edf2f5;color:#6b7f8d}.attendance-table details{position:relative}.attendance-table summary{list-style:none}.attendance-inline-form{display:grid;position:absolute;right:0;z-index:10;width:330px;gap:7px;margin-top:7px;padding:12px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:var(--shadow)}.attendance-inline-form input,.attendance-inline-form select{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px;font-size:9px}.attendance-inline-form.period-form{margin-top:216px}.attendance-dialog{width:min(620px,calc(100% - 24px));max-height:92vh;border:0;border-radius:18px;padding:25px;color:var(--ink);box-shadow:0 35px 100px rgba(7,28,43,.38)}.attendance-dialog::backdrop{background:rgba(6,26,39,.76)}.attendance-dialog h2{margin:7px 35px 7px 0;color:var(--navy)}.attendance-dialog>p{color:var(--muted);font-size:10px;line-height:1.6}.attendance-enroll-camera{aspect-ratio:4/3}.attendance-capture-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:12px 0}.attendance-capture-progress i{height:7px;border-radius:999px;background:#dce6eb}.attendance-capture-progress i.done{background:var(--teal)}.attendance-consent{align-items:flex-start!important;margin:15px 0;color:var(--muted);font-size:9px!important;line-height:1.55}.attendance-qr-dialog{text-align:center}.attendance-qr-dialog .library-modal-close{position:absolute}.attendance-qrcode{display:grid;place-items:center;margin:20px auto}.attendance-qrcode img,.attendance-qrcode canvas{max-width:260px;width:100%;height:auto}.attendance-qr-dialog code{display:block;overflow-wrap:anywhere;margin:12px 0;padding:10px;border:1px solid var(--line);border-radius:8px;font-size:8px}.attendance-settings-form{max-width:720px}.attendance-security-list{display:grid;gap:10px;margin:15px 0;padding:0;list-style:none}.attendance-security-list li{position:relative;padding-left:22px;color:var(--muted);font-size:10px;line-height:1.5}.attendance-security-list li:before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:900}.attendance-operators{display:grid;gap:10px}.attendance-operator-row{display:grid;grid-template-columns:minmax(190px,1.4fr) repeat(7,auto) auto;gap:10px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:12px}.attendance-operator-row>div{display:flex;min-width:0;flex-direction:column}.attendance-operator-row>div b{color:var(--navy);font-size:10px}.attendance-operator-row>div span{overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:8px;white-space:nowrap}.attendance-operator-row label{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:8px;white-space:nowrap}@keyframes attendancePulse{50%{box-shadow:0 0 0 11px rgba(22,166,161,0)}}
@media(max-width:1100px){.attendance-scan-grid{grid-template-columns:1fr}.attendance-scan-grid .sidebar-stack{display:grid;grid-template-columns:1fr 1fr}.attendance-live-stats{grid-column:1/-1}.attendance-operator-row{grid-template-columns:1fr 1fr 1fr 1fr}.attendance-operator-row>div{grid-column:1/-1}}
@media(max-width:720px){.attendance-heading{align-items:flex-start;flex-direction:column}.attendance-scan-grid .sidebar-stack{display:grid;grid-template-columns:1fr}.attendance-filter{align-items:stretch;flex-direction:column}.attendance-filter form{display:grid;grid-template-columns:1fr}.attendance-filter input,.attendance-filter select{width:100%;min-width:0}.attendance-day-actions{justify-content:space-between}.attendance-inline-form{position:fixed;inset:auto 12px 12px;width:auto;max-height:75vh;overflow:auto}.attendance-inline-form.period-form{margin-top:0;bottom:12px}.attendance-operator-row{grid-template-columns:1fr 1fr}.attendance-operator-row>div{grid-column:1/-1}}
@media print{body:has(.attendance-qr-dialog[open])>*:not(.attendance-qr-dialog){display:none!important}.attendance-qr-dialog[open]{position:static;display:block;width:100%;box-shadow:none}.attendance-qr-dialog .library-modal-close,.attendance-qr-dialog .button{display:none}.attendance-qrcode img,.attendance-qrcode canvas{width:260px!important}}

/* ProfTempo 1.20: navegação da frequência, leitura facial múltipla e central de usuários */
.attendance-nav{display:flex;gap:6px;margin:0 0 18px;padding:7px;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 26px rgba(16,42,67,.05);scrollbar-width:thin}.attendance-nav a{display:inline-flex;min-height:42px;align-items:center;justify-content:center;flex:0 0 auto;padding:10px 14px;border:1px solid transparent;border-radius:9px;color:#526d7e;font-size:14px;font-weight:800;line-height:1.15;white-space:nowrap;transition:background .18s,border-color .18s,color .18s}.attendance-nav a:hover{border-color:#b8dcda;background:#f0faf9;color:var(--teal2)}.attendance-nav a.active{border-color:var(--teal);background:var(--teal);color:#fff;box-shadow:0 6px 16px rgba(22,166,161,.2)}
.attendance-face-count{position:absolute;top:12px;left:12px;z-index:4;padding:8px 11px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(7,27,43,.78);color:#fff;font-size:12px;font-weight:800;backdrop-filter:blur(6px)}.attendance-face-count[hidden]{display:none}.attendance-recent-card h2{margin:5px 0 12px;color:var(--navy);font-size:18px}.attendance-recent-card .attendance-recent{max-height:430px;overflow:auto;padding-right:3px}.attendance-reader-state.duplicate{border-color:#f0b1b5;background:#fff2f3}.attendance-reader-state.duplicate>i{background:#ef4444}.attendance-reader-state.candidate{border-color:#f2d098;background:#fff9ee}
@media(max-width:720px){.attendance-nav{padding:6px}.attendance-nav a{min-height:40px;padding:9px 12px;font-size:13px}.attendance-face-count{top:8px;left:8px;font-size:11px}}

/* Cadastro único da escola */
.school-users-heading{align-items:center}.school-users-nav{margin-top:-4px}.school-user-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:17px}.school-user-stats article{display:flex;min-height:132px;flex-direction:column;justify-content:center;padding:21px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 10px 32px rgba(16,42,67,.05)}.school-user-stats span{color:var(--muted);font-size:11px;font-weight:800}.school-user-stats strong{margin:7px 0 5px;color:var(--navy);font-size:31px}.school-user-stats small{color:#78909f;font-size:9px}.school-users-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.school-user-entry{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:start;min-height:210px;color:inherit;transition:transform .18s,box-shadow .18s}.school-user-entry:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(16,42,67,.11)}.school-user-entry>i{display:grid;width:43px;height:43px;place-items:center;border-radius:12px;background:#e6f7f5;color:var(--teal2);font-size:12px;font-style:normal;font-weight:900}.school-user-entry h2{margin:7px 0;color:var(--navy);font-size:21px}.school-user-entry p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}.school-user-entry>b{grid-column:2;color:var(--teal2);font-size:11px}.school-member-inline{display:flex;align-items:center;gap:7px;min-width:390px}.school-member-inline select{min-width:110px;border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff;color:var(--ink);font-size:10px}.school-user-filter{margin-bottom:17px;padding:16px 18px}.school-user-filter form{display:grid;grid-template-columns:minmax(220px,2fr) minmax(150px,1fr) auto auto;gap:10px;align-items:end}.school-user-filter label{color:var(--navy);font-size:10px;font-weight:900}.school-user-filter input,.school-user-filter select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:9px;padding:11px;background:#fff}.school-id-status{display:flex;gap:5px;flex-wrap:wrap}.school-id-status span{padding:5px 7px;border-radius:999px;background:#edf2f5;color:#758994;font-size:8px;font-weight:900}.school-id-status span.ok{background:#e1f5ed;color:#177353}.school-brand-preview>h2{margin:7px 0 18px;color:var(--navy)}.school-brand-preview>div{display:flex;align-items:center;gap:16px;margin-bottom:18px;padding:18px;border:1px solid var(--line);border-radius:15px;background:#f7fafb}.school-brand-preview img,.school-brand-preview i{display:grid;width:86px;height:86px;flex:0 0 auto;place-items:center;border-radius:17px;background:#fff;object-fit:contain;color:var(--teal2);font-size:24px;font-style:normal;font-weight:900}.school-brand-preview span{display:flex;min-width:0;flex-direction:column;gap:6px}.school-brand-preview span b{color:var(--navy);font-size:17px}.school-brand-preview span small,.school-brand-preview>p{color:var(--muted);font-size:10px;line-height:1.6}.school-brand-preview>.button{margin-top:10px}
@media(max-width:1050px){.school-user-stats{grid-template-columns:1fr 1fr}.school-users-overview{grid-template-columns:1fr}.school-user-entry{min-height:0}.school-member-inline{min-width:310px;flex-wrap:wrap}}
@media(max-width:720px){.school-users-heading{align-items:flex-start;flex-direction:column}.school-user-filter form{grid-template-columns:1fr}.school-member-inline{min-width:260px}.school-user-stats{grid-template-columns:1fr 1fr}.school-user-stats article{min-height:112px;padding:16px}}
@media(max-width:470px){.school-user-stats{grid-template-columns:1fr}.school-member-inline{min-width:220px;align-items:stretch;flex-direction:column}.school-member-inline select{width:100%}}

/* ProfTempo 1.21 — calendário e atalhos */
.attendance-calendar{margin-bottom:20px}.attendance-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-weekday{text-align:center;padding:9px;color:var(--muted);font-size:12px}.calendar-day{display:flex;flex-direction:column;gap:8px;min-height:105px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);text-decoration:none}.calendar-day strong{font-size:20px}.calendar-day span,.calendar-day small{font-size:11px}.calendar-day:hover{border-color:var(--teal)}.calendar-day.is-today{outline:2px solid var(--teal);background:#eaf8f7}.calendar-day.is-holiday{background:#fff8e8}.sidebar{overflow-y:auto}.quick-actions{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
@media(max-width:650px){.attendance-calendar-grid{gap:4px}.calendar-day{padding:7px;min-height:82px;border-radius:7px}.calendar-day span{font-size:9px;overflow-wrap:anywhere}.calendar-day small{display:none}.calendar-day strong{font-size:16px}.calendar-weekday{font-size:10px;padding:6px 0}.attendance-calendar .section-heading{flex-wrap:wrap}.quick-actions{grid-template-columns:1fr 1fr}}
