@charset "UTF-8";
.dk-login-screen { background: #eaf2f8; background-image: linear-gradient(180deg,#d7e8f2 0,#f7fbfd 42%,#e9f0f4 100%); }
.dk-login-screen .login-form-panel { padding: 35px 18px; }
.dk-login-screen .login-form { max-width: 365px; padding: 0 24px 18px; border: 1px solid #a7bdca; border-top: 4px solid #0b5b8d; border-radius: 2px; background: #fff; box-shadow: 0 5px 18px #41677a24; }
.dk-login-screen .login-form::before { display: none; }
.dk-login-brand { margin: 16px auto 4px; color: #0b5b8d; font: 900 italic 46px/1 Arial,sans-serif; letter-spacing: -6px; text-align: center; }
.dk-login-screen .login-form h2 { margin: 0 -24px 14px; padding: 8px 10px; background: #0b5b8d; color: #fff; font-size: 15px; font-weight: 700; letter-spacing: 1px; text-align: center; }
.dk-login-screen .login-form .field { margin-bottom: 10px; }
.dk-login-screen .login-form .field label { color: #355b70; font-size: 12px; }
.dk-login-screen .login-form .input { height: 34px; min-height: 34px; border: 1px solid #a9c0cc; border-radius: 2px; background: #fbfdfe; }
.dk-login-screen .login-form .button.primary { width: 100%; min-height: 34px; margin-top: 4px; border: 1px solid #075078; border-radius: 2px; background: #0b6398; font-size: 13px; }
.dk-login-screen .login-form .button.primary:hover { background: #084b74; }
.dk-login-screen .replica-login-portals { margin: 0 0 13px; gap: 0; }
.dk-login-screen .replica-login-portals .button { min-width: 0; flex: 1; border-radius: 0; border-color: #abc1cd; background: #f2f7fa; color: #376176; }
.dk-login-screen .replica-login-portals .button.primary { background: #dbeaf2; color: #0b5b8d; font-weight: 700; }
.dk-login-path-note { margin: 0 0 13px; padding: 5px; border: 1px solid #c5d6df; background: #f4f9fb; color: #427087; font-size: 11px; text-align: center; }
.dk-login-screen .replica-login-owner { margin: 0 0 12px; padding: 6px; font-size: 11px; }
.dk-login-screen .replica-login-links { margin-top: 11px; }
.dk-login-screen .replica-login-links .button { min-height: 26px; padding: 3px 8px; border-radius: 2px; font-size: 11px; }
.dk-login-screen .replica-form-error { margin: 6px 0; color: #ae3434; font-size: 11px; }
.dk-portal-selection-panel { padding-top: 26px !important; }
.dk-portal-selection { max-width: 440px !important; padding-bottom: 20px !important; }
.dk-portal-selection-hint { margin: -4px 0 14px; color: #648393; font-size: 12px; text-align: center; }
.dk-portal-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0 0 13px; }
.dk-portal-choice { display: flex; min-height: 126px; padding: 15px 11px 12px; flex-direction: column; align-items: center; justify-content: center; border: 1px solid #a9c0cc; border-radius: 2px; background: #f8fbfd; color: #25556d; cursor: pointer; text-align: center; transition: border-color .15s ease, background .15s ease, box-shadow .15s ease; }
.dk-portal-choice:hover, .dk-portal-choice:focus-visible { border-color: #0b6398; background: #edf6fa; box-shadow: 0 2px 7px #41677a24; outline: none; }
.dk-portal-choice strong { color: #0b5b8d; font-size: 18px; }
.dk-portal-choice span { margin-top: 7px; color: #5f7785; font-size: 11px; line-height: 1.5; }
.dk-portal-choice em { margin-top: 10px; color: #0b6398; font-size: 11px; font-style: normal; font-weight: 700; }
.dk-change-entry { width: 100%; min-height: 28px; border-radius: 2px; font-size: 11px; }
@media (max-width: 420px) { .dk-login-screen .login-form { max-width: 340px; padding-left: 18px; padding-right: 18px; } .dk-login-screen .login-form h2 { margin-left:-18px; margin-right:-18px; } }
@media (max-width: 420px) { .dk-portal-choice-grid { grid-template-columns: 1fr; } .dk-portal-choice { min-height: 92px; } }

/* Classic DK-like entry and line selector: compact white panel, yellow wordmark,
   simple line rows and the original search-style entry action. */
.dk-classic-screen { background: linear-gradient(180deg,#d6edf8 0,#f7fbfd 45%,#c3dbe6 100%); }
.dk-classic-panel { display: flex; align-items: center; justify-content: center; min-height: 100vh; padding: 22px 16px !important; }
.dk-classic-form { width: min(470px,calc(100vw - 32px)); max-width: 470px !important; padding: 18px 30px 22px !important; border: 1px solid #9ab5c1 !important; border-top: 5px solid #f0ad19 !important; border-radius: 2px !important; background: #fff !important; box-shadow: 0 8px 25px #284b5c30 !important; }
.dk-classic-form::before { display: none !important; }
.dk-classic-logo { margin: 0 auto 5px; color: #e8a90b; font: 900 italic 52px/1 Arial,sans-serif; letter-spacing: -7px; text-align: center; text-shadow: 1px 1px 0 #fff3ad,2px 2px 0 #b97e00; }
.dk-classic-heading { margin: 0 -30px 13px !important; padding: 7px 10px !important; border-top: 1px solid #e6edf0; border-bottom: 1px solid #d7e2e7; background: #f7fafb !important; color: #355d71 !important; font-size: 14px !important; font-weight: 700 !important; letter-spacing: 1px; text-align: center; }
.dk-classic-field { margin: 0 0 9px; }
.dk-classic-field label { display: block; margin: 0 0 3px; color: #426578; font-size: 11px; }
.dk-classic-field .input { min-height: 33px; height: 33px; border: 1px solid #aac0ca; border-radius: 1px; background: #fff; font-size: 12px; }
.dk-classic-field .input::placeholder { color: #a7b6bd; }
.dk-search-button { width: 100%; min-height: 33px !important; margin-top: 2px; border: 1px solid #d99600 !important; border-radius: 1px !important; background: #efa916 !important; box-shadow: none !important; color: #fff !important; font-size: 13px !important; font-weight: 700; }
.dk-search-button:hover { background: #db9508 !important; }
.dk-classic-warning { margin: 12px 0 0; color: #c74b42; font-size: 10px; line-height: 1.5; text-align: center; }
.dk-classic-form .replica-form-error { margin: 7px 0 0; color: #b53d39; font-size: 11px; text-align: center; }
.dk-classic-form .replica-entry-status { margin: 5px 0 0; color: #8a9da5; font-size: 10px; text-align: center; }
.dk-classic-form .replica-login-portals { margin: 0 0 12px; }
.dk-classic-form .dk-login-path-note { margin: 0 0 12px; border-color: #d9e3e7; background: #f7fafb; color: #4a6c7b; }
.dk-line-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 2px 0 14px; }
.dk-line-column { display: flex; min-width: 0; flex-direction: column; gap: 10px; }
.dk-line-group { min-width: 0; border: 1px solid #bdcfd6; background: #fafcfd; }
.dk-line-group h3 { margin: 0; padding: 7px 4px; border-bottom: 1px solid #bdcfd6; background: #eaf2f5; color: #365e71; font-size: 13px; text-align: center; }
.dk-line-group button { display: flex; width: 100%; min-height: 31px; padding: 5px 8px; align-items: center; justify-content: space-between; border: 0; border-bottom: 1px solid #e4ecef; background: #fff; color: #456b7a; cursor: pointer; font-size: 11px; text-align: left; }
.dk-line-group button:last-child { border-bottom: 0; }
.dk-line-group button:hover, .dk-line-group button:focus-visible { background: #edf7fb; color: #0b6398; outline: none; }
.dk-line-group button b { color: #0b6398; font-weight: 700; }
.dk-line-group button span { color: #869aa3; font-size: 10px; }
.dk-classic-form .dk-change-entry { min-height: 27px; margin-top: 4px; border-color: #c7d6dc; background: #fff; color: #5a7986; }
.dk-classic-form .replica-login-links { margin-top: 10px; }
.dk-classic-form .replica-login-links .button { border-radius: 1px; }
@media (max-width: 520px) { .dk-line-columns { grid-template-columns: 1fr; gap: 7px; } .dk-classic-form { padding-left: 18px !important; padding-right: 18px !important; } .dk-classic-heading { margin-left: -18px !important; margin-right: -18px !important; } }

/* The line chooser mirrors the original DK page: a plain white canvas,
   centered wordmark, and full-width bordered line groups. */
.dk-route-select-screen { min-height: 100vh; box-sizing: border-box; background: #fff; color: #333; font-family: Arial,"Microsoft YaHei",sans-serif; }
.dk-route-select-wrap { width: min(790px,calc(100vw - 32px)); margin: 0 auto; padding: 35px 0 34px; }
.dk-route-logo { margin: 0 0 25px; color: #f00000; font: 700 48px/1 Arial,sans-serif; letter-spacing: 15px; text-align: center; }
.dk-route-box { box-sizing: border-box; margin: 0 0 29px; padding: 21px 28px 30px; border: 1px solid #cfcfcf; background: #fff; }
.dk-route-box h2 { margin: 0 0 14px; padding: 0 0 9px; border-bottom: 1px dashed #bcbcbc; color: #4381a3; font-size: 19px; font-weight: 400; line-height: 1.2; }
.dk-route-lines { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; }
.dk-route-lines button { display: flex; min-width: 0; height: 34px; padding: 0 14px; align-items: center; justify-content: space-between; border: 1px solid #73c3df; border-radius: 16px; background: linear-gradient(#f8fdff,#e8f6fb); color: #333; cursor: pointer; font-size: 14px; line-height: 1; }
.dk-route-lines button:hover, .dk-route-lines button:focus-visible { border-color: #238fb9; background: #dff2f9; outline: none; }
.dk-route-lines b { font-weight: 400; white-space: nowrap; }
.dk-route-lines em { margin-left: 9px; color: #f28c8c; font-size: 12px; font-style: normal; white-space: nowrap; }
.dk-route-select-wrap > .dk-change-entry { display: block; min-height: 26px; margin: -9px auto 0; border: 0; background: transparent; color: #00c; font-size: 12px; }
.dk-route-select-wrap > .replica-registration-owner { display: none; }
@media (max-width: 720px) { .dk-route-select-wrap { width: calc(100vw - 24px); padding-top: 24px; } .dk-route-box { padding: 17px 14px 20px; margin-bottom: 17px; } .dk-route-lines { grid-template-columns: repeat(2,minmax(0,1fr)); } .dk-route-lines button { padding: 0 11px; } }

/* Account login uses its own classes to avoid the generic console form styles. */
.dk-target-login {
  --dk-unit: min(1px, calc(100cqw / 1034));
  container-type: inline-size;
  display: block;
  width: 100%;
  min-height: 100vh;
  margin: 0;
  padding: 0;
  background: #b2e1ff;
  font-family: Arial, "Microsoft YaHei", sans-serif;
}
.dk-target-panel {
  position: relative;
  width: calc(1034 * var(--dk-unit));
  height: calc(665 * var(--dk-unit));
  margin: 0 auto;
  padding: 0;
  background: url("dk-login-bg.jpg") center top / 100% 100% no-repeat;
}
.dk-target-logo {
  position: absolute;
  top: calc(60 * var(--dk-unit));
  left: 0;
  width: calc(588 * var(--dk-unit));
  height: calc(90 * var(--dk-unit));
  margin: 0;
  padding: 0;
  color: #e3d641;
  font-family: "Microsoft YaHei", Helvetica, Arial, sans-serif;
  font-size: calc(90 * var(--dk-unit));
  font-weight: 400;
  line-height: 1;
  text-align: center;
  text-shadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px #0000001a, 0 0 5px #0000001a, 0 1px 3px #0000004d, 0 3px 5px #00000033, 0 5px 10px #00000040, 0 10px 10px #00000033, 0 20px 20px #00000026;
}
.dk-target-form {
  position: absolute;
  left: calc(663 * var(--dk-unit));
  top: calc(316 * var(--dk-unit));
  width: calc(350 * var(--dk-unit));
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.dk-target-field {
  display: flex;
  align-items: flex-start;
  width: calc(238 * var(--dk-unit));
  height: calc(29 * var(--dk-unit));
  margin: 0;
  padding: 0;
}
.dk-target-field label {
  display: block;
  flex: 0 0 calc(74 * var(--dk-unit));
  margin: 0;
  padding: 0 0 0 calc(2 * var(--dk-unit));
  color: #fff;
  font-family: "SimHei", "黑体", sans-serif;
  font-size: calc(18 * var(--dk-unit));
  font-weight: 400;
  line-height: calc(21 * var(--dk-unit));
  text-align: center;
  white-space: nowrap;
}
.dk-target-input {
  display: block;
  box-sizing: border-box;
  width: calc(139 * var(--dk-unit));
  height: calc(19 * var(--dk-unit));
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 0 calc(2 * var(--dk-unit));
  border: 1px solid #767676;
  border-radius: 0;
  background: #fff;
  color: #111;
  font: calc(13.333 * var(--dk-unit)) Arial, sans-serif;
}
.dk-target-input:focus { outline: 1px solid #111; outline-offset: 0; }
.dk-target-submit {
  position: absolute;
  display: block;
  left: calc(242 * var(--dk-unit));
  top: 0;
  box-sizing: border-box;
  width: calc(65 * var(--dk-unit));
  height: calc(51 * var(--dk-unit));
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: calc(10 * var(--dk-unit));
  background: #008dc9;
  color: #fff;
  box-shadow: none;
  font: 700 calc(18 * var(--dk-unit)) Arial, sans-serif;
  text-align: center;
  white-space: nowrap;
  cursor: pointer;
}
.dk-target-submit:hover { background: #0081b8; }
.dk-target-submit:disabled { opacity: .7; cursor: wait; }
.dk-target-feedback { width: calc(238 * var(--dk-unit)); }
.dk-target-feedback .replica-form-error {
  margin: 0;
  padding: 0;
  color: #fff;
  background: transparent;
  font: calc(12 * var(--dk-unit))/1.5 Arial, sans-serif;
  text-shadow: 0 1px 2px #245874;
}
.dk-target-feedback .replica-form-error:empty { display: none; }
.dk-target-register {
  display: block;
  margin: calc(5 * var(--dk-unit)) 0 0 calc(74 * var(--dk-unit));
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #fff;
  font: calc(12 * var(--dk-unit))/1.5 Arial, sans-serif;
  text-decoration: underline;
  cursor: pointer;
}

/* Entry security gate only: source-like compact verification card. */
.dk-login-entry .dk-classic-form {
  width: min(372px, calc(100vw - 32px));
  max-width: 372px !important;
  min-height: 327px;
  box-sizing: border-box;
  padding: 27px 30px 22px !important;
}
.dk-login-entry .dk-classic-warning { color: #647b96; }
@media (max-width: 420px) {
  .dk-login-entry .dk-classic-form {
    width: calc(100vw - 32px);
    max-width: none !important;
  }
}
/* kt96a.com entry gate: keep this source-style layout isolated to the security-code page. */
.kt96a-entry-gate {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 100vh;
  margin: 0;
  padding: 0;
  overflow-x: auto;
  background: #fff;
  color: #666;
  font-family: "Lucida Grande", Verdana, "Microsoft YaHei", sans-serif;
  text-align: center;
}
.kt96a-entry-spacer { display: inline-block; width: 1px; height: 35%; margin-left: -1px; margin-right: -4px; vertical-align: middle; }
.kt96a-entry-middle { display: inline-block; width: 100%; text-align: center; vertical-align: middle; }
.kt96a-entry-wrap { display: inline-block; }
.kt96a-entry-context { position: relative; width: 100%; color: #666; }
.kt96a-entry-inputs { box-sizing: content-box; margin: 25px 0; padding: 20% 20px; vertical-align: middle; }
.kt96a-entry-box { display: inline-block; width: 600px; margin-left: 0; padding: 0; }
.kt96a-entry-row { position: relative; width: 510px; margin: 0 auto 10px; }
.kt96a-entry-row table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.kt96a-entry-code-cell { width: 100%; padding: 0 10px 0 0; }
.kt96a-entry-submit-cell { width: 80px; padding: 0; }
.kt96a-entry-input-shell { position: relative; width: 100%; height: 40px; border: 1px solid #ccc; }
.kt96a-entry-input-shell input { display: block; box-sizing: content-box; width: 100%; height: 38px; margin: 0; padding: 0 5px; border: 0; outline: 0; background: transparent; color: #333; font: 16px/38px Arial, sans-serif; letter-spacing: 2px; }
.kt96a-entry-input-shell input::placeholder { color: #888; opacity: 1; }
.kt96a-entry-toggle { position: absolute; top: 50%; right: 5px; width: 10px; height: 10px; padding: 5px; border: 0; transform: translateY(-50%); background: none; color: #000; cursor: pointer; font-size: 16px; line-height: 10px; }
.kt96a-entry-submit { width: 80px; height: 40px; padding: 8px 15px; border: 0; border-radius: 0; background: #e67e22; color: #fff; cursor: pointer; font-size: 16px; line-height: 24px; text-align: center; }
.kt96a-entry-submit:hover { background: #d96f13; }
.kt96a-entry-warning { margin-top: 5px; color: red; font-size: 12px; line-height: 16px; text-align: center; }
.kt96a-entry-row .replica-form-error { margin: 5px 0 0; color: red; font-size: 12px; text-align: center; }
.kt96a-entry-row .replica-entry-status { min-height: 0; margin: 2px 0 0; color: #666; font-size: 12px; line-height: 16px; text-align: center; }
@media only screen and (max-width: 480px) {
  .kt96a-entry-inputs { padding: 20% 20px; }
  .kt96a-entry-input-shell input { box-sizing: border-box; width: 100%; max-width: none; height: 40px; border: 0; border-radius: 5px; outline: 0; line-height: normal; }
  .kt96a-entry-submit { height: auto; border-radius: 5px; padding: 5px 0; font-size: 18px; }
  .kt96a-entry-box { display: block; margin-left: auto; }
}