/* Dersal V16.1 — brand, button and social polish */
:root{
  --ds-btn-radius:13px;
  --ds-btn-height:48px;
  --ds-btn-shadow:0 1px 0 rgba(255,255,255,.20) inset,0 10px 24px rgba(91,75,255,.20);
  --ds-btn-shadow-hover:0 1px 0 rgba(255,255,255,.24) inset,0 14px 30px rgba(91,75,255,.25);
  --ds-btn-neutral-shadow:0 1px 2px rgba(20,22,35,.04),0 7px 18px rgba(20,22,35,.055)
}

/* Brand mark: one visual identity across public pages, dashboards and admin. */
.brand-mark,
.student-app-brand .brand-mark,
.admin-pro-brand .brand-mark{
  width:38px!important;
  height:38px!important;
  border-radius:0!important;
  background:transparent url('../brand/dersal-mark.svg') center/contain no-repeat!important;
  box-shadow:none!important;
  transform:none!important;
  filter:none!important;
  overflow:visible!important;
}
.brand-mark::before,.brand-mark::after,.brand-mark>span{display:none!important;content:none!important}
.brand{gap:10px!important;font-size:21px!important;font-weight:800!important;letter-spacing:-.045em!important}
.brand>span:last-child{line-height:1;color:inherit}
.brand-light .brand-mark{filter:drop-shadow(0 7px 16px rgba(91,75,255,.22))!important}
.site-header .brand{min-height:46px}

/* One premium button language. */
.btn,.v130-btn{
  min-height:var(--ds-btn-height)!important;
  padding:0 20px!important;
  border:1px solid transparent!important;
  border-radius:var(--ds-btn-radius)!important;
  gap:8px!important;
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:-.015em!important;
  text-decoration:none!important;
  cursor:pointer;
  box-shadow:var(--ds-btn-neutral-shadow)!important;
  transform:translateY(0)!important;
  transition:transform 160ms ease,box-shadow 160ms ease,background-color 160ms ease,border-color 160ms ease,color 160ms ease!important;
  -webkit-tap-highlight-color:transparent
}
.btn svg,.v130-btn svg{width:16px!important;height:16px!important;flex:0 0 auto}
.btn:hover,.v130-btn:hover{transform:translateY(-1px)!important}
.btn:active,.v130-btn:active{transform:translateY(0)!important;transition-duration:80ms!important}
.btn:focus-visible,.v130-btn:focus-visible{outline:3px solid rgba(91,75,255,.20)!important;outline-offset:3px!important}

