@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#102035;--red:#ef2737;--muted:#718096;--line:#dfe5ed;--background:#f4f6f9}*{box-sizing:border-box}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--navy);background:var(--background)}button,input,select{font:inherit}button,a{touch-action:manipulation}a{color:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ef273755;outline-offset:3px}.login-layout{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}.brand-panel{background:radial-gradient(ellipse at 0 80%,#243b59 0,transparent 60%),#102035;color:#fff;position:relative;padding:40px 12% 28px;overflow:hidden}.brand-panel:after{content:'';position:absolute;right:-200px;top:15%;width:520px;height:520px;border:1px solid #ffffff0a;transform:rotate(35deg);pointer-events:none}.brand img{width:136px;height:136px;object-fit:contain}.brand-copy{position:relative;z-index:1;margin:30px 0 70px;max-width:510px}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:800}.brand-copy .eyebrow{color:#d0dae8}.brand-copy h1{font-size:clamp(30px,3.3vw,49px);line-height:1.18;letter-spacing:-1.8px;margin:20px 0}.brand-copy>p{color:#aebed0;font-size:14px;line-height:1.9;max-width:370px}.brand-line{width:50px;height:3px;background:var(--red);margin:32px 0}.brand-detail{display:flex;gap:18px;align-items:center;margin:20px 0}.brand-detail>span{font-size:11px;border:1px solid #ffffff25;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;color:#aebed0}.brand-detail p{margin:0;font-size:11px;color:#8ea3bb;line-height:1.8}.brand-detail strong{font-size:12px;color:#dce6f1;font-weight:500}.brand-panel footer{font-size:9px;letter-spacing:1.4px;position:relative;z-index:1;color:#abb8c8}.brand-panel footer span{display:block;font-size:10px;letter-spacing:0;margin-top:8px;color:#7f94ac}.form-panel{display:grid;place-items:center;padding:70px 50px;background:#fff;position:relative}.login-box{width:100%;max-width:380px}.red{color:var(--red)}h2{font-size:29px;letter-spacing:-1px;margin:14px 0}.muted{color:var(--muted);font-size:13px;line-height:1.85}.login-box form{margin-top:32px}label{display:block;font-size:11px;font-weight:800;margin:20px 0 9px}input:not([type=checkbox]),select{width:100%;padding:14px;border:1px solid var(--line);border-radius:9px;background:#fbfcfe;min-height:47px;font-size:13px;color:var(--navy)}input::placeholder{color:#a3adbb}.label-row{display:flex;align-items:baseline;justify-content:space-between}.text-button{background:none;border:0;color:var(--muted);padding:0;font-size:11px}.password-wrap{position:relative}.password-wrap input{padding-right:78px}.password-wrap button{position:absolute;right:13px;top:15px;border:0;background:transparent;font-size:10px;color:var(--muted)}.check{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:500;color:var(--muted);line-height:1.5}.check input{accent-color:var(--red)}.primary{background:var(--red);color:#fff;padding:14px 20px;border:0;border-radius:9px;font-weight:800;font-size:12px}.login-box .primary{width:100%;margin-top:10px}.primary:hover:not(:disabled){background:#d71b2a}.message{font-size:12px;line-height:1.7;min-height:22px;color:#bd2330}.message[data-tipo=ok]{color:#16704d}.subscription-note{display:flex;gap:10px;border-top:1px solid var(--line);margin-top:24px;padding-top:23px}.subscription-note p{margin:0;color:var(--muted);font-size:10px;line-height:1.8}.status-dot{height:6px;width:6px;background:var(--red);border-radius:50%;margin-top:7px;flex-shrink:0}.login-bottom{font-size:9px;color:#9aa6b6;margin-top:22px}.form-footer{position:absolute;bottom:25px;font-size:9px;color:#a2aebd;letter-spacing:1px}.app-header{padding:22px 5%;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{font-size:21px;font-weight:800;letter-spacing:2px}.wordmark span{color:var(--red)}.app-header small{display:block;color:var(--muted);font-size:9px;letter-spacing:1px;margin-top:5px}.outline{border:1px solid var(--line);background:#fff;padding:10px 15px;border-radius:8px;text-decoration:none;font-size:11px;font-weight:700}.container{max-width:1200px;margin:38px auto;padding:0 25px}.intro{margin-bottom:30px}.intro h1{font-size:30px;letter-spacing:-1px;margin:10px 0}.card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:25px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card .eyebrow{font-size:9px}.card h2{font-size:20px;margin:15px 0}.card p{font-size:12px;color:var(--muted);line-height:1.8}.card a{display:inline-block;margin-top:15px}.account{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:25px}.account p{margin:3px 0}.badge{background:#eaf5ee;color:#196c48;border-radius:20px;padding:8px 12px;font-size:10px;font-weight:700}.admin-grid{display:grid;grid-template-columns:320px 1fr;gap:24px}.admin-grid h2{font-size:19px;margin-top:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{text-align:left;font-size:10px;background:#f2f5f9;color:#607087}th,td{padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:top}td small{display:block;color:var(--muted);margin-top:5px}.table-actions{display:flex;gap:6px;flex-wrap:wrap}.table-actions button{font-size:10px}.credential{background:#f1f7f3;border:1px solid #c9dfd1;border-radius:9px;padding:15px;font-size:11px;line-height:1.8;margin-top:20px;overflow-wrap:anywhere}.credential code{display:block;font-size:14px;user-select:all}.hidden,[hidden]{display:none!important}.loading{padding:30px;color:var(--muted)}.small{font-size:11px;color:var(--muted);line-height:1.7}dialog{border:1px solid var(--line);border-radius:14px;padding:25px;max-width:400px;width:90%}dialog::backdrop{background:#10203588}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@media(max-width:1000px){.brand-panel{padding:35px 10%}.admin-grid{grid-template-columns:1fr}}@media(max-width:700px){.login-layout{display:block}.brand-panel{padding:20px 25px}.brand img{width:100px;height:86px}.brand-copy{margin:5px 0 20px}.brand-copy h1{font-size:28px;letter-spacing:-1px;margin:10px 0}.brand-copy>p{font-size:12px}.brand-detail,.brand-line,.brand-panel footer{display:none}.form-panel{padding:40px 25px 70px}.cards{grid-template-columns:1fr}.container{padding:0 18px}.account{align-items:flex-start;flex-direction:column}.app-header{padding:18px}.intro h1{font-size:25px}.login-box h2{font-size:25px}}
