:root { color-scheme: dark; }

.kohinoor-login-page {
  min-height: 100svh !important;
  margin: 0;
  padding: 42px 18px 32px !important;
  overflow-x: hidden;
  color: #fff !important;
  font-family: "Poppins", sans-serif !important;
  background:
    radial-gradient(ellipse at 50% 22%, rgba(39, 231, 73, .47), transparent 31%),
    radial-gradient(ellipse at 50% 70%, rgba(8, 133, 35, .5), transparent 48%),
    linear-gradient(155deg, #006b18 0%, #00921f 43%, #006415 100%) !important;
}

.kohinoor-login-page::before,
.kohinoor-login-page::after { display: none !important; }

.login-market-bg, .login-market-bg * { pointer-events: none; }
.login-market-bg { position: fixed; inset: 0; z-index: 0; overflow: hidden; }
.login-market-bg::before {
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(rgba(174, 255, 159, .27) 1px, transparent 1.2px);
  background-size: 31px 31px; opacity: .22; mask-image: linear-gradient(90deg, #000, transparent 34%, transparent 67%, #000);
}
.login-market-bg::after {
  content: ""; position: absolute; left: -20vw; right: -20vw; top: 48%; height: 2px;
  background: linear-gradient(90deg, transparent, rgba(215,255,178,.72), transparent);
  box-shadow: 0 0 18px 4px rgba(166,255,109,.5);
  transform: rotate(-5deg);
}

.market-bars { position: absolute; bottom: 20%; height: 240px; display: flex; align-items: flex-end; gap: 15px; opacity: .16; }
.market-bars i { display: block; width: 15px; height: var(--height); border-radius: 5px 5px 0 0; background: linear-gradient(#77ff7d, #0ab22c); box-shadow: 0 0 12px #42ff62; }
.market-bars i:nth-child(1) { --height: 52px; }.market-bars i:nth-child(2) { --height: 125px; }.market-bars i:nth-child(3) { --height: 84px; }.market-bars i:nth-child(4) { --height: 168px; }.market-bars i:nth-child(5) { --height: 100px; }
.market-bars-left { left: 6%; }.market-bars-right { right: 6%; transform: scaleX(-1); }
.market-arrow { position: absolute; right: 8%; top: 15%; width: 125px; height: 108px; opacity: .1; border-top: 12px solid #86ff87; border-right: 12px solid #86ff87; transform: rotate(19deg) skew(-12deg); }
.market-arrow::after { content: ""; position: absolute; right: -22px; top: -22px; width: 0; height: 0; border-left: 26px solid #86ff87; border-top: 17px solid transparent; border-bottom: 17px solid transparent; transform: rotate(-42deg); }
.background-leaves { position: absolute; bottom: -2%; width: 210px; height: 160px; opacity: .12; background: repeating-radial-gradient(ellipse at 100% 100%, #82ff79 0 20%, transparent 22% 39%); filter: blur(1px); }
.leaves-left { left: -55px; transform: rotate(38deg); }.leaves-right { right: -55px; transform: rotate(-38deg) scaleX(-1); }

.kohinoor-login-shell { position: relative; z-index: 1; width: min(100%, 478px); margin: 0 auto; display: flex; flex-direction: column; align-items: center; }
.login-intro { text-align: center; }
.wallet-hero { width: min(57vw, 240px); height: auto; display: block; margin: 0 auto -4px; filter: drop-shadow(0 19px 14px rgba(0, 69, 13, .36)); }
.brand-name { margin-top: -3px; font-size: clamp(29px, 8.2vw, 42px); line-height: 1; font-weight: 800; letter-spacing: .045em; text-shadow: 0 5px 12px rgba(0, 67, 12, .28); }
.login-intro h1 { margin: 27px 0 4px; font-size: clamp(32px, 10vw, 47px); line-height: 1.14; font-weight: 800; letter-spacing: -.055em; }
.login-intro p { margin: 0 0 38px; font-size: clamp(17px, 5.5vw, 23px); font-weight: 400; color: rgba(255,255,255,.96); }

.login-card { width: 100%; padding: 1px; border-radius: 35px; background: linear-gradient(135deg, rgba(190,255,140,.94), rgba(69,239,72,.72) 44%, rgba(215,255,178,.9)); box-shadow: 0 0 0 1px rgba(100,255,87,.2), 0 20px 45px rgba(0, 52, 9, .35), inset 0 0 30px rgba(187,255,127,.45); }
.login-card-inner { padding: 31px 26px 30px; border-radius: 34px; background: linear-gradient(145deg, rgba(12, 151, 37, .92), rgba(0, 91, 18, .93)); box-shadow: inset 0 1px 22px rgba(196,255,148,.22), inset 0 -15px 35px rgba(0,66,9,.25); }
.kohinoor-login-page .alert { margin: 0 0 17px; padding: 11px 14px; border-radius: 13px; background: rgba(75, 15, 12, .3); border: 1px solid rgba(255, 210, 185, .45); color: #fff !important; font-size: 13px; text-align: center; }

.kohinoor-login-page .quick-account-select { width: 100%; min-height: 48px !important; margin: 0 0 13px !important; padding: 0 14px !important; border: 1px solid rgba(187,255,148,.52) !important; border-radius: 17px !important; color: rgba(255,255,255,.9) !important; background: rgba(0, 82, 14, .56) !important; font-family: inherit; font-size: 13px; }
.kohinoor-login-page .quick-account-select[hidden] { display: none !important; }
.kohinoor-login-page .quick-account-select option { background: #046d1c; color: #fff; }
.kohinoor-login-page .login-field { min-height: 72px !important; margin: 0 0 18px !important; padding: 0 18px !important; gap: 15px !important; border: 1px solid rgba(189,255,144,.67) !important; border-radius: 24px !important; background: rgba(0, 110, 20, .47) !important; box-shadow: inset 0 1px 5px rgba(198,255,174,.18), 0 7px 16px rgba(0,54,9,.09) !important; }
.kohinoor-login-page .login-field:focus-within { border-color: #ddffbc !important; box-shadow: 0 0 0 3px rgba(202,255,169,.18), inset 0 1px 5px rgba(198,255,174,.18) !important; }
.kohinoor-login-page .login-field > i { width: 41px; flex: 0 0 41px; padding-right: 14px; border-right: 1px solid rgba(199,255,170,.52); color: #fff !important; font-size: 30px; text-align: center; line-height: 1; }
.kohinoor-login-page .login-field input { min-width: 0; height: 70px; padding: 0 !important; border: 0 !important; outline: 0; color: #fff !important; background: transparent !important; font-family: inherit; font-size: 19px !important; font-weight: 500; }
.kohinoor-login-page .login-field input::placeholder { color: rgba(255,255,255,.96) !important; }
.password-toggle { width: 38px; height: 38px; flex: 0 0 38px; padding: 0; border: 0; color: #fff; background: transparent; cursor: pointer; font-size: 25px; }
.password-toggle i { color: inherit !important; }

.kohinoor-login-page .login-btn { position: relative; width: 100%; min-height: 75px !important; margin: 19px 0 28px !important; border: 0 !important; border-radius: 24px !important; color: #08791d !important; background: linear-gradient(130deg, #fff 0%, #f8fff5 55%, #edf9e8 100%) !important; font-family: inherit; font-size: 28px !important; font-weight: 800 !important; box-shadow: 0 12px 21px rgba(0, 54, 6, .22), inset 0 1px 0 rgba(255,255,255,.9) !important; }
.kohinoor-login-page .login-btn:hover { transform: translateY(-1px); filter: brightness(1.02); }.kohinoor-login-page .login-btn:active { transform: translateY(1px); }
.kohinoor-login-page .login-btn.btn-loading span { visibility: hidden; }.kohinoor-login-page .login-btn.btn-loading::after { content: ""; position: absolute; width: 22px; height: 22px; border: 3px solid #0b811f; border-right-color: transparent; border-radius: 50%; animation: login-spin .7s linear infinite; }
@keyframes login-spin { to { transform: rotate(360deg); } }
.login-actions { text-align: center; }.forgot-link { display: inline-block; margin-bottom: 31px; color: #fff !important; font-size: 19px; font-weight: 500; text-decoration: none !important; }.signup { color: #fff; font-size: 18px; font-weight: 500; }.signup a { color: #f6ee8b !important; font-weight: 700; text-decoration: none !important; }
.security-note { width: min(88%, 365px); min-height: 82px; margin: 34px auto 0; padding: 12px 23px; display: flex; align-items: center; justify-content: center; gap: 18px; border: 1px solid rgba(193,255,155,.77); border-radius: 27px; color: #fff; background: rgba(0, 110, 25, .52); box-shadow: inset 0 1px 14px rgba(192,255,152,.18), 0 0 23px rgba(96,255,87,.16); font-size: 17px; font-weight: 600; white-space: nowrap; }
.security-note i { color: #f5fff2; font-size: 33px; filter: drop-shadow(0 2px 2px rgba(0,76,14,.5)); }

.kohinoor-signup-page { padding-top: 29px !important; padding-bottom: 34px !important; }
.kohinoor-signup-page .signup-intro .wallet-hero { width: min(43vw, 182px); margin-bottom: -4px; }
.kohinoor-signup-page .signup-intro h1 { margin-top: 16px; font-size: clamp(30px, 9vw, 42px); }
.kohinoor-signup-page .signup-intro p { margin-bottom: 24px; font-size: clamp(16px, 4.8vw, 20px); }
.kohinoor-signup-page .signup-card { max-width: 478px; }
.kohinoor-signup-page .login-card-inner { padding-top: 27px; padding-bottom: 27px; }
.kohinoor-signup-page .login-field { margin-bottom: 14px !important; }
.signup-field-note { margin: -6px 3px 13px 57px; color: rgba(235,255,220,.78); font-size: 11px; line-height: 1.3; }
.signup-alert:empty { display: none; }
.kohinoor-signup-page .signup-btn { margin-top: 9px !important; margin-bottom: 23px !important; font-size: 23px !important; }
.signup-actions .signup { font-size: 17px; }

@media (min-width: 720px) { .kohinoor-login-page { padding-top: 32px !important; }.wallet-hero { width: 220px; }.login-intro h1 { margin-top: 20px; }.login-intro p { margin-bottom: 25px; } .login-card-inner { padding: 27px 35px 29px; } }
@media (max-width: 390px) { .kohinoor-login-page { padding: 27px 13px 27px !important; }.wallet-hero { width: 51vw; }.login-intro h1 { margin-top: 21px; }.login-intro p { margin-bottom: 26px; }.login-card-inner { padding: 26px 18px; }.kohinoor-login-page .login-field { min-height: 65px !important; margin-bottom: 14px !important; border-radius: 21px !important; }.kohinoor-login-page .login-field input { height: 63px; font-size: 17px !important; }.kohinoor-login-page .login-field > i { width: 38px; flex-basis: 38px; font-size: 27px; }.kohinoor-login-page .login-btn { min-height: 67px !important; margin: 15px 0 23px !important; font-size: 25px !important; }.forgot-link { margin-bottom: 23px; font-size: 17px; }.signup { font-size: 16px; }.security-note { min-height: 72px; margin-top: 25px; font-size: 15px; }.security-note i { font-size: 29px; } }

/* KVR Trading login – dark, amber treatment from the approved reference. */
.kvr-login-page {
  --kvr-amber: #ff7a18;
  --kvr-amber-light: #ffad39;
  min-height: 100svh !important;
  padding: 0 24px 56px !important;
  overflow-x: hidden;
  color: #f8f7f6 !important;
  font-family: "Poppins", sans-serif !important;
  background:
    radial-gradient(ellipse 95% 45% at 50% 38%, rgba(93, 37, 6, .22), transparent 70%),
    radial-gradient(ellipse 100% 34% at 50% 92%, rgba(102, 37, 6, .38), transparent 70%),
    #090705 !important;
}
.kvr-login-page::before, .kvr-login-page::after { content: none !important; }
.kvr-atmosphere { position: fixed; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.kvr-atmosphere::before { content: ""; position: absolute; inset: 0; opacity: .44; background: radial-gradient(ellipse at 50% 45%, transparent 0 12%, rgba(0,0,0,.16) 63%, rgba(0,0,0,.65) 100%), repeating-radial-gradient(ellipse at 48% 31%, rgba(255,130,38,.05) 0 1px, transparent 1px 5px); mix-blend-mode: screen; }
.kvr-atmosphere::after { content: ""; position: absolute; left: -12%; bottom: -79px; width: 124%; height: 160px; border-top: 2px solid #ff8525; border-radius: 50%; box-shadow: 0 -3px 9px rgba(255,91,16,.95), 0 -13px 46px rgba(192,53,7,.52), inset 0 3px 4px rgba(255,194,84,.4); }
.kvr-login-shell { position: relative; z-index: 1; width: min(100%, 704px); margin: 0 auto; padding: clamp(40px, 7.5vh, 86px) 0 0; }
.kvr-login-intro { text-align: center; }
.kvr-brand-mark { width: min(270px, 66vw); height: min(220px, 53.7vw); margin: 0 auto 27px; border-radius: 26px; overflow: hidden; background: url("../images/logo.png") center top / 100% auto no-repeat; mix-blend-mode: screen; filter: drop-shadow(0 7px 17px rgba(255,101,15,.23)); }
.kvr-login-intro h1 { margin: 0; color: #fff; font-size: clamp(37px, 8vw, 55px); font-weight: 600; line-height: 1.13; letter-spacing: -.055em; }
.kvr-login-intro p { margin: 12px 0 59px; color: rgba(220,219,222,.79); font-size: clamp(18px, 4.5vw, 25px); font-weight: 400; }
.kvr-login-form { width: 100%; }
.kvr-saved-account { min-height: 72px; margin: 0 0 19px; padding: 10px 21px; display: flex; align-items: center; gap: 15px; border: 1px solid rgba(255,128,29,.62); border-radius: 21px; background: linear-gradient(120deg,rgba(52,27,13,.58),rgba(22,14,9,.46)); box-shadow: inset 0 1px 12px rgba(255,128,35,.06); }.kvr-saved-account[hidden] { display: none; }.kvr-saved-account > i { color: #ff922d; font-size: 24px; }.kvr-saved-account > div { min-width: 0; flex: 1; }.kvr-saved-account span { display: block; margin-bottom: 1px; color: rgba(221,219,220,.64); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }.kvr-saved-account select { width: 100%; padding: 0 20px 0 0; border: 0; outline: 0; color: #fff; background: transparent; font: 500 15px "Poppins",sans-serif; cursor: pointer; }.kvr-saved-account select option { color: #fff; background: #211007; }
.kvr-alert { margin: 0 0 19px; padding: 12px 16px; border: 1px solid rgba(255,138,64,.54); border-radius: 15px; color: #ffe8d1; background: rgba(104,27,5,.29); font-size: 14px; text-align: center; }
.kvr-field { min-height: 130px; margin: 0 0 27px; padding: 0 34px; display: flex; align-items: center; gap: 29px; border: 1px solid rgba(255,118,24,.68); border-radius: 29px; color: var(--kvr-amber); background: linear-gradient(120deg, rgba(45,27,16,.51), rgba(20,16,13,.35)); box-shadow: inset 0 1px 16px rgba(255,128,35,.06), 0 11px 27px rgba(0,0,0,.16); transition: border-color .18s ease, box-shadow .18s ease; }
.kvr-field:focus-within { border-color: #ffae5b; box-shadow: 0 0 0 3px rgba(255,116,24,.12), inset 0 1px 16px rgba(255,128,35,.1); }
.kvr-field > i { flex: 0 0 43px; color: var(--kvr-amber); font-size: 39px; text-align: center; }
.kvr-field input { width: 100%; min-width: 0; height: 80px; padding: 0 !important; border: 0 !important; outline: 0; color: #fff !important; background: transparent !important; font: 400 clamp(21px, 4.6vw, 28px) "Poppins", sans-serif !important; }
.kvr-field input::placeholder { color: rgba(223,219,221,.76) !important; opacity: 1; }
.kvr-password-toggle { width: 48px; height: 48px; flex: 0 0 48px; margin-right: -7px; padding: 0; border: 0; color: rgba(221,219,221,.72); background: transparent; cursor: pointer; font-size: 34px; }
.kvr-password-toggle:hover { color: #fff; }
.kvr-forgot-row { margin: 3px 0 39px; text-align: right; }
.kvr-forgot-row a, .kvr-signup-copy a { color: #ff9f39 !important; text-decoration: none !important; }
.kvr-forgot-row a { font-size: clamp(17px, 4.2vw, 24px); font-weight: 400; }
.kvr-signin-button { position: relative; width: 100%; min-height: 131px; padding: 18px; border: 1px solid #ffbd4a; border-radius: 29px; color: #fff; background: radial-gradient(ellipse at 50% -28%, #ff9a30 0%, #e55510 31%, #7f2606 100%); box-shadow: inset 0 1px 2px rgba(255,248,209,.75), inset 0 -18px 33px rgba(67,11,1,.18), 0 0 11px rgba(255,117,21,.72), 0 15px 33px rgba(130,43,8,.49); font: 500 clamp(26px, 5.4vw, 35px) "Poppins", sans-serif; cursor: pointer; transition: transform .18s ease, filter .18s ease; }
.kvr-signin-button:hover { transform: translateY(-2px); filter: brightness(1.08); }.kvr-signin-button:active { transform: translateY(1px); }.kvr-signin-button:disabled { cursor: wait; }
.kvr-signin-button.is-loading span { visibility: hidden; }.kvr-signin-button.is-loading::after { content: ""; position: absolute; inset: 0; width: 27px; height: 27px; margin: auto; border: 3px solid #fff; border-right-color: transparent; border-radius: 50%; animation: login-spin .7s linear infinite; }
.kvr-divider { margin: 66px 0 53px; display: flex; align-items: center; gap: 28px; color: rgba(219,218,222,.73); font-size: clamp(17px, 4vw, 22px); white-space: nowrap; }
.kvr-divider::before, .kvr-divider::after { content: ""; width: 100%; height: 1px; background: rgba(194,190,192,.48); }
.kvr-social-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.kvr-social-button { min-height: 102px; padding: 12px 17px; display: flex; align-items: center; justify-content: center; gap: 22px; border: 1px solid rgba(255,122,24,.67); border-radius: 25px; color: #fff; background: rgba(25,18,14,.42); font: 500 clamp(20px, 4.9vw, 27px) "Poppins", sans-serif; cursor: pointer; transition: border-color .18s ease, background .18s ease; }
.kvr-social-button:hover { border-color: #ffae58; background: rgba(60,29,13,.57); }.kvr-social-button .fa-google { color: #fff; font-size: 36px; text-shadow: 10px 0 #ea4335, -8px -4px #4285f4, -6px 8px #34a853; }.kvr-social-button .fa-apple { color: #fff; font-size: 40px; }
.kvr-signup-copy { margin: 68px 0 0; color: rgba(222,221,224,.78); font-size: clamp(17px, 4vw, 23px); text-align: center; }.kvr-signup-copy a { margin-left: 4px; font-weight: 500; }
@media (max-width: 500px) { .kvr-login-page { padding-right: 18px !important; padding-left: 18px !important; }.kvr-login-shell { padding-top: 32px; }.kvr-brand-mark { width: 230px; height: 188px; margin-bottom: 20px; }.kvr-login-intro p { margin: 7px 0 34px; }.kvr-field { min-height: 75px; margin-bottom: 18px; padding: 0 23px; gap: 18px; border-radius: 23px; }.kvr-field > i { flex: 0 0 31px; font-size: 28px; }.kvr-field input { height: 60px; }.kvr-password-toggle { width: 39px; height: 39px; flex-basis: 39px; margin-right: -8px; font-size: 26px; }.kvr-forgot-row { margin: 0 0 26px; }.kvr-signin-button { min-height: 82px; border-radius: 23px; }.kvr-divider { margin: 42px 0 34px; gap: 19px; }.kvr-social-row { gap: 18px; }.kvr-social-button { min-height: 66px; padding: 9px 8px; gap: 12px; border-radius: 19px; }.kvr-social-button .fa-google { font-size: 24px; }.kvr-social-button .fa-apple { font-size: 29px; }.kvr-signup-copy { margin-top: 38px; } }
@media (max-width: 370px) { .kvr-login-page { padding-right: 14px !important; padding-left: 14px !important; }.kvr-brand-mark { width: 225px; height: 184px; }.kvr-login-intro p { margin-bottom: 42px; }.kvr-field { min-height: 86px; margin-bottom: 23px; padding: 0 21px; gap: 17px; border-radius: 23px; }.kvr-field > i { flex-basis: 31px; font-size: 28px; }.kvr-password-toggle { width: 36px; flex-basis: 36px; font-size: 25px; }.kvr-forgot-row { margin-bottom: 27px; }.kvr-signin-button { min-height: 95px; border-radius: 23px; }.kvr-divider { margin: 45px 0 35px; gap: 18px; }.kvr-social-row { gap: 18px; }.kvr-social-button { min-height: 78px; gap: 12px; border-radius: 20px; }.kvr-social-button .fa-google { font-size: 25px; }.kvr-social-button .fa-apple { font-size: 29px; }.kvr-signup-copy { margin-top: 44px; } }

/* Signup shares the KVR login visual language while accommodating its extra fields. */
.kvr-signup-page .kvr-login-shell { padding-bottom: 56px; }
.kvr-signup-page .kvr-brand-mark { margin-bottom: 15px; }
.kvr-signup-page .kvr-login-intro p { margin-bottom: 37px; }
.kvr-signup-page .kvr-field { margin-bottom: 20px; }
.kvr-signup-page .kvr-field-note { margin: -9px 0 16px 72px; color: rgba(220,219,222,.63); font-size: 13px; line-height: 1.35; }
.kvr-signup-page .kvr-referral-field input { color: rgba(255,255,255,.66) !important; cursor: default; }
.kvr-signup-page .kvr-create-button { margin-top: 7px; }
.kvr-signup-page .kvr-login-copy { margin-top: 42px; }
.kvr-signup-alert { display: none; }
.kvr-signup-alert.has-message { display: block; }
@media (max-width: 500px) { .kvr-signup-page .kvr-login-shell { padding-top: 26px; }.kvr-signup-page .kvr-brand-mark { width: 196px; height: 160px; margin-bottom: 13px; }.kvr-signup-page .kvr-login-intro p { margin-bottom: 26px; }.kvr-signup-page .kvr-field { margin-bottom: 15px; }.kvr-signup-page .kvr-field-note { margin: -7px 0 12px 54px; font-size: 10px; }.kvr-signup-page .kvr-create-button { min-height: 78px; margin-top: 3px; }.kvr-signup-page .kvr-login-copy { margin-top: 34px; } }
