/* Login inspirado na floresta amazônica e na textura do bordado. */
.login-screen{position:relative;isolation:isolate;grid-template-columns:minmax(0,1fr) minmax(420px,43%);min-height:100svh;background:#203522 url('assets/login-floresta-ave-realista.png') center center/cover no-repeat;padding:36px 5%;gap:3vw}
.login-screen::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,25,15,.25),transparent 55%,rgba(8,25,15,.16))}
.login-screen .login-visual{min-height:0;padding:0;background:none;overflow:visible;justify-content:center}
.login-screen .login-visual::before,.login-screen .login-visual::after{display:none}
.login-screen .login-brand-crop{width:clamp(240px,29vw,440px);height:auto;aspect-ratio:2.1;transform:translateY(-20px)}
.login-screen .login-brand-crop img{filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}
.login-screen .login-copy,.login-screen .sewing-scene,.login-screen .login-video-stage{display:none}
.login-screen .login-visual-footer{left:0;right:0;bottom:0;color:#fff;text-shadow:0 1px 4px #142615}
.login-screen .login-form-side{align-self:center;min-height:0;padding:clamp(28px,3vw,48px);border:1px solid rgba(255,255,255,.55);border-radius:26px;background:rgba(246,248,234,.83);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 20px 65px rgba(8,25,15,.23)}
.login-screen .login-form-wrap{width:100%;max-width:460px}
.login-screen .login-form-wrap>h2{font-size:clamp(32px,3.1vw,48px);color:#20331c;margin-top:10px}
.login-screen .eyebrow{color:#4d602c;letter-spacing:.16em}
.login-screen .login-intro{color:#475443;margin:14px 0 26px}
.login-screen .login-field>span{font-size:12px;color:#293b24}
.login-screen .login-field>div{background:rgba(255,255,255,.82);border-color:rgba(83,99,60,.25);height:50px}
.login-screen .login-field input{font-size:13px}
.login-screen .login-options label,.login-screen .login-options button,.login-screen .login-help,.login-screen .login-help button{font-size:11px;color:#354629}
.login-screen .login-submit{height:52px;background:#53662e;font-size:13px;justify-content:center;gap:16px}
.login-screen .login-submit:hover{background:#405222}
.login-screen .login-help{border-color:rgba(67,84,46,.22);flex-wrap:wrap;margin-top:25px}
.login-screen .login-footer{color:#4c5b41;gap:12px;padding-top:26px}
.login-screen .login-footer button{color:#4c5b41}
@media(max-width:850px){.login-screen{grid-template-columns:minmax(0,1fr) minmax(350px,49%);padding:24px 3%;gap:2vw}.login-screen .login-form-side{padding:26px}.login-screen .login-brand-crop{width:clamp(220px,34vw,320px)}}
@media(max-width:650px){.login-screen{display:flex;flex-direction:column;justify-content:center;padding:24px 18px;background-position:40% center}.login-screen .login-visual{display:none}.login-screen .login-form-side{width:min(440px,100%);padding:28px 24px;background:rgba(246,248,234,.9)}.login-screen .login-mobile-logo{display:block;width:200px;height:88px;padding:0;background:none;margin:0 auto 20px}.login-screen .login-form-wrap>h2{font-size:34px}.login-screen .login-footer{font-size:9px}}
@media(max-height:700px) and (min-width:651px){.login-screen{padding-top:18px;padding-bottom:18px}.login-screen .login-form-side{padding:24px 32px}.login-screen .login-intro{margin:10px 0 18px}.login-screen .login-help{margin-top:18px;padding-top:14px}.login-screen .login-footer{padding-top:18px}}

/* Vidro translúcido sobre o verde profundo da floresta. */
.login-screen .login-form-side{background:rgba(225,237,217,.18);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);border-color:rgba(242,250,229,.4);box-shadow:0 22px 65px rgba(0,15,4,.35),inset 0 1px 0 rgba(255,255,255,.2)}
.login-screen .login-form-wrap>h2{color:#f5f8e9;text-shadow:0 2px 12px rgba(0,15,4,.25)}
.login-screen .eyebrow{color:#dce9ba}
.login-screen .login-intro,.login-screen .login-field>span,.login-screen .login-options label,.login-screen .login-options button,.login-screen .login-help,.login-screen .login-help button,.login-screen .login-footer,.login-screen .login-footer button{color:#f0f5e7}
.login-screen .login-field>div{background:rgba(248,251,242,.86);border-color:rgba(255,255,255,.55)}
.login-screen .login-submit{background:#667d36;border:1px solid rgba(215,232,181,.25)}
.login-screen .login-submit:hover{background:#526a29}
.login-screen .login-help{border-color:rgba(233,243,218,.3)}
.login-screen .field-error{color:#ffe0ce}
@media(max-width:650px){.login-screen .login-form-side{background:rgba(207,224,193,.22)}}

/* Direção visual: profundidade, vidro e tipografia com foco no acesso. */
.login-screen{font-family:'Segoe UI',Arial,sans-serif;padding-left:6%;padding-right:6%;gap:5vw}
.login-screen::before{background:linear-gradient(90deg,rgba(3,18,10,.2) 0%,rgba(4,20,11,.06) 36%,rgba(3,17,9,.35) 72%,rgba(3,17,9,.4) 100%)}
.login-screen::after{content:'';position:absolute;inset:0 0 0 56%;z-index:-1;backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px);mask-image:linear-gradient(90deg,transparent,#000 35%);pointer-events:none}
.login-screen .login-brand-crop{width:clamp(240px,27vw,410px);transform:translateY(-15px)}
.login-screen .login-brand-crop img{filter:contrast(1.07) saturate(.88) drop-shadow(0 3px 2px rgba(5,15,6,.3)) drop-shadow(0 12px 28px rgba(0,0,0,.35))}
.login-screen .login-form-side{position:relative;border-radius:24px;border:1px solid rgba(232,237,211,.3);background:linear-gradient(145deg,rgba(231,237,214,.2),rgba(136,157,120,.08));backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);box-shadow:0 28px 70px rgba(0,12,5,.34),inset 0 1px 0 rgba(255,255,242,.24),inset 0 -1px 0 rgba(255,255,242,.06);padding:clamp(30px,3.3vw,50px)}
.login-screen .login-form-wrap>h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,3.35vw,50px);font-weight:400;letter-spacing:-.035em;line-height:1.12;margin-top:12px;margin-bottom:0;color:#faf9ed}
.login-screen .eyebrow{font-size:10px;letter-spacing:.19em;font-weight:700;color:#e0d4a6}
.login-screen .login-intro{font-size:13px;line-height:1.65;color:#e2e9dc;margin:16px 0 30px;max-width:360px}
.login-screen .login-field{gap:9px;margin-bottom:19px}
.login-screen .login-field>span{font-size:12px;font-weight:600;color:#f5f5e9}
.login-screen .login-field>div{height:52px;border-radius:10px;background:rgba(251,252,247,.94);border:1px solid rgba(255,255,255,.72);box-shadow:0 2px 5px rgba(5,20,10,.1),inset 0 1px 0 #fff}
.login-screen .login-field input{font-size:14px;color:#253526;padding-left:44px}
.login-screen .login-field input::placeholder{color:#697366;opacity:1}
.login-screen .login-field svg{color:#64735e}
.login-screen .login-field>div>button{font-size:11px;color:#42552d;font-weight:600;padding:8px}
.login-screen .login-field>div:focus-within{border-color:#d7dbad;box-shadow:0 0 0 3px rgba(218,227,170,.26)}
.login-screen .login-options{margin:5px 0 25px;gap:10px}
.login-screen .login-options label,.login-screen .login-options button{font-size:12px}
.login-screen .login-options input{width:15px;height:15px;accent-color:#819b43}
.login-screen .login-submit{height:54px;border-radius:10px;background:linear-gradient(120deg,#7b963f,#627c31);border:1px solid rgba(212,228,162,.45);box-shadow:0 8px 22px rgba(15,31,8,.27),inset 0 1px 0 rgba(255,255,220,.18);font-size:14px;font-weight:650;letter-spacing:.015em;transition:background .2s,box-shadow .2s,transform .2s}
.login-screen .login-submit:hover{background:linear-gradient(120deg,#88a548,#708b39);box-shadow:0 10px 25px rgba(15,31,8,.35)}
.login-screen .login-submit:active{transform:translateY(1px)}
.login-screen .login-submit svg{width:19px;height:19px}
.login-screen button:focus-visible,.login-screen input[type=checkbox]:focus-visible{outline:2px solid #f1dfa9;outline-offset:4px}
.login-screen .login-help{font-size:12px;color:#dfe5d7;border-color:rgba(236,234,208,.2);margin-top:27px;padding-top:21px;gap:5px}
.login-screen .login-help button{font-size:12px;color:#f1e5bf}
.login-screen .login-footer{font-size:10px;color:#d3ddcc;padding-top:27px}
.login-screen .login-footer button{font-size:10px;color:#d3ddcc}
.login-screen .login-visual-footer{font-size:11px;color:#e0e7d6}
@media(max-height:720px) and (min-width:651px){.login-screen .login-form-side{padding:28px 32px}.login-screen .login-intro{margin:12px 0 22px}.login-screen .login-field{margin-bottom:15px}.login-screen .login-help{margin-top:20px;padding-top:16px}.login-screen .login-footer{padding-top:20px}}
@media(max-width:850px){.login-screen{padding-left:3%;padding-right:3%;gap:3vw}.login-screen .login-form-side{padding:26px}.login-screen .login-options label,.login-screen .login-options button{font-size:11px}}
@media(max-width:650px){.login-screen{padding:24px 18px}.login-screen::before{background:rgba(3,18,10,.35)}.login-screen .login-form-side{padding:30px 24px;background:linear-gradient(145deg,rgba(231,237,214,.2),rgba(136,157,120,.12))}.login-screen .login-form-wrap>h2{font-size:36px}.login-screen .login-mobile-logo img{filter:contrast(1.07) saturate(.88) drop-shadow(0 4px 8px rgba(0,0,0,.3))}.login-screen .login-help{font-size:11px}.login-screen .login-help button{font-size:11px}}

.login-screen .login-brand-crop{width:clamp(260px,29vw,440px);transform:translateY(-10px)}

.login-screen .login-bird-video{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.login-screen .login-bird-video[hidden]{display:none}
.login-bird-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.login-bird-video .bird-reaction{opacity:0;transition:opacity .4s ease}
.login-bird-video.reacting .bird-reaction{opacity:1}
.login-screen .bird-motion-control{position:absolute;bottom:28px;left:0;border:1px solid rgba(240,245,225,.35);border-radius:20px;padding:7px 12px;background:rgba(8,28,14,.5);color:#e7eedb;font:11px 'Segoe UI',Arial;backdrop-filter:blur(5px)}
.login-screen .bird-motion-control[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.login-bird-video{display:none!important}}