/* URLTO shared public tool visual system.
   Keeps existing tool DOM/contracts intact while aligning the pages with the
   approved navy + blue/violet SaaS direction used by the homepage and hubs. */

.tool-v2-shell {
  --tool-v2-navy: #071426;
  --tool-v2-navy-soft: #0b1d38;
  --tool-v2-blue: #3f73ff;
  --tool-v2-violet: #7458f6;
  --tool-v2-ink: #111b2e;
  --tool-v2-muted: #69758a;
  --tool-v2-line: #e4e9f2;
  --tool-v2-soft: #f5f7fb;
  min-height: 100vh;
  background:
    radial-gradient(circle at 76% 5%, rgba(91, 91, 255, .17), transparent 22rem),
    linear-gradient(180deg, var(--tool-v2-navy) 0, var(--tool-v2-navy-soft) 340px, #f5f7fb 340px, #fff 100%);
  color: var(--tool-v2-ink);
}

.tool-v2-shell .site-header {
  position: relative;
  z-index: 3;
  color: rgba(236, 243, 255, .72);
}

.tool-v2-shell .site-header .brand {
  color: #fff;
  letter-spacing: .045em;
}

.tool-v2-shell .site-header nav a {
  color: rgba(236, 243, 255, .72);
}

.tool-v2-shell .site-header nav a:hover {
  color: #fff;
}

.tool-v2-shell .site-header .lang-switch {
  border-color: rgba(255, 255, 255, .15);
  background: rgba(255, 255, 255, .07);
  color: #fff;
}

.tool-v2-shell .tool-main,
.tool-v2-shell .content-main {
  position: relative;
  z-index: 1;
}

.tool-v2-shell .tool-main {
  width: min(100% - 32px, 980px);
  margin: 0 auto;
  padding: 54px 0 84px;
}

.tool-v2-shell .tool-hero,
.tool-v2-shell .content-hero.audit-hero {
  margin: 0 auto 32px;
  padding: 20px 0 10px;
  color: #fff;
}

.tool-v2-shell .tool-hero h1,
.tool-v2-shell .content-hero.audit-hero h1 {
  color: #fff;
  font-size: clamp(2.25rem, 6vw, 4rem);
  line-height: 1.04;
  letter-spacing: -.05em;
}

.tool-v2-shell .tool-hero > p:not(.eyebrow),
.tool-v2-shell .content-hero.audit-hero .content-lead {
  max-width: 720px;
  color: rgba(226, 236, 251, .72);
  line-height: 1.72;
}

.tool-v2-shell .eyebrow,
.tool-v2-shell .audit-step {
  color: #86baff;
  letter-spacing: .13em;
  font-weight: 800;
}

.tool-v2-shell .tool-card,
.tool-v2-shell .audit-card,
.tool-v2-shell .audit-result,
.tool-v2-shell .content-section,
.tool-v2-shell .content-cta {
  border: 1px solid var(--tool-v2-line);
  border-radius: 20px;
  background: rgba(255, 255, 255, .985);
  box-shadow: 0 18px 48px rgba(20, 37, 68, .08);
}

.tool-v2-shell .tool-card,
.tool-v2-shell .audit-card {
  padding: clamp(20px, 4vw, 34px);
}

.tool-v2-shell .tool-card input,
.tool-v2-shell .tool-card textarea,
.tool-v2-shell .audit-card input {
  border-color: #dfe5ef;
  background: #f9fbff;
}

.tool-v2-shell .tool-card input:focus,
.tool-v2-shell .tool-card textarea:focus,
.tool-v2-shell .audit-card input:focus {
  border-color: #8eaeff;
  box-shadow: 0 0 0 3px rgba(63, 115, 255, .10);
}

.tool-v2-shell button:not(.ghost),
.tool-v2-shell .button-link:not(.secondary) {
  border: 0;
  background: linear-gradient(135deg, var(--tool-v2-blue), #585cf5 58%, var(--tool-v2-violet));
  box-shadow: 0 9px 24px rgba(65, 91, 255, .20);
}

.tool-v2-shell button.secondary,
.tool-v2-shell .button-link.secondary,
.tool-v2-shell .text-link {
  border-color: #dbe3f1;
  background: #fff;
  color: #315fc5;
  box-shadow: none;
}

.tool-v2-shell button.ghost {
  color: #68758a;
}

.tool-v2-shell .generated-block,
.tool-v2-shell .mini-result,
.tool-v2-shell .audit-score-panel,
.tool-v2-shell .audit-summary-grid article,
.tool-v2-shell .audit-fact,
.tool-v2-shell .audit-finding {
  border-color: var(--tool-v2-line);
  background: #f8faff;
}

.tool-v2-shell .tool-v2-options-block {
  display: grid;
  gap: 10px;
}

.tool-v2-shell .tool-v2-option-row {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 12px 13px;
  border: 1px solid #e3e8f1;
  border-radius: 13px;
  background: #fff;
  font-weight: 750;
}

.tool-v2-shell .tool-v2-option-row.compact {
  align-items: center;
}

.tool-v2-shell .tool-v2-option-row input {
  width: auto;
  margin: 3px 0 0;
  flex: 0 0 auto;
}

.tool-v2-shell .tool-v2-option-row small {
  display: block;
  margin-top: 4px;
  color: var(--tool-v2-muted);
  font-weight: 500;
  line-height: 1.5;
}

.tool-v2-shell .tool-v2-qr-panel {
  display: grid;
  place-items: center;
  padding: 18px;
}

.tool-v2-shell .tool-v2-qr-image {
  width: min(280px, 78vw);
  height: auto;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(22, 39, 70, .08);
}

.tool-v2-shell .tool-v2-centered-actions {
  justify-content: center;
  margin-top: 14px;
}

.tool-v2-shell .tool-v2-privacy-note,
.tool-v2-shell .tool-v2-removed-params {
  color: var(--tool-v2-muted);
  line-height: 1.65;
  word-break: break-word;
}

.tool-v2-shell .tool-v2-privacy-note {
  margin: 22px 0 0;
  font-size: .84rem;
}

.tool-v2-shell .audit-main {
  width: min(100% - 32px, 1040px);
  margin: 0 auto;
  padding: 42px 0 84px;
}

.tool-v2-shell .audit-article {
  width: 100%;
}

.tool-v2-shell .audit-result {
  margin-top: 22px;
  padding: clamp(18px, 4vw, 30px);
}

.tool-v2-shell .content-section {
  margin-top: 22px;
  padding: 26px 28px;
}

.tool-v2-shell .content-cta {
  margin-top: 22px;
  padding: 22px 26px;
}

.tool-v2-shell footer,
.tool-v2-shell .trust-footer {
  width: 100%;
  min-height: 138px;
  padding: 32px max(18px, calc((100% - 1100px) / 2));
  border: 0;
  background: #071321;
  color: rgba(230, 237, 248, .60);
}

.tool-v2-shell footer a,
.tool-v2-shell .trust-footer a {
  color: rgba(230, 237, 248, .72);
}

.tool-v2-shell footer a:hover,
.tool-v2-shell .trust-footer a:hover {
  color: #fff;
}

@media (max-width: 700px) {
  .tool-v2-shell {
    background: linear-gradient(180deg, var(--tool-v2-navy) 0, var(--tool-v2-navy-soft) 300px, #f5f7fb 300px, #fff 100%);
  }

  .tool-v2-shell .site-header nav a:not(.lang-switch) {
    display: none;
  }

  .tool-v2-shell .tool-main,
  .tool-v2-shell .audit-main {
    width: min(100% - 22px, 1040px);
    padding-top: 34px;
  }

  .tool-v2-shell .tool-hero,
  .tool-v2-shell .content-hero.audit-hero {
    margin-bottom: 22px;
  }

  .tool-v2-shell .tool-card,
  .tool-v2-shell .audit-card,
  .tool-v2-shell .audit-result,
  .tool-v2-shell .content-section,
  .tool-v2-shell .content-cta {
    border-radius: 17px;
  }

  .tool-v2-shell .content-section,
  .tool-v2-shell .content-cta {
    padding: 20px 18px;
  }
}
