/* ─── STRUCTURE ────────────────────────────────────────────────────────── */
.section-title{
  font-family:var(--font-display);font-weight:700;
  font-size:0.72rem;letter-spacing:0.08em;
  text-transform:uppercase;color:var(--text3);
}
.divider{height:1px;background:var(--border);margin:14px 0}
.empty-state{text-align:center;padding:40px 20px;color:var(--text3)}

/* Auth shell — used only for login/welcome */
.auth-card{max-width:400px;margin:0 auto;padding:24px 20px}
.auth-title{
  font-family:var(--font-display);font-weight:900;font-size:2rem;
  color:var(--sf-aqua);margin-bottom:4px;
}
.auth-sub{font-size:0.85rem;color:var(--text3);margin-bottom:24px}

/* ─── UTILITIES ────────────────────────────────────────────────────────── */
.mb4{margin-bottom:4px}.mb6{margin-bottom:6px}.mb8{margin-bottom:8px}
.mb10{margin-bottom:10px}.mb12{margin-bottom:12px}.mb14{margin-bottom:14px}.mb16{margin-bottom:16px}
.mt4{margin-top:4px}.mt6{margin-top:6px}.mt8{margin-top:8px}.mt10{margin-top:10px}.mt12{margin-top:12px}
.gap4{display:flex;flex-direction:column;gap:4px}
.gap6{display:flex;flex-direction:column;gap:6px}
.gap8{display:flex;flex-direction:column;gap:8px}
.gap10{display:flex;flex-direction:column;gap:10px}
.gap12{display:flex;flex-direction:column;gap:12px}
.flex-row{display:flex;align-items:center;gap:10px}
.flex-between{display:flex;align-items:center;justify-content:space-between}
.fw700{font-weight:700}
.text-xs{font-size:0.72rem;color:var(--text3)}
.text-sm{font-size:0.85rem}
.mono{font-family:var(--font-mono)}

@keyframes spin{to{transform:rotate(360deg)}}

/* ─── AUTH SPLIT/STACK LAYOUT ─────────────────────────────────────────── */
.auth-shell{
  min-height:100%;width:100%;
  background:linear-gradient(145deg,#E8FAFA 0%,#C5EFEF 60%,#9FE4E4 100%);
  display:flex;align-items:center;justify-content:center;padding:24px 20px;
}
.auth-inner{
  width:100%;max-width:1100px;border-radius:20px;overflow:hidden;
  box-shadow:0 16px 56px rgba(6,75,85,0.18),0 4px 16px rgba(6,75,85,0.10);
  display:flex;min-height:560px;
}
.auth-hero{
  width:50%;background:linear-gradient(155deg,#064B55 0%,#073B4A 100%);
  padding:48px 40px;position:relative;overflow:hidden;
  display:flex;flex-direction:column;
}
.auth-hero-lines{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.auth-form-panel{
  width:50%;background:#FFFFFF;padding:48px 44px;
  display:flex;flex-direction:column;justify-content:center;
}
@media(max-width:640px){
  .auth-shell{padding:0;align-items:flex-start;background:#064B55;}
  .auth-inner{flex-direction:column;border-radius:0;min-height:100%;box-shadow:none;width:100%;}
  .auth-hero{width:100%;padding:36px 24px 40px;flex-shrink:0;}
  .auth-form-panel{width:100%;padding:28px 24px 32px;border-radius:20px 20px 0 0;margin-top:-18px;position:relative;z-index:2;flex:1;justify-content:flex-start;}
}
