/* ===== Trang đăng nhập ===== */
.login-page{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 8% 12%,rgba(221,171,75,.16) 0 2px,transparent 3px),radial-gradient(circle at 93% 86%,rgba(221,171,75,.12) 0 2px,transparent 3px),linear-gradient(135deg,#fff 0%,#fbf8f1 48%,#f4eddf 100%);background-size:72px 72px,92px 92px,auto}
.login-page::before,.login-page::after{content:'';position:fixed;z-index:0;width:430px;height:430px;border:1px solid rgba(197,145,49,.16);border-radius:50%;pointer-events:none}.login-page::before{top:-260px;left:-170px;box-shadow:0 0 0 34px rgba(197,145,49,.04),0 0 0 72px rgba(197,145,49,.025)}.login-page::after{right:-230px;bottom:-280px;box-shadow:0 0 0 40px rgba(197,145,49,.04),0 0 0 86px rgba(197,145,49,.025)}
.login-main{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;padding:42px 32px}.login-card{width:100%;max-width:1180px;min-height:680px;display:grid;grid-template-columns:52% 48%;overflow:hidden;border:1px solid rgba(76,55,20,.1);border-radius:22px;background:#fff;box-shadow:0 32px 80px rgba(56,39,12,.16)}
.login-card-top{padding:0;background:#fff}.login-banner{position:relative;overflow:hidden;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:54px 58px;background:radial-gradient(circle at 50% 33%,rgba(220,167,62,.12),transparent 34%),linear-gradient(155deg,#fff 0%,#fffdf8 58%,#f8f0df 100%);color:#201b13;text-align:center;border-right:1px solid rgba(184,134,11,.12)}.banner-rings{position:absolute;width:570px;aspect-ratio:1;left:50%;top:43%;transform:translate(-50%,-50%);border:1px solid rgba(184,134,11,.12);border-radius:50%;box-shadow:0 0 0 24px rgba(184,134,11,.055),0 0 0 50px rgba(184,134,11,.045),0 0 0 78px rgba(184,134,11,.035);pointer-events:none}.banner-company-logo,.banner-title{position:relative}.banner-company-logo{display:block;width:min(350px,82%);height:auto;margin:-38px auto -26px;mix-blend-mode:multiply}.banner-eyebrow{position:relative;margin:0 0 14px;color:#a87312;font-size:12px;font-weight:800;letter-spacing:.2em}.banner-title{margin:0;color:#201b13;font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,3.1vw,46px);font-weight:800;line-height:1.16;letter-spacing:-.025em}.banner-copy{position:relative;max-width:460px;margin:22px auto 0;color:#6f675b;font-size:14px;line-height:1.75}
.banner-features{position:relative;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:38px}.banner-feature{display:flex;align-items:center;gap:11px;padding:14px;border:1px solid rgba(184,134,11,.18);border-radius:12px;background:rgba(255,255,255,.68);text-align:left;box-shadow:0 8px 22px rgba(89,63,13,.05);backdrop-filter:blur(3px)}.feature-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:10px;background:rgba(226,176,68,.13);color:#a87312}.feature-icon svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.banner-feature strong,.banner-feature small{display:block}.banner-feature strong{color:#342d22;font-size:12px;font-weight:700}.banner-feature small{margin-top:2px;color:#857b6d;font-size:10px}
.login-card-body{display:flex;align-items:center;padding:58px 66px;background:linear-gradient(160deg,#fff 0%,#fff 60%,#fcfaf6 100%)}.login-content{width:100%;max-width:430px;margin:auto}.login-heading{margin-bottom:34px}.login-kicker{display:block;margin-bottom:9px;color:#b27a16;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.login-heading h2{color:#1b1813;font-size:30px;letter-spacing:-.035em}.login-heading p{margin:10px 0 0;color:#777168;font-size:14px}
.login-form{display:grid;gap:18px;align-content:start}.login-alert{padding:10px 14px;border:1px solid #f1c3bb;border-radius:8px;background:var(--incorrect-wash);color:var(--incorrect);font-size:14px}.login-alert[hidden],.help-text[hidden],.forgot-done[hidden],.login-form[hidden]{display:none}.login-field label{display:block;margin-bottom:7px;color:#403c36;font-size:13px;font-weight:600}.input-wrap{position:relative}.input-wrap svg{position:absolute;z-index:1;left:15px;top:50%;width:19px;transform:translateY(-50%);fill:none;stroke:#9a9287;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.form-control{width:100%;height:52px;padding:8px 44px;border:1px solid #ded9cf;border-radius:10px;background:#fdfcf9;font:inherit;font-size:15px;color:var(--ink)}.form-control.no-icon{padding-inline:16px}.form-control::placeholder{color:#9a958d}.form-control:focus{outline:none;border-color:#c58b24;box-shadow:0 0 0 3px rgba(197,139,36,.14);background:#fff}
.login-options{display:flex;align-items:center;justify-content:space-between;gap:16px}.form-check{display:flex;align-items:center;gap:8px;color:#625d55;font-size:13px;cursor:pointer}.form-check input{width:16px;height:16px;margin:0;accent-color:#b77b16}.btn-login{width:100%;height:52px;margin-top:5px;border:1px solid #b47a19;border-radius:10px;background:linear-gradient(135deg,#dca73e,#a96e11);color:#fff;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 10px 24px rgba(176,119,22,.22);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.btn-login span{margin-left:8px;font-size:19px;font-weight:400}.btn-login:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 13px 28px rgba(176,119,22,.28)}.btn-login[disabled]{opacity:.7;cursor:progress}.link-forgot{justify-self:start;padding:0;border:0;background:none;color:#a86f12;font:inherit;font-size:13px;cursor:pointer}.link-forgot:hover{color:#7f5005;text-decoration:underline}
.login-help{display:grid;grid-template-columns:22px 1fr;gap:9px;margin-top:32px;padding-top:20px;border-top:1px solid #eee9df;color:#847d73;font-size:11.5px}.login-help p{margin:0}.secure-icon{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#eef5e9;color:#5e8a43;font-size:11px;font-weight:800}.help-icon{display:inline-grid;place-items:center;width:17px;height:17px;margin-left:3px;border:0;border-radius:50%;background:#c29238;color:#fff;font-size:11px;font-weight:700;vertical-align:-2px;cursor:pointer}.help-text{grid-column:1/-1;margin-top:4px;padding:10px 12px;border-radius:7px;background:#f7f3e9;color:var(--ink-soft);font-size:12px}.forgot-title{font-size:24px;font-weight:700}.forgot-text{margin:0;color:var(--ink-soft);font-size:14px}.forgot-done{padding:12px 14px;border-left:4px solid var(--correct);border-radius:6px;background:var(--correct-wash);color:#174e29;font-size:14px}.login-footer{position:relative;z-index:1;display:flex;justify-content:center;gap:28px;padding:0 24px 22px;color:#888076;font-size:11px}
@media(max-width:920px){.login-main{align-items:flex-start;padding:24px 16px}.login-card{min-height:0;grid-template-columns:1fr;border-radius:16px}.login-card-top,.login-banner{min-height:360px}.login-banner{padding:28px 26px}.banner-rings{width:390px}.banner-company-logo{width:280px;margin:-38px auto -28px}.banner-title{font-size:30px}.banner-copy{margin-top:14px;font-size:12px}.banner-features{display:none}.login-card-body{padding:38px 28px}}
@media(max-width:480px){.login-main{padding:0}.login-card{border:0;border-radius:0}.login-card-top,.login-banner{min-height:320px}.login-banner{padding:22px 20px}.banner-company-logo{width:250px;margin:-42px auto -32px}.banner-eyebrow{font-size:10px}.banner-title{font-size:27px}.banner-copy{display:none}.login-card-body{padding:34px 22px 40px}.login-heading h2{font-size:25px}.login-footer{display:none}}