.btn-primary,.v130-btn-primary{
  background:#5b4bff!important;
  border-color:#5b4bff!important;
  color:#fff!important;
  box-shadow:var(--ds-btn-shadow)!important
}
.btn-primary:hover,.v130-btn-primary:hover{
  background:#4f3ff1!important;
  border-color:#4f3ff1!important;
  box-shadow:var(--ds-btn-shadow-hover)!important
}
.btn-primary:active,.v130-btn-primary:active{background:#4636df!important;box-shadow:0 4px 12px rgba(91,75,255,.18)!important}

.btn-outline,.v130-btn-secondary{
  background:#fff!important;
  border-color:#d9dbe4!important;
  color:#252836!important;
  box-shadow:var(--ds-btn-neutral-shadow)!important
}
.btn-outline:hover,.v130-btn-secondary:hover{
  background:#fafafd!important;
  border-color:#c7cad6!important;
  color:#171927!important;
  box-shadow:0 2px 3px rgba(20,22,35,.04),0 10px 24px rgba(20,22,35,.07)!important
}
.btn-ghost{
  background:transparent!important;
  border-color:transparent!important;
  color:#4b5060!important;
  box-shadow:none!important
}
.btn-ghost:hover{background:#f4f4f8!important;border-color:#ececf2!important;color:#171927!important;box-shadow:none!important}
.btn-secondary{background:#202331!important;border-color:#202331!important;color:#fff!important;box-shadow:0 10px 24px rgba(20,22,35,.16)!important}
.btn-secondary:hover{background:#171927!important;border-color:#171927!important;box-shadow:0 13px 28px rgba(20,22,35,.20)!important}
.btn-danger{background:#fff7f7!important;border-color:#f0cccc!important;color:#b83232!important;box-shadow:none!important}
.btn-danger:hover{background:#fff0f0!important;border-color:#e8b8b8!important;color:#9e2828!important}
.btn-success{background:#effaf6!important;border-color:#c4eadb!important;color:#087f5b!important;box-shadow:none!important}

.btn-sm{
  min-height:40px!important;
  padding:0 15px!important;
  border-radius:11px!important;
  font-size:12px!important
}
.btn-block{width:100%}
.btn[disabled],.btn:disabled,.v130-btn[disabled],.v130-btn:disabled{
  opacity:.48!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important
}

/* Public hero/header buttons should feel intentional, not oversized. */
.main-nav>.btn.btn-sm{min-height:40px!important;padding-inline:16px!important;border-radius:11px!important}
.v130-home .v130-hero-actions .v130-btn{min-height:50px!important;padding-inline:22px!important;border-radius:13px!important;font-size:13px!important}
.market-tutor-footer .btn,.group-v15-footer .btn,.editorial-v15-search .btn{min-height:44px!important;border-radius:12px!important}
.institution-v15-actions .btn{min-height:50px!important;padding-inline:22px!important}

/* Social icons — consistent shapes, quiet by default, recognizable on hover. */
.social-links{display:flex;align-items:center;flex-wrap:wrap;gap:9px!important}
.social-link{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  height:40px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(117,128,151,.20)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#656b7a!important;
  box-shadow:0 1px 2px rgba(20,22,35,.04)!important;
  transform:none!important;
  transition:transform 160ms ease,box-shadow 160ms ease,border-color 160ms ease,background-color 160ms ease,color 160ms ease!important
}
.social-link svg{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important}
.social-link:hover{transform:translateY(-1px)!important;background:#fff!important;border-color:#d1d4de!important;box-shadow:0 8px 20px rgba(20,22,35,.10)!important}
.social-link:focus-visible{outline:3px solid rgba(91,75,255,.18)!important;outline-offset:3px!important}
.social-link-instagram:hover{color:#d93f78!important;border-color:#efc4d6!important}
.social-link-facebook:hover{color:#1877f2!important;border-color:#c4d9f8!important}
.social-link-x:hover{color:#111!important;border-color:#cfd0d5!important}
.social-link-linkedin:hover{color:#0a66c2!important;border-color:#c1d8ee!important}
.social-link-youtube:hover{color:#f00!important;border-color:#f2c5c5!important}
.social-link-tiktok:hover{color:#111!important;border-color:#cfd0d5!important}
.social-link-whatsapp:hover{color:#159a55!important;border-color:#bee4cf!important}

.site-footer-market .social-links-footer{margin-top:20px!important;gap:10px!important}
.site-footer-market .social-links-footer .social-link,
.site-footer-panel .social-links-footer .social-link{
  width:42px!important;height:42px!important;
  border-color:rgba(255,255,255,.13)!important;
  background:rgba(255,255,255,.065)!important;
  color:#d9dbe3!important;
  box-shadow:none!important;
  backdrop-filter:blur(8px)
}
.site-footer-market .social-links-footer .social-link:hover,
.site-footer-panel .social-links-footer .social-link:hover{background:#fff!important;box-shadow:0 9px 24px rgba(0,0,0,.18)!important}
.site-footer-market .social-links-footer .social-link-instagram:hover,.site-footer-panel .social-links-footer .social-link-instagram:hover{color:#d93f78!important}
.site-footer-market .social-links-footer .social-link-facebook:hover,.site-footer-panel .social-links-footer .social-link-facebook:hover{color:#1877f2!important}
.site-footer-market .social-links-footer .social-link-x:hover,.site-footer-panel .social-links-footer .social-link-x:hover{color:#111!important}
.site-footer-market .social-links-footer .social-link-linkedin:hover,.site-footer-panel .social-links-footer .social-link-linkedin:hover{color:#0a66c2!important}
.site-footer-market .social-links-footer .social-link-youtube:hover,.site-footer-panel .social-links-footer .social-link-youtube:hover{color:#f00!important}
.site-footer-market .social-links-footer .social-link-tiktok:hover,.site-footer-panel .social-links-footer .social-link-tiktok:hover{color:#111!important}
.site-footer-market .social-links-footer .social-link-whatsapp:hover,.site-footer-panel .social-links-footer .social-link-whatsapp:hover{color:#159a55!important}

.social-links-header .social-link{width:34px!important;height:34px!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important}
.social-links-header .social-link:hover{background:#f7f7fa!important;box-shadow:none!important}

@media(max-width:680px){
  .btn,.v130-btn{min-height:48px!important;padding-inline:18px!important}
  .v130-home .v130-hero-actions .v130-btn{width:100%;min-height:50px!important}
  .social-links-footer .social-link{width:44px!important;height:44px!important}
}

@media(prefers-reduced-motion:reduce){
  .btn,.v130-btn,.social-link{transition:none!important;transform:none!important}
}
