:root{--teal:#2e8b7f;--teal-600:#237065;--teal-700:#1d5a52;--orange:#f76a0c;--orange-600:#d8560a;--cream:#fff7f0;--ink:#1f2430;--body:#3a4150;--muted:#5b6470;--line:#efe7de}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--body);background:var(--cream);-webkit-font-smoothing:antialiased;font-family:Nunito,system-ui,-apple-system,Segoe UI,Arial,sans-serif}.auth{grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}.brand{color:#fff;background:linear-gradient(150deg, var(--teal) 0%, var(--teal-700) 100%);flex-direction:column;justify-content:space-between;padding:3rem;display:flex;position:relative;overflow:hidden}.brand .blob{filter:blur(46px);opacity:.5;pointer-events:none;border-radius:50%;position:absolute}.brand .b1{background:#f9a24f;width:20rem;height:20rem;top:-6rem;right:-5rem}.brand .b2{opacity:.4;background:#6fc7b6;width:16rem;height:16rem;bottom:-4rem;left:-4rem}.brand-logo{z-index:1;align-items:center;display:inline-flex;position:relative}.brand-logo-img{width:auto;height:3.52rem;display:block}.brand-mid{z-index:1;max-width:26rem;position:relative}.brand-title{letter-spacing:-.02em;font-size:2.6rem;font-weight:800;line-height:1.1}.brand-title .hand{color:#fcc08c;font-family:Caveat,cursive;font-size:3.1rem;font-weight:700;display:inline-block}.brand-sub{color:#ffffffe6;margin-top:1rem;font-size:1.05rem;line-height:1.6}.brand-feats{flex-direction:column;gap:.7rem;margin-top:1.75rem;list-style:none;display:flex}.brand-feats li{color:#fffffff2;align-items:center;gap:.6rem;font-weight:600;display:flex}.brand-feats .ck{background:#ffffff2e;border-radius:50%;flex:none;place-items:center;width:1.5rem;height:1.5rem;display:inline-grid}.brand-foot{z-index:1;color:#ffffffb3;font-size:.85rem;position:relative}.form-side{flex-direction:column;justify-content:center;align-items:center;padding:2.5rem 1.5rem;display:flex;position:relative}.card{width:100%;max-width:26rem}.mobile-logo{justify-content:center;margin-bottom:1.5rem;display:none}.mobile-logo-img{border-radius:12px;width:72%;max-width:16.5rem;height:auto;display:block}h1{color:var(--ink);letter-spacing:-.01em;font-size:1.7rem;font-weight:800}.sub{color:var(--muted);margin-top:.4rem;font-size:.98rem;line-height:1.5}form{margin-top:1.75rem}label{color:var(--ink);margin-top:1.1rem;margin-bottom:.4rem;font-size:.85rem;font-weight:700;display:block}label:first-of-type{margin-top:0}input{border:1.5px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;padding:.8rem .95rem;font-family:inherit;font-size:1rem;transition:all .15s}input::placeholder{color:#aab0ba}input:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 4px #2e8b7f24}input.code-input{letter-spacing:6px;text-align:center;font-size:1.3rem;font-weight:800}.hint{color:var(--muted);margin-top:.4rem;font-size:.78rem}.forgot{text-align:center;margin-top:.75rem;font-size:.85rem}.forgot a{color:var(--teal-700);font-weight:700;text-decoration:none}.forgot a:hover{text-decoration:underline}.forgot-sep{color:#c9c2b9;margin:0 .45rem}button[type=submit]{cursor:pointer;background:var(--orange);color:#fff;border:none;border-radius:9999px;width:100%;margin-top:1.5rem;padding:.85rem 1.5rem;font-family:inherit;font-size:1.02rem;font-weight:800;transition:all .18s;box-shadow:0 8px 24px #f76a0c47}button[type=submit]:hover{background:var(--orange-600);transform:translateY(-1px)}button[type=submit]:disabled{cursor:not-allowed;box-shadow:none;background:#f9a24f;transform:none}button[type=submit]:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.msg{border-radius:10px;margin-top:1rem;padding:.7rem .85rem;font-size:.88rem;font-weight:600;line-height:1.5}.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.success{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.success a{color:var(--teal-700);font-weight:800;text-decoration:underline}.divider{color:var(--muted);align-items:center;gap:.9rem;margin:1.5rem 0;font-size:.8rem;display:flex}.divider:before,.divider:after{content:"";background:var(--line);flex:1;height:1px}.centro{text-align:center}.social-row{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.75rem;display:grid}.social-row--um{grid-template-columns:1fr}.social-google{min-width:0;position:relative}.btn-social{cursor:pointer;width:100%;height:40px;color:var(--ink);border:1.5px solid var(--line);white-space:nowrap;background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:.6rem;padding:0 .9rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:all .15s;display:flex}.btn-social:hover,.social-google:hover .btn-social{background:#fffdfb;border-color:#d9cfc4}.btn-social:disabled{opacity:.6;cursor:not-allowed}.btn-social:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.google-gis{opacity:0;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.google-gis.ativo{pointer-events:auto}.social-google:focus-within .btn-social{outline:2px solid var(--teal);outline-offset:2px}.divider+form{margin-top:0}form+.link{margin-top:1.5rem}@media (width<=480px){.social-row{grid-template-columns:1fr}}.link{text-align:center;color:var(--muted);font-size:.92rem}.link a{color:var(--teal-700);font-weight:800;text-decoration:none}.link a:hover{text-decoration:underline}.back{text-align:center;margin-top:2rem;font-size:.85rem}.back a{color:var(--muted);font-weight:600;text-decoration:none}.back a:hover{color:var(--teal-700)}@media (width<=880px){.auth{grid-template-columns:1fr}.brand{display:none}.form-side{min-height:100vh}.mobile-logo{display:flex}}@media (prefers-reduced-motion:reduce){button[type=submit]:hover{transform:none}}
