:root{
  --ta-bg:#f4f7fb;
  --ta-surface:#ffffff;
  --ta-surface-soft:#f8fbff;
  --ta-text:#152238;
  --ta-muted:#64748b;
  --ta-line:#dbe4f0;
  --ta-brand:#2563eb;
  --ta-brand-dark:#1d4ed8;
  --ta-brand-soft:#eff6ff;
  --ta-shadow:0 16px 38px rgba(15,23,42,.12);
}

html{
  background:linear-gradient(180deg,#f8fbff 0%,#eef4fb 44%,#f6f8fb 100%);
}

body{
  color:var(--ta-text);
  background:
    radial-gradient(circle at top left,rgba(219,234,254,.72) 0,transparent 26%),
    linear-gradient(180deg,#f8fbff 0%,#eef4fb 44%,#f6f8fb 100%) !important;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}

a{color:inherit}

button,
input,
select,
textarea{
  font-family:inherit;
}

input:focus,
select:focus,
textarea:focus{
  border-color:#60a5fa !important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12) !important;
  outline:none !important;
}

.ta-floating-header,
.sticky-mini-bar,
.top{
  border:1px solid rgba(148,163,184,.32) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.96) !important;
  color:var(--ta-text) !important;
  box-shadow:var(--ta-shadow) !important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.ta-floating-header,
.sticky-mini-bar{
  width:min(1480px,calc(100% - 32px)) !important;
  min-height:72px !important;
  padding:6px 22px !important;
}

.top{
  width:min(1480px,calc(100% - 32px));
  margin:16px auto 0;
  padding:8px 22px !important;
  min-height:72px;
}

.ta-logo-shell,
.sticky-mini-brand{
  width:248px !important;
  max-width:48vw !important;
  height:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.ta-logo-shell img,
.sticky-mini-brand-logo,
.top .brand img,
.auth .brand img,
.account .brand img,
main > img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
}

.top .brand{
  gap:14px;
}

.top .brand img{
  width:248px !important;
  max-width:48vw !important;
}

.top .brand strong{
  display:none;
}

.nav a,
.ta-pill,
.home,
.auth-nav__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border:1px solid var(--ta-line) !important;
  border-radius:9px !important;
  background:#fff !important;
  color:var(--ta-text) !important;
  font-weight:800;
  text-decoration:none;
  box-shadow:none !important;
}

.nav a:hover,
.ta-pill:hover,
.home:hover,
.auth-nav__button:hover{
  border-color:#bfdbfe !important;
  background:var(--ta-brand-soft) !important;
}

.nav a.primary,
.ta-pill.active,
.ta-header-right .ta-pill:first-child,
.auth-nav__button{
  border-color:var(--ta-brand) !important;
  background:var(--ta-brand) !important;
  color:#fff !important;
  box-shadow:0 10px 22px rgba(37,99,235,.18) !important;
}

.nav a.primary:hover,
.ta-pill.active:hover,
.ta-header-right .ta-pill:first-child:hover,
.auth-nav__button:hover{
  background:var(--ta-brand-dark) !important;
  border-color:var(--ta-brand-dark) !important;
}

.auth,
.account{
  background:rgba(255,255,255,.98) !important;
  border:1px solid var(--ta-line) !important;
  border-radius:18px !important;
  box-shadow:var(--ta-shadow) !important;
}

.auth,
.account{
  padding:30px !important;
}

.auth .brand,
.account .brand{
  align-items:center !important;
  gap:18px !important;
}

.auth .brand img,
.account .brand img,
main > img{
  width:300px !important;
  max-width:62vw !important;
}

.auth h1,
.account h1{
  color:var(--ta-text);
  letter-spacing:0 !important;
}

.auth p,
.account p,
.intro,
.muted{
  color:var(--ta-muted) !important;
}

.hero-card h1,
.hero-copy h1,
.stat-service__title{
  color:#fff !important;
}

.hero-card p,
.hero-copy p,
.stat-service__text{
  color:#fff !important;
}

button[type=submit],
.btn-primary,
.cta-link{
  border-color:var(--ta-brand) !important;
  background:var(--ta-brand) !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(37,99,235,.18) !important;
}

button[type=submit]:hover,
.btn-primary:hover,
.cta-link:hover{
  background:var(--ta-brand-dark) !important;
}

.panel,
.toolbar,
.table-wrap,
.info-box,
.summary-strip,
.message,
.alert-card,
.tools,
.calendar,
.field,
.hero-side,
.pricing-card,
.kpi,
.metric,
.site-footer{
  border-color:var(--ta-line) !important;
  background:rgba(255,255,255,.98) !important;
  box-shadow:0 12px 30px rgba(15,23,42,.08) !important;
}

.hero:not(.topbar .hero){
  border-color:rgba(191,219,254,.75) !important;
}

.brand-mark{
  background:linear-gradient(135deg,var(--ta-brand),#60a5fa) !important;
}

.topbar{
  background:transparent !important;
  border-bottom:0 !important;
  color:var(--ta-text) !important;
}

.topbar-inner{
  width:min(1180px,calc(100% - 32px)) !important;
  border:1px solid var(--ta-line) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.74) !important;
  box-shadow:0 12px 30px rgba(15,23,42,.08) !important;
  color:var(--ta-text) !important;
}

.topbar .brand,
.topbar .brand-copy strong,
.topbar .brand-copy span,
.topbar .nav-link{
  color:var(--ta-text) !important;
}

.page,
.wrap,
main{
  position:relative;
}

@media (max-width:720px){
  .ta-floating-header,
  .sticky-mini-bar,
  .top{
    width:calc(100% - 16px) !important;
    min-height:64px !important;
    padding:6px 10px !important;
    border-radius:14px !important;
  }

  .ta-logo-shell,
  .sticky-mini-brand,
  .top .brand img{
    width:176px !important;
    max-width:58vw !important;
  }

  .nav,
  .ta-header-right{
    gap:6px !important;
  }

  .nav a,
  .ta-pill,
  .home{
    min-height:38px;
    padding:0 11px;
    font-size:.84rem;
  }

  .auth,
  .account{
    padding:22px !important;
  }
}
