:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#243047;background:#f4f6fa;font-size:16px;--blue:#245cc4;--navy:#173864;--border:#dce4f0;--muted:#66748b}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}[hidden]{display:none!important}
.brand{padding:28px 36px;display:flex;align-items:center;gap:12px;max-width:1440px;margin:auto}.brand-icon{background:var(--navy);color:white;width:40px;height:40px;border-radius:10px;display:grid;place-items:center}.brand strong{display:block;font-size:17px;letter-spacing:-.2px}.brand small{font-size:12px;color:var(--muted)}
main{display:grid;grid-template-columns:1fr 436px;gap:80px;align-items:center;max-width:1080px;margin:44px auto 64px;padding:0 24px}.intro h1{font-size:40px;line-height:1.15;font-weight:650;letter-spacing:-1.2px;margin:0 0 20px;max-width:430px}.intro p{max-width:415px;font-size:16px;line-height:1.65;color:var(--muted);margin:0}.product-tags{display:flex;gap:10px;margin-top:28px}.product-tags span{border:1px solid #ccd8eb;border-radius:6px;padding:6px 12px;color:var(--navy);font-size:13px;background:#edf2fa}
.card{background:white;border:1px solid #e0e6ef;border-radius:14px;padding:32px;box-shadow:0 8px 28px #17386409}.card h2{font-size:26px;letter-spacing:-.5px;margin:0 0 8px}.subtitle{color:var(--muted);font-size:14px;line-height:1.55;margin:0 0 25px}.field{margin-bottom:20px}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.field input{width:100%;height:48px;border:1px solid #b9c5d5;border-radius:7px;background:#fff;padding:12px 14px;color:#243047}.field input::placeholder{color:#8d98a9}.password-wrap{position:relative}.password-wrap input{padding-right:58px}.eye{position:absolute;right:4px;top:4px;width:40px;height:40px;border:0;background:transparent;color:var(--muted);border-radius:5px;display:grid;place-items:center}.eye:hover{background:#f2f6fc}.primary{width:100%;height:48px;border:1px solid var(--blue);background:var(--blue);color:white;border-radius:7px;font-weight:600;font-size:15px}.primary:hover{background:#174da9}.help-button{display:block;margin:20px auto 0;padding:4px;background:none;border:0;color:var(--blue);font-size:14px}.hint{font-size:13px;color:var(--muted);line-height:1.55;margin:16px 0 0}.card-footer{padding-top:22px;margin-top:24px;border-top:1px solid #e6ebf3;font-size:12px;line-height:1.5;color:var(--muted)}.alert{padding:12px 14px;margin-bottom:20px;border:1px solid;border-radius:7px;font-size:13px;line-height:1.55}.alert.error{background:#fff3f3;color:#922d38;border-color:#f0ccd0}.alert.info{background:#eff5ff;color:#254c85;border-color:#cedff7}.alert.warning{background:#fff9e9;color:#765522;border-color:#eedeb5}.alert.success{background:#eaf7ef;color:#256441;border-color:#c9e4d3}
.section-links{display:grid;gap:10px}.section-button{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--border);border-radius:8px;padding:14px;color:#243047;font-size:14px;text-align:left}.section-button:hover{border-color:var(--blue);background:#f8faff}.section-button span:last-child{color:var(--blue)}.identity{display:inline-block;background:#eef3fb;border-radius:20px;font-size:12px;color:var(--navy);padding:4px 10px;margin-bottom:20px}.logout{margin-top:18px;border:0;background:transparent;color:var(--blue);padding:0;font-size:14px}.caps{font-size:12px;color:#8a6323;padding-top:6px}.page-footer{font-size:12px;color:#7c8899;max-width:1080px;margin:0 auto;padding:0 24px 28px;display:flex;justify-content:space-between;gap:16px;line-height:1.5}:focus-visible{outline:3px solid #eab830;outline-offset:3px}
main.account-layout{display:block;max-width:740px;margin-top:22px}.section-button{text-decoration:none}.section-button strong{font-weight:600}.section-button small{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:4px}.logout{display:inline-block;text-decoration:none}.logout:hover{text-decoration:underline}
@media(max-width:980px){main{gap:40px;grid-template-columns:1fr 410px;margin:30px auto 50px}.intro h1{font-size:32px}.brand{padding:24px}}
@media(max-width:760px){.brand{padding:22px 18px}.brand strong{font-size:16px}main{display:block;margin:8px auto 32px;padding:0 18px;max-width:472px}.intro{display:none}.card{padding:26px 22px}.card h2{font-size:24px}.page-footer{padding:0 18px 24px;display:block;max-width:472px}}
