:root{
  --color-primary:#1B263B;
  --color-secondary:#D4AF37;
  --color-text:#111827;
  --color-subtext:#6B7280;
  --radius-md:12px;
  --shadow-sm:0 6px 18px rgba(0,0,0,.06);
  --bg-soft:#ffffff;
}
.jl-auth-container{background:var(--bg-soft);padding:24px;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);max-width:640px;margin-inline:auto;}
.account-form-title{margin:0 0 16px;font-weight:700;color:var(--color-primary);}
.jl-name-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media (max-width:768px){.jl-name-row{grid-template-columns:1fr;}}
.form-group{margin:0 0 14px;}
.form-group input{width:100%;padding:12px 14px;border-radius:8px;border:1px solid #d9d9d9;transition:border-color .2s, box-shadow .2s;}
.form-group input:focus{border-color:var(--color-secondary);outline:none;box-shadow:0 0 0 3px rgba(212,175,55,.2);}
label{color:var(--color-text);font-weight:600;display:block;margin-bottom:6px;}
.jl-password-wrap{position:relative;display:block;}
.jl-toggle-pass{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;background:#f6f6f6;border-radius:50%;cursor:pointer;}
.jl-toggle-pass:after{content:'👁️';font-size:16px;line-height:34px;display:block;text-align:center;}
.jl-pass-hint{color:var(--color-subtext);font-size:.9rem;display:block;margin-top:4px;}
.jl-btn-register,.jl-btn-login,.button{width:100%;padding:12px 16px;background:var(--color-primary);color:#fff;border-radius:10px;border:none;font-weight:700;letter-spacing:.2px;transition:background .2s, transform .05s;}
.jl-btn-register:hover,.jl-btn-login:hover,.button:hover{background:var(--color-secondary);}
.jl-btn-register:active,.jl-btn-login:active,.button:active{transform:translateY(1px);}

/* Modal */
.jl-modal[aria-hidden="true"]{display:none;}
.jl-modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px;}
.jl-modal__dialog{width:min(720px,100%);background:#fff;border-radius:14px;box-shadow:var(--shadow-sm);overflow:hidden;position:relative;}
.jl-modal__title{margin:0;padding:16px 20px;background:#fafafa;border-bottom:1px solid #eee;color:var(--color-primary);}
.jl-modal__content{height:60vh;}
.jl-modal__close{position:absolute;right:10px;top:10px;width:36px;height:36px;border:0;border-radius:50%;background:#f1f1f1;cursor:pointer;font-size:22px;line-height:36px;text-align:center;}

/* REST content area */
.jl-terms-scroll{height:60vh;overflow:auto;padding:0 8px;}
.jl-terms-scroll h1,.jl-terms-scroll h2,.jl-terms-scroll h3{color:var(--color-primary);margin-top:1em;}
.jl-terms-scroll p,.jl-terms-scroll li{line-height:1.6;color:var(--color-text);}

/* Spinner */
.jl-spinner-wrap{display:flex;align-items:center;justify-content:center;height:100%;}
.jl-spinner{width:42px;height:42px;border-radius:50%;border:4px solid rgba(27,38,59,.15);border-top-color:#1B263B;animation:jl-spin 0.9s linear infinite;}
@keyframes jl-spin{to{transform:rotate(360deg);}}
