:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#eaf6fa;background:#06111f;font-synthesis:none}*{box-sizing:border-box}html{height:100%;scroll-behavior:smooth}body{margin:0;min-height:100%;background:radial-gradient(circle at 10% 0%,#15364d 0%,#0a1a2c 40%,#06111f 100%)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #5de2cd;outline-offset:3px}a{color:#66ead6;text-decoration:none}.app-shell{position:relative;max-width:480px;margin:0 auto;min-height:100svh;background:#09172a;box-shadow:0 0 55px #0008;padding-bottom:calc(90px + env(safe-area-inset-bottom))}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:calc(20px + env(safe-area-inset-top)) 22px 16px;border-bottom:1px solid #ffffff13;background:#09172aed;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:10px;font-weight:850;font-size:20px;letter-spacing:-.55px;line-height:1}.brand-mark{width:40px;height:40px;background:#12334b;border:1px solid #2c6578;border-radius:12px;display:grid;place-items:center;color:#53e4d2;font-size:24px;font-weight:900;position:relative;box-shadow:inset 0 0 14px #3be9cc12}.brand-dot{position:absolute;right:5px;bottom:6px;width:5px;height:5px;border-radius:50%;background:#8ae55d}.brand-highlight{color:#51dec9}.brand small{font-size:8px;color:#91aabb;display:block;letter-spacing:2.3px;margin-top:5px}.demo-pill{font-size:9px;font-weight:900;letter-spacing:.7px;color:#fecf8a;padding:7px 8px;border:1px solid #9f6b333b;background:#65472240;border-radius:8px}.page{padding:23px 21px 35px;animation:fade .18s ease-out}@keyframes fade{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#55decb;font-weight:850}.hero h1{font-size:29px;line-height:1.12;letter-spacing:-1.15px;margin:12px 0 8px}.muted{color:#91a8ba}.hero p{margin:0 0 21px;line-height:1.55;font-size:14px}.hero-card{border:1px solid #286476;background:linear-gradient(135deg,#10374c,#0d2338 60%,#123045);padding:21px;border-radius:19px;position:relative;overflow:hidden}.hero-card:after{content:"";position:absolute;right:-35px;top:-35px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#34e6b71e,transparent 70%);pointer-events:none}.hero-card .eyebrow{font-size:10px}.hero-card h2{font-size:21px;letter-spacing:-.4px;margin:8px 0}.hero-card p{font-size:12px;line-height:1.5;color:#a9c3d0;margin:0 0 18px;max-width:240px}.hero-symbol{position:absolute;right:23px;top:35px;font-size:42px;color:#43dbca78}.pill{display:inline-flex;gap:7px;align-items:center;background:#31dfbb19;color:#63edca;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800}.section-title{display:flex;justify-content:space-between;align-items:center;margin:27px 0 12px}.section-title h2{font-size:17px;margin:0;letter-spacing:-.35px}.link{border:0;background:none;color:#69e6d3;font-size:12px;font-weight:700;padding:7px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.feature{border:1px solid #1d344b;border-radius:15px;background:#0d2236;text-align:left;color:#eaf6fa;min-height:127px;padding:16px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}.feature:hover,.course:hover{border-color:#3c958b}.feature .icon{font-size:24px;color:#66edce}.feature strong{font-size:13px}.feature small{font-size:11px;color:#8caabd}.course{display:flex;align-items:flex-start;gap:12px;padding:15px;border-radius:15px;border:1px solid #20364a;background:#10243a;width:100%;text-align:left;color:#f1f9fb;margin-bottom:10px}.course-ico{flex:0 0 41px;width:41px;height:41px;border-radius:12px;background:#204557;color:#74f7cf;font-size:21px;display:grid;place-items:center}.course h3{font-size:13px;line-height:1.36;margin:0 0 7px}.course p{font-size:11px;color:#94abbd;margin:0 0 8px}.course .tag{font-size:10px;color:#89d5e7}.grow{flex:1}.chevron{color:#8db3bd;margin-top:13px}.bottom-nav{position:fixed;z-index:20;bottom:0;width:min(100%,480px);display:grid;grid-template-columns:repeat(5,1fr);padding:11px 7px calc(11px + env(safe-area-inset-bottom));background:#0b1c2cee;border-top:1px solid #234459;backdrop-filter:blur(16px)}.nav-item{background:transparent;color:#82a0b3;border:0;display:flex;align-items:center;flex-direction:column;gap:2px;padding:3px 0;font-size:10px}.nav-item.active{color:#72efd0;font-weight:850}.nav-symbol{font-size:23px;line-height:1.1}.page-head{margin-bottom:19px}.page-head h1{font-size:25px;letter-spacing:-.8px;margin:6px 0 9px}.page-head p{font-size:13px;line-height:1.55;color:#92aabc;margin:0}.panel{padding:17px;border-radius:16px;background:#10243a;border:1px solid #254158;margin-bottom:12px}.panel h2{margin:0 0 10px;font-size:16px}.panel p{font-size:13px;line-height:1.55;color:#aac1ce}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 17px;border:0;border-radius:12px;background:#69e9c7;color:#08212c;font-weight:850;font-size:13px;min-height:45px}.btn.secondary{background:#17374d;color:#b7f3e8;border:1px solid #32667a}.btn.ghost{background:transparent;border:1px solid #355265;color:#b6ccda}.btn.full{width:100%}.btn:disabled{opacity:.4;cursor:not-allowed}.button-row{display:flex;gap:10px;flex-wrap:wrap}.field{display:block;width:100%;min-height:48px;border:1px solid #426075;background:#091b2d;color:#f6fcff;border-radius:11px;padding:12px;font-size:14px;margin:10px 0}.field::placeholder{color:#738da2}.status{border-radius:10px;padding:11px 13px;font-size:12px;line-height:1.55;background:#133548;border:1px solid #27556b;color:#bbdce8}.status.warning{background:#3b2f1c;border-color:#6b5637;color:#f6d7a0}.status.success{background:#123e38;border-color:#36806b;color:#8df0d0}.viewfinder{background:#051522;border:1px solid #2b5368;border-radius:15px;min-height:180px;display:grid;place-items:center;overflow:hidden;position:relative}.viewfinder video{width:100%;height:210px;object-fit:cover}.scan-frame{width:125px;height:125px;border:2px dashed #76e9ca;border-radius:13px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none}.qr-example{width:152px;height:152px;padding:6px;border-radius:10px;background:#fff;display:block;margin:12px auto}.step{font-size:12px;color:#90b1c2}.question{margin:19px 0}.question p{font-size:15px;line-height:1.5;font-weight:750;margin:0 0 10px}.answer{display:flex;gap:11px;align-items:flex-start;padding:12px;border:1px solid #2f495c;margin-bottom:7px;border-radius:11px;font-size:13px;line-height:1.4}.answer:has(input:checked){border-color:#71e6cb;background:#153b47}.answer input{accent-color:#60dfc6;margin-top:2px}.progress-track{height:7px;background:#284259;border-radius:999px;overflow:hidden;margin:12px 0 19px}.progress-fill{height:100%;background:#68e4c6;border-radius:999px;transition:width .2s}.avatar{width:70px;height:70px;border-radius:24px;border:1px solid #488396;background:linear-gradient(150deg,#245d68,#142c46);display:grid;place-items:center;font-size:28px;color:#9cf4e3;margin-bottom:15px}.kv{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;border-bottom:1px solid #284054;padding:12px 0;font-size:12px}.kv:last-child{border-bottom:0}.kv span{color:#8eaaba}.kv strong{text-align:right;color:#f0fbff}.certificate{padding:20px 14px;border:2px solid #c7a96e;background:#f8f7f0;color:#24384b;border-radius:4px;text-align:center;margin:18px 0}.certificate h2{font-family:Georgia,serif;font-size:21px;margin:9px 0;color:#163749}.certificate p{color:#314956;font-size:12px}.certificate .stripe{border-top:1px solid #ad975b;margin:16px 0}.certificate .watermark{font-size:12px;color:#956935;border:1px dashed #b99150;padding:9px}.separator{height:1px;background:#274257;margin:19px 0}.footnote{font-size:11px;line-height:1.55;color:#7f9bad;margin-top:20px}.mini{font-size:11px;color:#99b3c4}.empty{padding:28px 12px;border-radius:13px;text-align:center;border:1px dashed #38566b}.empty .icon{font-size:33px;display:block;margin-bottom:10px}.offline-indicator{position:fixed;right:12px;top:79px;z-index:30;background:#563d1d;color:#ffe7bd;font-size:11px;padding:7px 12px;border-radius:99px}@media(min-width:560px){.app-shell{margin:35px auto;min-height:calc(100svh - 70px);border-radius:28px;overflow:hidden}.bottom-nav{bottom:35px;border-radius:0 0 28px 28px}.topbar{padding-top:20px}}@media(max-width:335px){.page{padding:18px 14px}.demo-pill{font-size:8px;padding:5px}.brand{font-size:17px}.feature{padding:12px}.bottom-nav{padding-left:2px;padding-right:2px}}

