:root {
  --bg: #071018;
  --ink: #e8f2f4;
  --muted: #9bb4bc;
  --line: rgba(168,214,224,.16);
  --accent: #3de0c5;
  --tour: #2f9bff;
  --silver: #c8ced4;
  --font: "Manrope", sans-serif;
  --display: "Montserrat", sans-serif; /* Geometria Bold analogue */
  --max: 960px;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--ink);
  font-family: var(--font);
  background:
    radial-gradient(900px 420px at 90% -10%, rgba(47,155,255,.18), transparent 55%),
    linear-gradient(180deg, #071018, #0d1b24);
}
a { color: inherit; text-decoration: none; }
.mt-shell { min-height: 100vh; display: flex; flex-direction: column; }
.mt-main { flex: 1; width: min(100% - 2rem, var(--max)); margin: 0 auto; padding: 1rem 0 3rem; }
.mt-top {
  width: min(100% - 2rem, var(--max));
  margin: 0 auto;
  padding: 1.1rem 0;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
}
.mt-brand {
  display: inline-flex;
  gap: .7rem;
  align-items: center;
}
.mt-brand__logo {
  width: 2.1rem;
  height: 2.1rem;
  display: block;
  filter: drop-shadow(0 0 10px rgba(61,224,197,.2));
}
.mt-brand__text { display: flex; flex-direction: column; line-height: 1.1; }
.mt-brand__name {
  font-family: var(--display);
  font-weight: 700;
  font-size: 1.05rem;
  color: var(--silver);
}
.mt-brand__tag {
  font-family: var(--display);
  font-weight: 600;
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--accent);
}
.mt-nav { display: flex; flex-wrap: wrap; gap: .9rem; color: var(--muted); font-size: .92rem; }
.mt-nav a:hover { color: var(--ink); }
.mt-hero { padding: 2rem 0 1rem; }
.mt-hero--compact { padding: 1.2rem 0 .4rem; }
.mt-hero--compact .mt-kicker { font-size: clamp(1.5rem, 3.5vw, 2.1rem); }
.mt-hero--compact h1 { font-size: clamp(1.35rem, 3vw, 1.8rem); }
.mt-tour-panel {
  margin-top: 1.2rem;
  padding: 1.25rem 1.2rem 1.5rem;
  border-radius: 18px;
  background: #f4f7f8;
  color: #122027;
  border: 1px solid rgba(255,255,255,.08);
}
.mt-tour-panel a { color: #0b6e63; }
.mt-tour-panel .mixnode-cabinet { max-width: none; padding: 0; }
.mt-tour-panel .mixnode-cabinet__title,
.mt-tour-panel .mixnode-cabinet__eyebrow,
.mt-tour-panel h2,
.mt-tour-panel h3,
.mt-tour-panel h4,
.mt-tour-panel label,
.mt-tour-panel p,
.mt-tour-panel strong { color: #122027; }
.mt-tour-panel .mixnode-muted { color: #5b717a; }
.mt-tour-panel input[type="text"],
.mt-tour-panel input[type="email"],
.mt-tour-panel input[type="password"],
.mt-tour-panel input[type="tel"],
.mt-tour-panel select,
.mt-content input[type="text"],
.mt-content input[type="email"],
.mt-content input[type="password"],
.mt-content input[type="tel"],
.mt-content select {
  background: #fff;
  color: #122027;
  border: 1px solid #c9d6db;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  min-height: 3.1rem;
  padding: 0.9rem 1rem;
  font-size: 1.05rem;
  border-radius: 12px;
}
.mt-tour-panel #loginform,
.mt-tour-panel #mixnode-loginform,
.mt-content #loginform,
.mt-content #mixnode-loginform {
  max-width: 420px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.mt-tour-panel #loginform p,
.mt-tour-panel #mixnode-loginform p,
.mt-content #loginform p,
.mt-content #mixnode-loginform p {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.45rem;
  margin: 0;
  float: none;
  width: 100%;
}
.mt-tour-panel #loginform label,
.mt-tour-panel #mixnode-loginform label,
.mt-content #loginform label,
.mt-content #mixnode-loginform label {
  display: block;
  float: none;
  width: auto;
}
.mt-tour-panel #loginform .login-remember,
.mt-tour-panel #mixnode-loginform .login-remember,
.mt-content #loginform .login-remember,
.mt-content #mixnode-loginform .login-remember {
  flex-direction: row;
  align-items: center;
}
.mt-tour-panel #loginform .login-remember label,
.mt-tour-panel #mixnode-loginform .login-remember label,
.mt-content #loginform .login-remember label,
.mt-content #mixnode-loginform .login-remember label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.mt-tour-panel #wp-submit,
.mt-content #wp-submit {
  width: 100%;
  min-height: 3.1rem;
  border-radius: 12px;
  font-size: 1.05rem;
  font-weight: 700;
}
.mt-hero__brand { margin: 0 0 1rem; }
.mt-hero__brand img {
  width: 4.5rem;
  height: 4.5rem;
  filter: drop-shadow(0 0 18px rgba(61,224,197,.25));
}
.mt-kicker {
  margin: 0 0 .6rem;
  font-family: var(--display);
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 700;
  background: linear-gradient(90deg, #fff, var(--accent));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.mt-hero h1, .mt-page h1 {
  margin: 0 0 .8rem;
  font-family: var(--display);
  letter-spacing: -.02em;
}
.mt-lead, .mt-page .mt-content { color: var(--muted); max-width: 40rem; }
.mt-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.4rem; }
.mt-btn {
  display: inline-flex;
  align-items: center;
  min-height: 2.7rem;
  padding: .65rem 1.05rem;
  border-radius: 999px;
  font-weight: 700;
  font-family: var(--display);
  border: 1px solid transparent;
}
.mt-btn--primary { background: linear-gradient(135deg, var(--accent), #2bb8a3); color: #042018; }
.mt-btn--ghost { border-color: var(--line); background: rgba(255,255,255,.03); }
.mt-content .mixnode-btn--primary,
.mt-tour-panel .mixnode-btn--primary {
  background: linear-gradient(135deg, var(--accent), #2bb8a3);
  color: #042018;
  font-family: var(--display);
  border-radius: 12px;
}
.mt-content .mixnode-btn--primary:hover,
.mt-tour-panel .mixnode-btn--primary:hover {
  filter: brightness(1.05);
}
.mt-page { padding-top: 1rem; }
.mt-page h1 { color: var(--ink); font-family: var(--display); }
.mt-content {
  margin-top: 1rem;
  padding: 1.25rem 1.2rem 1.4rem;
  border-radius: 18px;
  background: #f4f7f8;
  color: #122027;
  border: 1px solid rgba(255,255,255,.08);
}
.mt-content a { color: #0b6e63; }
.mt-content .mixnode-cabinet__title,
.mt-content .mixnode-cabinet__eyebrow,
.mt-content h2,
.mt-content h3,
.mt-content label,
.mt-content p { color: #122027; }
.mt-content .mixnode-muted { color: #5b717a; }
.mt-footer {
  width: min(100% - 2rem, var(--max));
  margin: 0 auto;
  padding: 1.2rem 0 1.8rem;
  border-top: 1px solid var(--line);
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  color: var(--muted);
  font-size: .9rem;
}
.mt-footer a:hover { color: var(--accent); }
@media (max-width: 720px) {
  .mt-top { flex-direction: column; align-items: flex-start; }
}
