@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800&family=Inter:wght@400;500;600;700&display=swap');
body.cl-login-page { margin:0; background:#fff; color:#14211c; font-family:Inter,Arial,sans-serif; min-height:100vh; display:flex; flex-direction:column; }
.cl-login-page * { box-sizing:border-box; }
.cl-login-main { width:100%; flex:1; padding:64px 24px 52px; }
.cl-login-brand { text-align:center; margin:0 auto 38px; }
.cl-login-brand img { display:block; width:min(430px,100%); height:auto; margin:0 auto 32px; }
.cl-login-brand h1 { font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif; font-size:clamp(30px,4vw,44px); font-weight:700; line-height:1.12; letter-spacing:-.4px; text-transform:uppercase; margin:0; }
.cl-login-brand em { display:inline-block; color:#16b960; font-style:normal; }
.cl-login-form { width:100%; max-width:400px; margin:0 auto; }
.cl-login-form h2 { font:600 22px/1.4 Inter,Arial,sans-serif; text-align:center; margin:0 0 6px; }
.cl-login-intro { color:#69716e; font-size:14px; line-height:1.6; text-align:center; margin:0 0 26px; }
.cl-login-page .um { width:100%; max-width:none!important; margin:0!important; color:#14211c; }
.cl-login-page .um .um-field { padding-top:0; margin-bottom:20px; }
.cl-login-page .um .um-field-label { margin-bottom:8px; }
.cl-login-page .um .um-field-label label { color:#27332d!important; font:500 14px/1.4 Inter,Arial,sans-serif!important; }
.cl-login-page .um .um-form input[type=text], .cl-login-page .um .um-form input[type=email], .cl-login-page .um .um-form input[type=password] { height:50px!important; border:1px solid #d7deda!important; border-radius:6px!important; background:#fff!important; color:#14211c!important; padding:12px 14px!important; font:400 16px/1.5 Inter,Arial,sans-serif!important; box-shadow:none!important; }
.cl-login-page .um .um-form input:focus { border-color:#20ae78!important; outline:3px solid #20ae7826!important; outline-offset:1px; }
.cl-login-page .um .um-row { margin-bottom:0!important; }
.cl-login-page .um .um-col-alt { margin-top:0; }
.cl-login-page .um .um-field-checkbox-option { color:#69716e!important; font-size:13px; }
.cl-login-page .um .um-field-checkbox-state i { color:#20ae78; }
.cl-login-page .um .um-left, .cl-login-page .um .um-right { width:100%; float:none; }
.cl-login-page .um input[type=submit].um-button { width:100%; min-height:50px; background:#f50079!important; color:#fff!important; border:0!important; border-radius:6px!important; font:600 15px/1.4 Inter,Arial,sans-serif!important; box-shadow:none!important; }
.cl-login-page .um input[type=submit].um-button:hover { background:#d60068!important; }
.cl-login-page .um a.um-button.um-alt { display:block; padding:16px 0 0!important; min-height:0; background:transparent!important; color:#46544d!important; font:500 14px/1.5 Inter,Arial,sans-serif!important; box-shadow:none!important; }
.cl-login-page .um-login .um-right:has(a.um-button.um-alt) { display:none; }
.cl-login-page .um .um-col-alt-b { padding-top:12px; }
.cl-login-page .um a.um-link-alt { color:#69716e!important; font-size:13px; }
.cl-login-page a:focus-visible, .cl-login-page input[type=submit]:focus-visible { outline:3px solid #20ae78!important; outline-offset:4px; }
.cl-login-footer { border-top:1px solid #edf0ee; padding:22px 24px; display:flex; justify-content:center; align-items:center; gap:28px; font-size:12px; line-height:1.5; color:#7a837e; }
.cl-login-footer a { color:#46544d; text-decoration:none; }
.cl-login-footer a:hover { text-decoration:underline; }
.cl-login-skip { position:absolute; top:-100px; left:16px; }
.cl-login-skip:focus { top:16px; padding:10px; background:#fff; z-index:1000; }
@media(max-width:480px) { .cl-login-main { padding:38px 24px; } .cl-login-brand img { margin-bottom:28px; } .cl-login-brand { margin-bottom:30px; } .cl-login-footer { gap:16px; flex-wrap:wrap; } }

.cl-login-page .um .um-field-block { color:#69716e; font:400 14px/1.6 Inter,Arial,sans-serif; }
.cl-login-page .um-password { margin-top:20px!important; }
.cl-auth-return { margin:22px 0 0; text-align:center; font-size:14px; }
.cl-auth-return a { color:#46544d; text-decoration:none; }
.cl-auth-return a:hover { text-decoration:underline; }
.cl-login-page .um .um-center { width:100%; max-width:none; }
.cl-login-page .um .um-center input[type=submit].um-button { width:100%!important; }

/* Account settings share the same brand, with room for the account navigation. */
.cl-account-page .cl-login-form { max-width:480px; margin-inline:auto; }
.cl-account-page .um-account { padding-top:8px; }
.cl-account-page .um-account-profile-link { display:none; }
.cl-account-page .um-account-meta-img,
.cl-account-page .um-account-meta-img-b { display:none!important; }
.cl-account-page .um-account-side li a { border-radius:6px; }
.cl-account-page .um-account-side li a.current { background:#eaf8f0; color:#148350; }
.cl-account-page .um-account-side li a:hover { background:#f3f8f5; }
.cl-account-page .um-account-heading { color:#27332d; font-family:Inter,Arial,sans-serif; }
.cl-account-page .um-account-main { float:none; width:100%; padding:0 0 12px!important; }
.cl-account-page .um-account-main .um-field { margin-bottom:20px; }
.cl-account-page .um-account-nav a { color:#27332d; border-radius:6px; }
.cl-account-page .um-account-nav a.current { background:#eaf8f0; color:#148350; }
.cl-account-page .um .um-form select, .cl-account-page .um .um-form textarea { border:1px solid #d7deda; border-radius:6px; font:400 16px/1.5 Inter,Arial,sans-serif; }

.cl-app-return-button { display:inline-flex; align-items:center; justify-content:center; margin-top:28px; padding:16px 30px; min-height:56px; max-width:100%; border-radius:6px; background:#f50079; color:#fff!important; font:600 17px/1.4 Inter,Arial,sans-serif; text-decoration:none; }
.cl-app-return-button:hover { background:#d60068; color:#fff; }
.cl-account-page .um input[type=submit].um-button { background:#16834b!important; min-height:44px; font-size:14px!important; font-weight:500!important; }
.cl-account-page .um input[type=submit].um-button:hover { background:#116b3d!important; }
.cl-account-page .cl-app-return-button { display:flex; width:100%; min-height:64px; margin:24px auto 0; padding:20px 24px; font-size:19px; font-weight:700; box-shadow:0 6px 16px #f5007926; }