/* HF08: seletor explícito de perfis públicos e fictícios */
.demo-profiles{display:grid;gap:8px;margin-top:14px}
.demo-person{border:1px solid #335169;background:#0c2336;color:#eaf6fa;border-radius:12px;text-align:left;padding:12px;display:grid;gap:4px}
.demo-person small{color:#9ab8c7;font-size:11px}.demo-person.selected{border-color:#63e4cd;background:#134250}
.demo-person:focus-visible{outline:2px solid #62e2cf}
.status button.link{border:0;background:transparent;color:#e3fcf7;cursor:pointer;text-decoration:underline;font-weight:700}

/* HF17: autenticacao real no mesmo PWA e sem perfis/cursos demonstrativos */
[hidden]{display:none!important}.topbar .demo-pill{color:#86f2d8;background:#1d58472c;border-color:#3dbda177}.field-label{display:block;margin:14px 0 4px;color:#c9e2eb;font-weight:700;font-size:12px}.helper{font-size:12px;line-height:1.5;color:#a5bccc;margin:9px 0}.login-panel{margin-top:20px}.login-panel h2{margin:0 0 4px;font-size:19px}.login-panel .field{margin:6px 0 12px}.login-panel .btn{flex:1}.busy{opacity:.65;pointer-events:none}.inline-status{margin-top:16px}.module-ready{border:1px solid #275c55;border-radius:12px;background:#16413755;padding:15px}.module-ready strong{color:#7de8cf}.info-list{margin:12px 0;padding-left:22px;font-size:12px;line-height:1.8;color:#aec7d0}.button-row .btn:focus-visible,.nav-item:focus-visible{outline:2px solid #a0f8e6;outline-offset:2px}.login-hero{margin-top:8px}.error-msg{min-height:19px;font-size:12px;color:#ffddad;margin-top:11px}.indicator{display:flex;gap:9px;align-items:center;font-size:12px;color:#a1daca;margin-bottom:13px}.indicator:before{content:'';width:7px;height:7px;background:#47e4bd;border-radius:50%}.status-guard{font-size:11px;border-radius:10px;background:#162f3f;color:#b6e1e4;padding:12px;margin:12px 0}input[type="password"]{letter-spacing:.7px}button:disabled{opacity:.55}
/* HF18: cards do Treinamento Digital */
.td-course,.td-module{display:flex;align-items:center;gap:12px;background:#102b3b;color:#f4ffff;border:1px solid #236176;border-radius:16px;padding:16px;text-align:left;width:100%;margin:10px 0;cursor:pointer;flex-wrap:wrap}
.td-course{display:flex;flex-direction:column;align-items:flex-start}.td-course strong{font-size:17px}.td-course small,.td-module small{color:#a3beca;display:block;margin-top:7px}.td-module>span:nth-child(2){flex:1}.td-index{display:grid;place-items:center;border-radius:11px;width:35px;height:35px;background:#17545d;font-weight:bold}.td-module:disabled{opacity:.5;cursor:not-allowed}.td-done{border-color:#16be93}.td-meter{display:block;width:100%;height:8px;background:#1a4f60;border-radius:10px;overflow:hidden;margin-top:12px}.td-meter span{display:block;background:#23d0ac;height:100%;border-radius:10px}.td-heading{margin:20px 0}.td-bullets{line-height:1.7;padding-left:20px}.td-question{border:1px solid #23516a;padding:14px;border-radius:13px;margin:18px 0}.td-question legend{font-weight:bold;line-height:1.4}.td-option{display:flex;gap:10px;align-items:flex-start;background:#123b4d;border-radius:8px;padding:10px;margin:6px 0}.td-option input{accent-color:#30d8b2;min-width:18px;min-height:18px}.td-refresh{margin:16px 0 32px}

/* HF19 historico + pendencias */
.td-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:13px 0 14px}
.td-overview>div{background:#122c3e;border:1px solid #28556a;border-radius:12px;text-align:center;padding:12px 3px}
.td-overview strong{font-size:22px;color:#65edcf;display:block}
.td-overview span{font-size:10px;color:#b9ccd5}
.td-filters{display:flex;gap:7px;overflow-x:auto;margin-bottom:15px;padding-bottom:5px}
.td-tab{background:#102b3b;color:#bcd5dc;border:1px solid #315167;white-space:nowrap;border-radius:100px;padding:9px 11px;font-size:11px}
.td-tab.is-selected{background:#49d5b6;color:#05202a;border-color:#49d5b6;font-weight:800}
.td-history{cursor:default;border-color:#2a465b}
.td-course .td-warning{background:#60442180;color:#f9d18d}
.td-course .td-pill{margin-bottom:0}

/* HF20: pendencias clicaveis, sem liberar material nao publicado */
.td-history{cursor:pointer;border-color:#34556c}
.td-ready{border-color:#339e8e;background:#113940}
.td-ready:focus-visible,.td-history:focus-visible{outline:3px solid #5ce6c9;outline-offset:3px}
.td-course-action{font-size:13px!important;color:#7df0d0!important;font-weight:800;margin-top:12px!important}
.td-history .td-course-action{color:#bdd1de!important}
.td-info-panel{margin-top:18px}
.td-info-panel h2{font-size:21px;line-height:1.35;margin:16px 0 10px}
.td-info-panel .status{margin:20px 0}
.td-info-panel .status p{margin:6px 0 0;color:inherit}
.td-info-panel .td-warning{background:#60442180;color:#f9d18d}


/* HF26: identidade mais leve, navegacao objetiva e foco em treinamentos.
   CSS aditivo para preservar telas, progresso, documentos e autenticacao. */
:root{--mz-bg:#071728;--mz-card:#102a3c;--mz-mint:#5be5c2;--mz-muted:#a8bdc9}
body{background:#071728}
.app-shell{background:linear-gradient(180deg,#0b2032 0,#081b2d 185px,#08192a 420px);box-shadow:0 8px 36px #0004}
.topbar{min-height:84px;padding:calc(16px + env(safe-area-inset-top)) 24px 17px;justify-content:flex-start;background:#0a1d2feb;border-bottom:1px solid #2d566244}
.brand{font-size:23px;gap:12px}.brand-mark{width:44px;height:44px;font-size:25px;border-radius:15px;background:linear-gradient(145deg,#1c5464,#123147)}
.brand small{font-size:9px;letter-spacing:2.6px;margin-top:6px}
.page{padding:29px 23px 45px}
.page-head{margin-bottom:23px}.page-head h1{font-size:28px;line-height:1.15;letter-spacing:-.85px;margin:8px 0 10px}.page-head p{font-size:13px;line-height:1.65}
.eyebrow{font-size:10px;letter-spacing:2.1px}
.panel{background:linear-gradient(145deg,#112b3f,#0e2638);border:1px solid #3156699e;border-radius:18px;padding:20px}
.btn{border-radius:12px;min-height:49px;font-size:13px}
.btn.secondary{background:#17364a}
.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr));padding:12px 8px calc(10px + env(safe-area-inset-bottom));background:#0b2130fa;border-top-color:#32627577;box-shadow:0 -9px 35px #03121a77}
.nav-item{min-height:54px;justify-content:center;font-size:10px;gap:4px;border-radius:11px}
.nav-item.active{color:#77efd2;background:#1c594c31}.nav-symbol{font-size:22px}
.text-accent{color:#5be5c2}
.dashboard-intro h1,.access-page h1{font-size:31px;line-height:1.14;letter-spacing:-1.12px;margin:12px 0}
.dashboard-intro p,.access-page>p{font-size:14px;color:#afc5d1;line-height:1.62;margin:0 0 23px}
.dashboard-primary{position:relative;isolation:isolate;overflow:hidden;border:1px solid #368c82;background:linear-gradient(135deg,#163e46,#103746 62%,#0c293c);border-radius:23px;padding:24px 22px 22px;margin-top:15px}
.dashboard-primary:before{content:'';position:absolute;z-index:-1;width:195px;height:195px;right:-78px;top:-70px;border-radius:100%;background:radial-gradient(circle,#56ddad31,transparent 70%)}
.dashboard-kicker{display:flex;align-items:center;gap:9px;color:#a4f4dc;font-size:11px;font-weight:800;letter-spacing:.3px}
.online-dot{height:8px;width:8px;border-radius:50%;background:#50e4b7;box-shadow:0 0 0 4px #55e4b71d}
.dashboard-primary h2{font-size:27px;line-height:1.18;margin:18px 0 7px;letter-spacing:-.85px}
.dashboard-primary p{color:#bcd5d8;font-size:13px;line-height:1.6;max-width:280px;margin:0 0 21px}
.dashboard-primary .btn{min-height:52px;justify-content:space-between;padding:0 19px;font-size:14px}
.dashboard-illustration{position:absolute;right:24px;top:40px;color:#89f8d5;opacity:.7;font-size:43px}
.section-title{margin:31px 0 14px}.section-title h2{font-size:19px}
.feature-grid.home-services{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.feature-grid.home-services .feature{min-height:128px;border:1px solid #325267;border-radius:18px;padding:18px;gap:8px;background:#102a3d}
.feature-grid.home-services .feature strong{font-size:15px}.feature-grid.home-services .feature small{font-size:11px;line-height:1.5}
.feature-grid.home-services .feature .icon{font-size:27px;color:#65e9c7}
.feature-soon{margin-top:14px;display:flex;align-items:center;gap:13px;background:#0c2232;border:1px dashed #365263;border-radius:15px;padding:14px 15px;color:#95abba}
.feature-soon strong{font-size:12px;display:block;color:#b5cbd4}.feature-soon small{font-size:11px;color:#7d99a9;display:block;margin-top:3px}
.soon-icon{font-size:23px;opacity:.65}.soon-label{margin-left:auto;white-space:nowrap;font-size:10px;color:#a9bdc6;padding:5px 8px;border-radius:999px;background:#24415468}
.dashboard-footnote{margin-top:23px;color:#829dad;font-size:11px;line-height:1.6}
.access-page .login-panel{margin-top:16px}.access-page .login-panel .helper{line-height:1.6}
.login-heading{display:flex;align-items:flex-start;gap:12px;padding-bottom:9px}
.login-heading h2{margin:1px 0 2px;font-size:20px}.login-heading .helper{margin:5px 0}
.login-lock{background:#245f56;color:#81efd0;border-radius:13px;width:37px;height:37px;display:grid;place-items:center;font-size:14px;flex-shrink:0}
.label-hint{font-weight:500;color:#95b4c4}.login-panel .field{min-height:54px;font-size:16px;margin-bottom:15px}
.access-page .button-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.access-page .button-row .btn{padding:12px 8px;font-size:12px;min-height:52px;line-height:1.3}
.access-page .footnote{font-size:11px;line-height:1.6;margin-top:17px}
.status-guard{background:#0e2735;color:#94b7c2;border-left:2px solid #42bea7;margin:21px 0;font-size:11px;line-height:1.65}
.td-course,.td-module{border-radius:17px;box-shadow:0 2px 12px #031a242b}.td-overview>div{border-radius:14px}.td-course .td-course-action{color:#82f1d3!important}
@media(min-width:560px){.app-shell{margin:24px auto;min-height:calc(100svh - 48px);border-radius:22px}.bottom-nav{bottom:24px;border-radius:0 0 22px 22px}}
@media(max-width:335px){.page{padding:24px 16px}.dashboard-intro h1,.access-page h1{font-size:27px}.soon-label{display:none}.brand{font-size:20px}}

/* HF27: indicacao clara de prazo previsto sem confundir comprovante com certificado */
.hf27-cert-hint{display:flex;flex-direction:column;gap:7px;border:1px solid #397f79;border-radius:14px;background:#102d37;padding:15px 17px;margin:14px 0 18px;color:#d5f2e9;line-height:1.5;}
.hf27-cert-hint strong{color:#7be0c3;font-weight:800;font-size:14px;}
.hf27-cert-hint span{color:#bdd5df;font-size:13px;}

/* HF28-R6: saudacao do nome vindo exclusivamente de sessao autorizada */
.mz-r6-welcome{color:#60e5cf;font-weight:750;font-size:1.3rem;line-height:1.45;overflow-wrap:anywhere;margin:12px 0 16px}

/* HF28: versao do proprio bundle carregado na tela Perfil. */
.mz-version-row strong{color:#77efd2;font-weight:850;letter-spacing:.1px}
.mz-version-build span,.mz-version-build strong{font-size:12px;color:#90adbb}
.mz-version-row,.mz-version-build{min-width:0}
.mz-version-row strong,.mz-version-build strong{overflow-wrap:anywhere;text-align:right}

/* HF29: categorias de documentos, sem tocar nas telas existentes */
.mz-doc-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 23px}.mz-doc-tabs button{font:inherit;min-height:66px;border:1px solid rgba(114,184,194,.34);border-radius:14px;background:#0c2436;color:#d5e3ea;font-weight:750;padding:10px;cursor:pointer}.mz-doc-tabs button.active{border:2px solid #59e7c8;background:linear-gradient(130deg,#103e44,#0b2839);color:#78f2d4}.mz-os-card{margin:14px 0;padding:18px}.mz-os-top{display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}.mz-os-card .button-row{display:flex;flex-wrap:wrap;margin-top:18px;gap:10px}.mz-os-card .button-row button{flex:1;min-width:135px}@media(max-width:390px){.mz-os-card .button-row{flex-direction:column}}
