*{box-sizing:border-box}.auth-page{margin:0;min-height:100vh;background:#f4f7fb;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#142033}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.15fr) minmax(380px,.85fr)}.auth-brand{background:linear-gradient(145deg,#081a32,#0d2b4f);color:#fff;padding:54px clamp(34px,6vw,92px);display:flex;flex-direction:column;justify-content:space-between;gap:60px}.auth-brand .brand{display:flex;align-items:center;gap:12px}.auth-brand .mark{width:48px;height:48px;border:1px solid #b9d3ef;border-radius:12px;display:grid;place-items:center;font-size:20px}.auth-brand .brand strong,.auth-brand .brand small{display:block}.auth-brand .brand small{color:#a9bdd2;margin-top:3px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.16em;color:#80bfff}.auth-brand h1{font-size:clamp(32px,4vw,58px);line-height:1.04;max-width:760px;margin:14px 0 18px}.auth-brand p{color:#bdcada;max-width:650px;font-size:17px;line-height:1.7}.student-link{display:flex;align-items:center;gap:14px;text-decoration:none;color:#fff;padding:16px 18px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.06);max-width:390px}.student-link svg:first-child{width:28px}.student-link span{flex:1}.student-link b,.student-link small{display:block}.student-link small{color:#aebed0;margin-top:3px}.auth-card{align-self:center;justify-self:center;width:min(430px,calc(100% - 40px));background:#fff;border:1px solid #e4eaf1;border-radius:22px;padding:38px;box-shadow:0 20px 60px rgba(23,42,72,.1)}.auth-icon{width:52px;height:52px;border-radius:14px;background:#e9f3ff;color:#1769aa;display:grid;place-items:center}.auth-card h2{font-size:27px;margin:20px 0 6px}.auth-card>p{color:#6d7888;margin:0 0 26px}.auth-card label{font-size:13px;font-weight:750;display:block;margin:15px 0 7px}.input-icon{position:relative}.input-icon>svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;color:#8090a3}.input-icon input{width:100%;height:48px;border:1px solid #d9e1eb;border-radius:11px;padding:0 45px;font-size:15px;outline:none}.input-icon input:focus{border-color:#2b78b8;box-shadow:0 0 0 3px #e7f2fc}.eye{position:absolute;right:8px;top:7px;border:0;background:transparent;width:34px;height:34px;color:#78889a}.eye svg{width:17px}.login-btn{width:100%;height:49px;margin-top:22px;border:0;border-radius:11px;background:#0b2a4b;color:#fff;font-weight:800;font-size:14px;display:flex;gap:9px;align-items:center;justify-content:center;cursor:pointer}.login-btn svg{width:18px}.login-error{background:#fff0f0;border:1px solid #f3c6c6;color:#a02d2d;padding:11px 13px;border-radius:10px;font-size:13px}.login-note{margin-top:18px;color:#7c8795;font-size:11px;line-height:1.5;display:flex;gap:7px}.login-note svg{width:15px;flex:none}.student-page{background:#f5f7fb;min-height:100vh;padding:30px 18px}.student-wrap{max-width:900px;margin:auto}.student-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.student-top .brand{display:flex;gap:10px;align-items:center}.student-top .mark{width:42px;height:42px;background:#0b2a4b;color:#fff;border-radius:10px;display:grid;place-items:center}.student-top strong,.student-top small{display:block}.student-top small{color:#778596}.student-card{background:#fff;border:1px solid #e1e7ef;border-radius:18px;overflow:hidden;box-shadow:0 12px 40px rgba(26,45,74,.06)}.student-hero{padding:30px;border-bottom:1px solid #e7ecf2}.student-hero h1{margin:0 0 8px;font-size:28px}.student-hero p{margin:0;color:#697789}.student-form{padding:30px}.student-form .row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.student-form label{display:block;font-size:12px;font-weight:800;margin:0 0 7px}.student-form input,.student-form select{width:100%;height:44px;border:1px solid #d8e0e9;border-radius:9px;padding:0 12px;font-size:14px}.student-form .field{margin-bottom:15px}.student-submit{border:0;background:#0b2a4b;color:#fff;border-radius:10px;padding:14px 20px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;cursor:pointer}.student-success{padding:40px;text-align:center}.student-success .ok{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:#e8f8ee;color:#27894d}.student-success .ok svg{width:32px}@media(max-width:800px){.auth-shell{grid-template-columns:1fr}.auth-brand{min-height:390px;padding:32px 24px}.auth-brand h1{font-size:36px}.auth-card{margin:28px auto}.student-form .row{grid-template-columns:1fr}.student-top{align-items:flex-start}.student-page{padding:18px 12px}}/* Cadastro do aluno inspirado no layout de referência */
.student-reference{padding:0;background:#edf6ff;color:#092b58}.student-ref-top{height:96px;background:#fff;border-bottom:1px solid #dbe7f4;display:flex;align-items:center;justify-content:space-between;padding:0 36px}.student-ref-title{display:flex;align-items:center;gap:16px}.student-ref-title h1{font-size:24px;margin:0 0 4px;color:#082a55}.student-ref-title p{margin:0;color:#7b8da8;font-size:14px}.ref-icon,.mini-icon{display:grid;place-items:center;background:#e7f3ff;color:#0876ee;border-radius:14px}.ref-icon{width:52px;height:52px}.ref-icon svg{width:25px}.mini-icon{width:48px;height:48px;border-radius:13px;flex:none}.mini-icon svg{width:22px}.ref-close{height:46px;padding:0 18px;border:1px solid #c9dbef;border-radius:12px;display:flex;align-items:center;gap:10px;text-decoration:none;color:#183b64;font-weight:800;font-size:13px}.ref-close svg{width:17px}.student-ref-main{width:min(1120px,calc(100% - 32px));margin:28px auto 60px}.cpf-check{border:1px solid #c9e1fa;background:#f3f9ff;border-radius:17px;padding:22px 24px;margin-bottom:18px;box-shadow:0 8px 26px rgba(44,102,160,.06)}.cpf-check-head{display:flex;gap:16px;align-items:center;margin-bottom:16px}.cpf-check-head b,.cpf-check-head span{display:block}.cpf-check-head b{font-size:16px}.cpf-check-head span{font-size:13px;color:#7d91ad;margin-top:4px}.cpf-check-row{display:grid;grid-template-columns:1fr 190px;gap:12px;margin-left:64px}.cpf-check-row button{height:52px;border:0;border-radius:11px;background:#1977e8;color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer}.cpf-check-row button svg{width:18px}.verify-result{display:none;margin:10px 0 0 64px;font-size:12px}.verify-result.show{display:block}.verify-result.warn{color:#a16207}.verify-result.ok{color:#166534}.student-ref-card{background:#fff;border:1px solid #dbe5f0;border-radius:17px;padding:27px 28px;box-shadow:0 12px 35px rgba(39,83,130,.07)}.ref-card-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.ref-card-head h2{margin:0 0 4px;font-size:20px}.ref-card-head p{margin:0;color:#8394ac;font-size:12px}.ref-card-head p b{color:#ef4444}.student-ref-form{display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:16px}.ref-field label{display:block;font-size:14px;font-weight:800;margin:0 0 9px;color:#082a55}.ref-field label em{font-style:normal;color:#ef4444}.ref-input{height:54px;border:1px solid #bcd2ea;border-radius:10px;background:#fff;display:flex;align-items:center;position:relative;transition:.18s}.ref-input:focus-within{border-color:#2d83e9;box-shadow:0 0 0 3px #e8f3ff}.ref-input>svg{width:20px;color:#7d96b8;margin-left:18px;flex:none}.ref-input input{height:100%;min-width:0;flex:1;border:0;outline:0;background:transparent;padding:0 16px;color:#173b65;font-size:15px}.ref-input input::placeholder{color:#9aacC5}.ref-input>span{font-size:11px;color:#647a99;font-weight:700;margin-right:18px}.ref-input.disabled{background:#f4f8fc}.ref-input.disabled input{font-weight:700;color:#8ba0bc}.form-wide{grid-column:1/-1}.ref-actions{border-top:1px solid #edf1f6;margin-top:8px;padding-top:22px;display:flex;align-items:center;justify-content:space-between}.ref-actions small{color:#7285a0}.ref-actions>div{display:flex;gap:12px}.ref-cancel,.ref-save{height:46px;border-radius:10px;padding:0 22px;display:flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:13px;text-decoration:none}.ref-cancel{border:1px solid #bcd0e7;color:#143a65;background:#fff}.ref-save{border:0;background:#1977e8;color:#fff;cursor:pointer}.ref-cancel svg,.ref-save svg{width:18px}.ref-success{background:#fff;border:1px solid #dbe5f0;border-radius:17px;box-shadow:0 12px 35px rgba(39,83,130,.07)}
@media(max-width:760px){.student-ref-top{height:auto;min-height:86px;padding:16px}.student-ref-title h1{font-size:19px}.student-ref-title p{font-size:12px}.ref-icon{width:44px;height:44px}.ref-close{padding:0 12px;height:40px}.ref-close{font-size:0}.ref-close svg{width:19px}.student-ref-main{width:calc(100% - 20px);margin:14px auto 30px}.cpf-check{padding:17px}.cpf-check-row{grid-template-columns:1fr;margin-left:0}.cpf-check-row button{height:48px}.verify-result{margin-left:0}.student-ref-card{padding:20px 15px}.student-ref-form{grid-template-columns:1fr;gap:14px}.form-wide{grid-column:auto}.ref-card-head h2{font-size:18px}.ref-input{height:50px}.ref-actions{display:block}.ref-actions small{display:block;margin-bottom:14px}.ref-actions>div{display:grid;grid-template-columns:1fr 1.35fr}.ref-cancel,.ref-save{padding:0 10px}.mini-icon{width:42px;height:42px}}
