/* Version 1.4: this stylesheet is loaded only by the first account-access page. */
:root { --v14-navy:#0b1f45; --v14-blue:#2459d6; --v14-violet:#6d48db; --v14-soft:#f4f7fb; --v14-line:#dce5f0; --v14-text:#10223f; --v14-muted:#63728a; }
* { box-sizing: border-box; }
.login-v14-body { margin:0; min-height:100vh; background:#eef3f9; color:var(--v14-text); }
.login-v14-shell { min-height:100vh; display:grid; grid-template-columns:minmax(460px,1.05fr) minmax(560px,.95fr); }
.login-v14-visual { min-height:100vh; position:relative; overflow:hidden; display:flex; flex-direction:column; padding:42px clamp(38px,5vw,82px); color:#fff; background:radial-gradient(circle at 92% 12%,rgba(99,198,255,.28),transparent 28%), radial-gradient(circle at 10% 88%,rgba(133,92,255,.32),transparent 30%), linear-gradient(145deg,#091b3d 0%,#173f91 53%,#5339b4 100%); }
.login-v14-visual:after { content:""; position:absolute; right:-170px; bottom:-190px; width:560px; height:560px; border-radius:50%; border:1px solid rgba(255,255,255,.18); box-shadow:0 0 0 62px rgba(255,255,255,.045),0 0 0 124px rgba(255,255,255,.025); }
.login-v14-brand { position:relative; z-index:1; display:flex; align-items:center; gap:12px; }
.login-v14-brandmark { display:grid; place-items:center; width:43px; height:43px; border-radius:13px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.2); font-size:1.05rem; font-weight:900; backdrop-filter:blur(10px); }
.login-v14-brand strong,.login-v14-brand small { display:block; }
.login-v14-brand strong { font-size:.95rem; }
.login-v14-brand small { margin-top:2px; color:rgba(255,255,255,.66); font-size:.68rem; letter-spacing:.04em; }
.login-v14-copy { position:relative; z-index:1; max-width:780px; margin:auto 0; }
.login-v14-kicker { display:inline-flex; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.11); border:1px solid rgba(255,255,255,.15); color:#dceaff; font-size:.68rem; font-weight:900; letter-spacing:.13em; }
.login-v14-copy h1 { max-width:760px; margin:22px 0 18px; font-size:clamp(3rem,5vw,5.7rem); line-height:.98; letter-spacing:-.065em; }
.login-v14-copy p { max-width:680px; margin:0; color:rgba(255,255,255,.76); font-size:1.05rem; line-height:1.75; }
.login-v14-points { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.login-v14-points article { min-height:112px; display:flex; gap:12px; padding:16px; border-radius:17px; background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.13); backdrop-filter:blur(12px); }
.login-v14-points article>span { flex:0 0 auto; color:#bcd5ff; font-size:.72rem; font-weight:900; }
.login-v14-points strong,.login-v14-points small { display:block; }
.login-v14-points strong { font-size:.83rem; }
.login-v14-points small { margin-top:8px; color:rgba(255,255,255,.65); font-size:.72rem; line-height:1.45; }
.login-v14-main { min-height:100vh; display:grid; place-items:center; padding:32px; background:radial-gradient(circle at 90% 8%,#dff6fb 0,transparent 28%),linear-gradient(145deg,#f8faff,#eef4f8); }
.login-v14-card { width:min(690px,100%); max-height:calc(100vh - 42px); overflow:auto; padding:30px; border-radius:28px; background:rgba(255,255,255,.96); border:1px solid rgba(255,255,255,.95); box-shadow:0 32px 80px rgba(32,56,91,.16); scrollbar-width:thin; }
.login-v14-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.login-v14-eyebrow { color:#73829a; font-size:.65rem; font-weight:900; letter-spacing:.12em; }
.login-v14-card-head h2 { margin:7px 0 5px; font-size:2rem; letter-spacing:-.045em; }
.login-v14-card-head p { max-width:440px; margin:0; color:var(--v14-muted); font-size:.82rem; line-height:1.55; }
.login-v14-badge { flex:0 0 auto; padding:8px 10px; border-radius:10px; background:#eaf1ff; color:#2450a8; font-size:.62rem; font-weight:900; letter-spacing:.08em; }
.login-v14-badge.admin { background:#fff0e5; color:#a74a12; }
.login-v14-actions { display:grid; grid-template-columns:1fr 1.08fr; gap:8px; margin:22px 0; padding:7px; border-radius:18px; background:#edf2f8; }
.login-v14-action { min-width:0; display:flex; align-items:center; gap:9px; padding:11px; border:0; border-radius:13px; background:transparent; color:#65748c; text-align:left; cursor:pointer; transition:.2s ease; }
.login-v14-action:hover { background:rgba(255,255,255,.7); }
.login-v14-action.active { background:#fff; color:#13284c; box-shadow:0 9px 22px rgba(36,64,104,.1); }
.login-v14-action.admin.active { color:#94420f; background:#fff9f4; }
.login-v14-action-icon { display:grid; place-items:center; flex:0 0 auto; width:30px; height:30px; border-radius:9px; background:#e5ecf7; color:#294b83; font-weight:900; }
.login-v14-action.active .login-v14-action-icon { color:#fff; background:linear-gradient(135deg,var(--v14-blue),var(--v14-violet)); }
.login-v14-action.admin.active .login-v14-action-icon { background:linear-gradient(135deg,#c66525,#8e3911); }
.login-v14-action strong,.login-v14-action small { display:block; white-space:nowrap; }
.login-v14-action strong { font-size:.77rem; }
.login-v14-action small { margin-top:2px; color:#8a97a9; font-size:.62rem; }
.login-v14-panel { animation:v14In .2s ease both; }
@keyframes v14In { from{opacity:0;transform:translateY(5px)} to{opacity:1;transform:none} }
.login-v14-common-note,.login-v14-admin-note { display:flex; gap:11px; align-items:center; margin-bottom:17px; padding:13px; border-radius:15px; border:1px solid #d8e6f4; background:#f4f9ff; }
.login-v14-common-note>span,.login-v14-admin-note>span { display:grid; place-items:center; flex:0 0 auto; width:35px; height:35px; border-radius:10px; color:#fff; background:linear-gradient(135deg,#2459d6,#6948db); font-weight:900; }
.login-v14-common-note strong,.login-v14-common-note small,.login-v14-admin-note strong,.login-v14-admin-note small { display:block; }
.login-v14-common-note strong,.login-v14-admin-note strong { font-size:.8rem; }
.login-v14-common-note small,.login-v14-admin-note small { margin-top:3px; color:var(--v14-muted); font-size:.69rem; line-height:1.4; }
.login-v14-admin-note { border-color:#f0d7c4; background:#fff8f2; }
.login-v14-admin-note>span { background:linear-gradient(135deg,#c66525,#8e3911); }
.login-v14-primary { min-height:48px; margin-top:4px; border-radius:13px; box-shadow:0 10px 24px rgba(50,74,192,.24); }
.login-v14-primary.admin { background:linear-gradient(135deg,#bd5a1d,#7b2d0b); }
.login-v14-create-box { margin-top:20px; padding:17px; border:1px solid var(--v14-line); border-radius:18px; background:#f8fafc; }
.login-v14-create-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; margin-bottom:12px; }
.login-v14-create-heading span { color:#7c899b; font-size:.6rem; font-weight:900; letter-spacing:.1em; }
.login-v14-create-heading h3 { margin:3px 0 0; font-size:1.05rem; }
.login-v14-create-heading small { color:var(--v14-muted); font-size:.68rem; }
.login-v14-create-options { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.login-v14-create-options button { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:10px; padding:13px; border:1px solid #dce5ef; border-radius:14px; background:#fff; color:var(--v14-text); text-align:left; cursor:pointer; transition:.18s ease; }
.login-v14-create-options button:hover { transform:translateY(-2px); border-color:#9eb6ea; box-shadow:0 9px 24px rgba(38,66,104,.09); }
.login-v14-create-icon { display:grid; place-items:center; width:35px; height:35px; border-radius:10px; color:#fff; font-weight:900; }
.login-v14-create-icon.user { background:linear-gradient(135deg,#2459d6,#6548db); }
.login-v14-create-icon.admin { background:linear-gradient(135deg,#c66525,#8e3911); }
.login-v14-create-options strong,.login-v14-create-options small { display:block; }
.login-v14-create-options strong { font-size:.77rem; }
.login-v14-create-options small { margin-top:3px; color:var(--v14-muted); font-size:.65rem; }
.login-v14-create-options b { color:#718096; font-size:1.3rem; }
.login-v14-forgot { width:100%; margin-top:15px; padding:10px; border:0; border-top:1px solid #e6ebf2; background:transparent; color:#3159a4; font-size:.75rem; font-weight:800; cursor:pointer; }
.login-v14-register-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:15px; }
.login-v14-back { border:0; padding:0; background:transparent; color:#3159a4; font-size:.73rem; font-weight:850; cursor:pointer; }
.login-v14-account-choice { display:flex; gap:7px; padding:5px; border-radius:13px; background:#edf2f8; }
.login-v14-account-choice button { display:flex; align-items:center; gap:6px; padding:8px 11px; border:0; border-radius:9px; background:transparent; color:#6b788c; font-size:.71rem; font-weight:850; cursor:pointer; }
.login-v14-account-choice button.active { background:#fff; color:#172a4d; box-shadow:0 6px 15px rgba(35,57,89,.1); }
.login-v14-account-choice button span { display:grid; place-items:center; width:23px; height:23px; border-radius:7px; background:#dce6f4; }
.login-v14-account-choice button.active span { color:#fff; background:linear-gradient(135deg,#2459d6,#6747da); }
.login-v14-section-title { margin-bottom:15px; padding:14px; border-radius:15px; background:#f5f8fc; }
.login-v14-section-title h3 { margin:0 0 5px; font-size:1.05rem; }
.login-v14-section-title p { margin:0; color:var(--v14-muted); font-size:.7rem; line-height:1.5; }
.login-v14-form-grid { gap:11px; }
.login-v14-after-create { margin:10px 0 0; color:var(--v14-muted); text-align:center; font-size:.69rem; line-height:1.45; }
.login-v14-alert { margin:0 0 15px; padding:13px; border-radius:13px; font-size:.76rem; line-height:1.5; }
.login-v14-alert.success { color:#12633f; background:#eaf8f1; border:1px solid #c9ead9; }
.login-v14-version { margin-top:15px; color:#96a2b3; text-align:center; font-size:.58rem; font-weight:900; letter-spacing:.12em; }
.hidden-for-admin { display:none!important; }
@media(max-width:1150px){ .login-v14-shell{grid-template-columns:1fr 1fr}.login-v14-visual{padding:34px}.login-v14-copy h1{font-size:3.5rem}.login-v14-points{grid-template-columns:1fr}.login-v14-points article{min-height:auto}.login-v14-points article:nth-child(3){display:none} }
@media(max-width:860px){ .login-v14-shell{display:block}.login-v14-visual{min-height:360px;padding:28px}.login-v14-copy{margin:70px 0}.login-v14-copy h1{font-size:clamp(2.5rem,10vw,4.2rem)}.login-v14-points{display:none}.login-v14-main{min-height:auto;padding:20px}.login-v14-card{max-height:none;margin-top:-55px;position:relative;z-index:3} }
@media(max-width:600px){ .login-v14-main{padding:12px}.login-v14-card{padding:19px;border-radius:21px}.login-v14-card-head{display:block}.login-v14-badge{display:inline-block;margin-top:10px}.login-v14-actions{grid-template-columns:1fr}.login-v14-action{justify-content:flex-start}.login-v14-create-options{grid-template-columns:1fr}.login-v14-create-heading{display:block}.login-v14-create-heading small{display:block;margin-top:5px}.login-v14-register-top{align-items:flex-start;flex-direction:column}.login-v14-account-choice{width:100%}.login-v14-account-choice button{flex:1;justify-content:center}.login-v14-form-grid{grid-template-columns:1fr!important} }

/* v2.5 separate Local User and Administrator access pages */
.admin-auth-visual { background:radial-gradient(circle at 92% 12%,rgba(255,186,99,.25),transparent 28%),radial-gradient(circle at 10% 88%,rgba(185,91,42,.28),transparent 30%),linear-gradient(145deg,#21130d 0%,#6f3215 52%,#8e4c1f 100%); }
@media(max-width:600px){
  .login-v14-actions{grid-template-columns:1fr 1fr;}
  .login-v14-action{padding:10px 8px;}
  .login-v14-action strong,.login-v14-action small{white-space:normal;}
}

/* v3.0 Super Admin owner access: scoped only to /super-admin-access */
.super-admin-access-page{
  --sa-navy:#071a3b;
  --sa-blue:#1f58d6;
  --sa-indigo:#4c45d8;
  --sa-cyan:#53c8f4;
  --sa-ink:#10213d;
  --sa-muted:#66758b;
  --sa-line:#dce6f2;
  background:#eef4fa;
}
.super-admin-access-page .super-auth-visual{
  background:
    radial-gradient(circle at 88% 10%,rgba(83,200,244,.28),transparent 27%),
    radial-gradient(circle at 10% 90%,rgba(112,86,225,.24),transparent 32%),
    linear-gradient(145deg,#071a3b 0%,#123d8f 48%,#3340a8 72%,#512ea7 100%);
}
.super-admin-access-page .super-auth-visual:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent 72%);
}
.super-admin-access-page .super-auth-copy h1{max-width:820px;font-size:clamp(3rem,4.9vw,5.4rem);}
.super-admin-access-page .super-auth-copy p{max-width:760px;}
.super-admin-access-page .super-auth-points article{background:rgba(255,255,255,.105);border-color:rgba(255,255,255,.15);}
.super-admin-access-page .super-admin-auth-main{
  min-width:0;
  background:
    radial-gradient(circle at 82% 14%,rgba(90,207,241,.2),transparent 24%),
    radial-gradient(circle at 10% 88%,rgba(102,81,218,.12),transparent 28%),
    linear-gradient(145deg,#f8fbff,#edf3f8);
}
.super-admin-access-page .super-admin-auth-card{
  width:min(590px,100%);
  max-height:none;
  overflow:visible;
  padding:38px;
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 30px 85px rgba(24,47,83,.17);
}
.super-admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px;}
.super-admin-card-head h2,.super-admin-reset-head h2{margin:7px 0 8px;color:var(--sa-ink);font-size:2rem;letter-spacing:-.045em;line-height:1.05;}
.super-admin-card-head p,.super-admin-reset-head p{margin:0;color:var(--sa-muted);font-size:.82rem;line-height:1.6;}
.super-admin-secure-badge{flex:0 0 auto;padding:9px 11px;border-radius:10px;background:#eaf1ff;color:#2851a6;font-size:.61rem;font-weight:900;letter-spacing:.09em;}
.super-admin-form{display:grid;gap:16px;}
.super-admin-primary{min-height:49px;border-radius:13px;background:linear-gradient(135deg,#245ce0,#6549db);box-shadow:0 12px 28px rgba(55,77,197,.23);}
.super-admin-forgot-link,.super-admin-secondary-link,.super-admin-back{border:0;background:transparent;color:#3158a6;font-weight:850;cursor:pointer;}
.super-admin-forgot-link{width:100%;padding:13px 8px 4px;border-top:1px solid #e7edf5;font-size:.76rem;}
.super-admin-secondary-link{width:100%;padding:11px 8px 0;font-size:.74rem;}
.super-admin-back{padding:0;margin:0 0 18px;font-size:.76rem;}
.super-admin-reset-head{margin-bottom:20px;}
.super-admin-reset-step{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;padding:18px;border:1px solid var(--sa-line);border-radius:18px;background:#f8fbff;}
.super-admin-step-number{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,#245ce0,#6549db);color:#fff;font-weight:900;font-size:.82rem;box-shadow:0 8px 18px rgba(57,78,198,.2);}
.super-admin-step-content{min-width:0;}
.super-admin-step-content h3{margin:0 0 4px;color:var(--sa-ink);font-size:1rem;}
.super-admin-step-content>p{margin:0 0 15px;color:var(--sa-muted);font-size:.73rem;line-height:1.5;}
.super-admin-reset-notice{margin-bottom:16px;padding:12px 13px;border-radius:13px;font-size:.73rem;line-height:1.5;}
.super-admin-reset-notice.success{color:#12633f;background:#eaf8f1;border:1px solid #c9ead9;}
.super-admin-reset-notice.info{color:#24508f;background:#eef5ff;border:1px solid #d3e4fa;}
.super-admin-reset-notice.warning{color:#805414;background:#fff7e8;border:1px solid #f1ddb5;}
.super-admin-otp-grid{display:grid;grid-template-columns:repeat(4,58px);gap:10px;justify-content:start;margin:6px 0 17px;}
.super-admin-otp-input{width:58px;height:60px;border:1px solid #cfdceb;border-radius:14px;background:#fff;color:var(--sa-ink);font-size:1.55rem;font-weight:900;text-align:center;outline:none;transition:.16s ease;}
.super-admin-otp-input:focus{border-color:#5c71e6;box-shadow:0 0 0 4px rgba(65,91,222,.11);}
.super-admin-access-page .error{min-height:16px;}
.super-admin-access-page .success{color:#147047;}
@media(max-width:1150px){
  .super-admin-access-page .super-admin-auth-card{padding:31px;}
}
@media(max-width:860px){
  .super-admin-access-page .super-auth-visual{min-height:410px;}
  .super-admin-access-page .super-auth-copy{margin:72px 0;}
  .super-admin-access-page .super-admin-auth-main{padding:20px;}
  .super-admin-access-page .super-admin-auth-card{margin-top:-62px;position:relative;z-index:4;}
}
@media(max-width:600px){
  .super-admin-access-page .super-auth-visual{min-height:330px;padding:23px 20px;}
  .super-admin-access-page .super-auth-copy{margin:55px 0 30px;}
  .super-admin-access-page .super-auth-copy h1{font-size:clamp(2.35rem,12vw,3.45rem);}
  .super-admin-access-page .super-admin-auth-main{padding:12px;}
  .super-admin-access-page .super-admin-auth-card{padding:20px;border-radius:21px;}
  .super-admin-card-head{display:block;}
  .super-admin-secure-badge{display:inline-block;margin-top:12px;}
  .super-admin-reset-step{grid-template-columns:1fr;padding:15px;}
  .super-admin-otp-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
  .super-admin-otp-input{width:100%;height:56px;}
}
