:root {
  --bg:#060a12;
  --bg-soft:#0a1220;
  --surface:#0f1928;
  --surface-2:#142238;
  --surface-3:#1a2b47;
  --text:#f7f9ff;
  --muted:#97a7bb;
  --line:#243754;
  --line-strong:#355176;
  --accent:#ef5f8e;
  --accent-hover:#fa74a3;
  --accent-deep:#a756df;
  --blue:#69a7ff;
  --brand-purple:#8c63e8;
  --success:#45c6aa;
  --warning:#f6c868;
  --shadow:0 24px 70px rgba(0,0,0,.42);
}

body,
body.customer-page,
body.admin-page,
body.download-page {
  background:
    radial-gradient(circle at 80% -8%,rgba(93,127,220,.18),transparent 34rem),
    radial-gradient(circle at 8% 18%,rgba(239,95,142,.09),transparent 27rem),
    linear-gradient(145deg,#060a12 0%,#0b1221 55%,#080b18 100%);
}

header.site-header,
body > header {
  border-bottom-color:rgba(105,167,255,.12);
  background:rgba(6,10,18,.82);
}

.logo {
  background:linear-gradient(145deg,#3d78be 0%,#736be1 54%,#d65da1 100%);
  box-shadow:0 12px 30px rgba(90,112,222,.26),0 0 0 1px rgba(143,184,255,.18) inset;
}

.card,
.download-product-card {
  border-color:var(--line);
  background:linear-gradient(155deg,rgba(17,29,47,.98),rgba(9,16,29,.98));
  box-shadow:var(--shadow);
}

.account-bar,
.tabs,
.admin-tabs,
.admin-subtabs,
.request-provider-tabs,
.library-provider-tabs,
.usage-tabs {
  border-color:var(--line);
  background:rgba(10,19,33,.84);
}

input,
select,
textarea {
  border-color:var(--line-strong);
  background:#091322;
}

input:hover,
select:hover,
textarea:hover {
  border-color:#4b6f9f;
}

input:focus,
select:focus,
textarea:focus {
  border-color:#75adff;
  background:#0c182a;
  box-shadow:0 0 0 3px rgba(105,167,255,.14),0 0 26px rgba(112,99,232,.08);
}

button,
.button-link,
.about-primary {
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background:linear-gradient(135deg,#ef5f8e 0%,#c45ac2 48%,#985ce8 100%);
  box-shadow:0 12px 28px rgba(200,82,173,.20);
}

button:hover:not(:disabled),
.button-link:hover,
.about-primary:hover {
  border-color:rgba(255,185,224,.28);
  filter:brightness(1.08);
  box-shadow:0 15px 34px rgba(200,82,173,.26);
}

button.secondary,
.secondary-download,
.about-secondary,
.about-install-guide-button,
.download-account-link {
  color:#e3edff;
  border:1px solid #35547d;
  background:linear-gradient(135deg,#17365d 0%,#245c9c 55%,#5866c9 100%);
  box-shadow:0 10px 24px rgba(42,91,157,.18);
}

button.quiet {
  border-color:transparent;
  color:#a9caff;
  background:transparent;
  box-shadow:none;
}

.tabs button,
.admin-tabs button,
.admin-subtabs button,
.request-provider-tabs button,
.library-provider-tabs button,
.usage-tabs button {
  border-color:transparent;
  color:#9eacc1;
  background:transparent;
  box-shadow:none;
}

.tabs button.active,
.tabs a.active,
.admin-tabs button.active,
.admin-subtabs button.active,
.admin-subtabs button[aria-selected="true"],
.request-provider-tabs button.active,
.request-provider-tabs button[aria-pressed="true"],
.library-provider-tabs button.active,
.library-provider-tabs button[aria-pressed="true"],
.usage-tabs button.active {
  color:#fff;
  border-color:rgba(117,173,255,.40);
  background:linear-gradient(135deg,rgba(44,105,179,.88),rgba(100,83,197,.82));
  box-shadow:0 8px 22px rgba(51,91,171,.22),inset 0 0 0 1px rgba(255,255,255,.05);
}

button.approve,
.translation-feedback-actions .approve {
  border-color:#36b783;
  background:linear-gradient(135deg,#168a55,#2cad79);
}

button.decline,
.translation-feedback-actions .reject {
  border-color:#d05b71;
  background:linear-gradient(135deg,#9f354c,#c94f68);
}

.hero-panel,
.download-hero {
  border-color:rgba(105,167,255,.22);
  background:
    linear-gradient(90deg,rgba(5,11,20,.94),rgba(8,15,29,.48)),
    radial-gradient(circle at 84% 26%,rgba(105,167,255,.27),transparent 24rem),
    radial-gradient(circle at 70% 90%,rgba(239,95,142,.17),transparent 20rem),
    #0a1424;
}

.eyebrow,
.download-kicker,
.section-kicker,
.about-kicker {
  color:#88b7ff;
}

.list-item,
.download-note-grid div {
  border-color:var(--line);
  background:linear-gradient(145deg,#0d192a,#0a1422);
}

button:focus-visible,
.button-link:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
a:focus-visible {
  outline:3px solid rgba(105,167,255,.38);
  outline-offset:2px;
}
