.jn-login-shell {
  width: min(100%, 760px);
  margin: 0 auto;
}

.jn-login-card {
  background: #fff;
  border: 1px solid var(--jn-line, #dfe6e5);
  border-radius: 18px;
  padding: clamp(24px, 5vw, 46px);
  box-shadow: var(--jn-shadow, 0 12px 35px rgba(35,31,32,.08));
}

.jn-login-heading { margin-bottom: 26px; }
.jn-login-kicker { display:block; margin-bottom:6px; color:var(--jn-teal-dark,#008775); font-size:13px; font-weight:800; letter-spacing:.08em; }
.jn-login-heading h1 { margin:0 0 8px; font-size:clamp(34px,6vw,50px); line-height:1.06; font-weight:450; letter-spacing:-.035em; }
.jn-login-heading p { margin:0; color:var(--jn-muted,#697170); }
.jn-login-form { display:grid; gap:18px; }
.jn-login-field label { display:block; margin-bottom:7px; font-weight:700; }
.jn-login-field input[type="text"],
.jn-login-field input[type="email"],
.jn-login-field input[type="password"] { width:100%; }
.jn-login-name-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.jn-login-row { display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; }
.jn-login-remember { display:inline-flex; align-items:center; gap:8px; cursor:pointer; }
.jn-login-remember input { width:auto; }
.jn-login-lost,
.jn-login-link,
.jn-login-footer-link a { color:var(--jn-teal-dark,#008775); font-weight:700; text-underline-offset:3px; }
.jn-login-submit,
.jn-login-button { width:100%; min-height:50px; }
.jn-login-button { display:inline-flex; align-items:center; justify-content:center; border-radius:8px; padding:12px 20px; background:var(--jn-teal,#00a98f); color:#fff !important; text-decoration:none; font-weight:750; }
.jn-login-message { margin-bottom:20px; border-radius:10px; padding:13px 15px; }
.jn-login-message--error { background:#fff0f0; border:1px solid #efc5c5; color:#8e2626; }
.jn-login-message--success { background:#eaf8f2; border:1px solid #bee5d4; color:#166b4d; }
.jn-login-actions { display:grid; gap:14px; }
.jn-login-actions .jn-login-link { text-align:center; }
.jn-login-footer-link { margin-top:24px; padding-top:20px; border-top:1px solid var(--jn-line,#dfe6e5); text-align:center; color:var(--jn-muted,#697170); }
.jn-login-help { margin:-7px 0 0; color:var(--jn-muted,#697170); font-size:14px; }

@media (max-width:600px) {
  .jn-login-row { align-items:flex-start; flex-direction:column; }
  .jn-login-name-grid { grid-template-columns:1fr; }
}

/* Můj účet */
.jn-account-shell {
  width: min(100%, 1120px);
  margin: 0 auto;
}
.jn-account-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:24px;
}
.jn-account-head h1 {
  margin:4px 0 4px;
  font-size:clamp(34px,5vw,54px);
  line-height:1.05;
  font-weight:450;
  letter-spacing:-.035em;
}
.jn-account-head p { margin:0; color:var(--jn-muted,#697170); }
.jn-account-logout { color:var(--jn-teal-dark,#008775); font-weight:700; text-underline-offset:3px; }
.jn-account-grid {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:24px;
  align-items:start;
}
.jn-account-card {
  background:#fff;
  border:1px solid var(--jn-line,#dfe6e5);
  border-radius:18px;
  padding:clamp(22px,3vw,34px);
  box-shadow:var(--jn-shadow,0 12px 35px rgba(35,31,32,.08));
}
.jn-account-card h2 { margin:0 0 22px; font-size:26px; line-height:1.15; }
.jn-account-extra { margin-top:6px; padding-top:18px; border-top:1px solid var(--jn-line,#dfe6e5); display:grid; gap:16px; }
.jn-account-extra h3 { margin:0; font-size:18px; }
.jn-account-items { display:grid; gap:16px; }
.jn-account-item { border:1px solid var(--jn-line,#dfe6e5); border-radius:12px; padding:18px; background:#fff; }
.jn-account-item__top { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.jn-account-item__type { display:block; color:var(--jn-teal-dark,#008775); font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.jn-account-item h3 { margin:5px 0 0; font-size:18px; line-height:1.3; }
.jn-account-status { flex:0 0 auto; border-radius:999px; padding:5px 9px; font-size:12px; font-weight:800; }
.jn-account-status.is-active { background:#eaf8f2; color:#166b4d; }
.jn-account-status.is-inactive { background:#f2f2f2; color:#666; }
.jn-account-meta { margin:15px 0 0; display:grid; gap:9px; }
.jn-account-meta div { display:grid; grid-template-columns:135px 1fr; gap:12px; }
.jn-account-meta dt { color:var(--jn-muted,#697170); font-size:13px; }
.jn-account-meta dd { margin:0; font-weight:650; }
.jn-account-open { width:auto; margin-top:16px; }
.jn-account-empty { color:var(--jn-muted,#697170); }
.jn-login-field select { width:100%; }

@media (max-width:850px) {
  .jn-account-grid { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .jn-account-head { flex-direction:column; }
  .jn-account-item__top { flex-direction:column; }
  .jn-account-meta div { grid-template-columns:1fr; gap:2px; }
}
.jn-account-detail.is-sent dd,.jn-account-detail.is-ready dd{color:#166b4d}.jn-account-detail.is-waiting_test dd,.jn-account-detail.is-waiting_data dd{color:#9a6700}


/* JN brand additions */
.jn-login-card,
.jn-account-card {
  background: rgba(255,255,255,.96);
}
.jn-login-heading h1,
.jn-account-head h1,
.jn-account-card h2 {
  font-family: Georgia, "Times New Roman", serif;
  color: var(--jn-ink,#292326);
}
.jn-login-kicker,
.jn-account-item__type,
.jn-account-logout,
.jn-login-lost,
.jn-login-link,
.jn-login-footer-link a {
  color: var(--jn-rose-dark,#713e4c);
}
.jn-login-field input[type="text"],
.jn-login-field input[type="email"],
.jn-login-field input[type="password"],
.jn-login-field select {
  min-height: 48px;
  border: 1px solid var(--jn-line,#eadfdf);
  border-radius: 12px;
  background: #fff;
  padding: 10px 13px;
  color: var(--jn-ink,#292326);
  outline: none;
}
.jn-login-field input:focus,
.jn-login-field select:focus {
  border-color: var(--jn-rose,#bd7184);
  box-shadow: 0 0 0 3px rgba(189,113,132,.12);
}
.jn-login-submit,
.jn-login-button {
  border: 0;
  border-radius: 999px;
  background: var(--jn-rose-dark,#713e4c);
  color: #fff !important;
  font-weight: 800;
  cursor: pointer;
}
.jn-login-shell { padding: 28px 0; }
.jn-account-shell { padding: 26px 0; }


/* Můj účet 1.3 */
.jn-account-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.jn-account-head-link{display:inline-flex;padding:9px 13px;border:1px solid var(--jn-line,#eadfdf);border-radius:999px;background:#fff;color:var(--jn-rose-dark,#713e4c);text-decoration:none;font-weight:800;font-size:13px}
.jn-account-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}
.jn-account-overview-card{display:grid;gap:5px;padding:18px 20px;border:1px solid var(--jn-line,#eadfdf);border-radius:16px;background:rgba(255,255,255,.93)}
.jn-account-overview-card span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--jn-rose-dark,#713e4c)}
.jn-account-overview-card strong{font-family:Georgia,"Times New Roman",serif;font-size:34px;font-weight:500;color:var(--jn-ink,#292326)}
.jn-account-overview-card small{color:var(--jn-muted,#697170);line-height:1.4}
.jn-account-overview-card.needs-attention{background:#fff8ed;border-color:#edd9b5}
.jn-account-grid{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)}
.jn-account-profile-card{position:sticky;top:90px}
.jn-account-content{display:grid;gap:18px}
.jn-account-card-heading{margin-bottom:20px}
.jn-account-card-heading h2{margin:4px 0 0}
.jn-account-card-heading--row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.jn-account-section-kicker{display:block;color:var(--jn-rose-dark,#713e4c);font-size:11px;font-weight:800;letter-spacing:.12em}
.jn-account-section-count{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:#f7edef;color:var(--jn-rose-dark,#713e4c);font-size:12px;font-weight:800}
.jn-account-section .jn-account-item{background:#fdfbfa;border-color:#eee0e2}
.jn-account-open{min-width:150px}
@media(max-width:850px){.jn-account-overview{grid-template-columns:1fr}.jn-account-profile-card{position:static}.jn-account-grid{grid-template-columns:1fr}}
@media(max-width:600px){.jn-account-head-actions{justify-content:flex-start}}


/* JN Login 1.4 - anti-bot honeypot (off-screen, not display:none so basic bots still fill it) */
.jn-login-hp{
    position:absolute!important;
    left:-10000px!important;
    top:auto!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    opacity:.01!important;
    pointer-events:none!important;
}


/* 1.5.0 – informační odkaz na ochranu osobních údajů při registraci */
.jn-login-privacy-note {
    margin: 4px 0 14px;
    font-size: 13px;
    line-height: 1.55;
    color: #6f6a66;
}
.jn-login-privacy-note a {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.jn-login-privacy-note a:hover,
.jn-login-privacy-note a:focus {
    text-decoration-thickness: 2px;
}
