.al-tools-app.al-tool-shell {
  --al-tool-color-ink: #102019;
  --al-tool-color-text: #26342e;
  --al-tool-color-muted: #65736d;
  --al-tool-color-soft: #f3f7f5;
  --al-tool-color-surface: #ffffff;
  --al-tool-color-surface-2: #fbfcfb;
  --al-tool-color-line: rgba(16, 32, 25, 0.12);
  --al-tool-color-line-strong: rgba(16, 32, 25, 0.2);
  --al-tool-color-primary: #2c6b4a;
  --al-tool-color-primary-strong: #1e4f37;
  --al-tool-color-accent: #68b197;
  --al-tool-color-blue: #2f6f9f;
  --al-tool-color-amber: #9a6a15;
  --al-tool-color-red: #9a3e35;
  --al-tool-color-ok: #2e7a52;
  --al-tool-color-warn: #a97012;
  --al-tool-color-danger: #9c3d33;
  --al-tool-surface-elevated: linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(249, 252, 250, 0.98));
  --al-tool-surface-border: rgba(16, 32, 25, 0.085);
  --al-tool-control-bg: rgba(255, 255, 255, 0.92);
  --al-tool-control-border: rgba(16, 32, 25, 0.105);
  --al-tool-control-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86), 0 1px 2px rgba(16, 32, 25, 0.035);

  --al-tool-font: "Inter var", Inter, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  --al-tool-font-display: "Inter var", Inter, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;

  --al-tool-space-1: 4px;
  --al-tool-space-2: 8px;
  --al-tool-space-3: 12px;
  --al-tool-space-4: 16px;
  --al-tool-space-5: 20px;
  --al-tool-space-6: 24px;
  --al-tool-space-7: 32px;
  --al-tool-space-8: 40px;
  --al-tool-space-9: 56px;

  --al-tool-gap-xs: var(--al-tool-space-2);
  --al-tool-gap-sm: var(--al-tool-space-3);
  --al-tool-gap-md: var(--al-tool-space-4);
  --al-tool-gap-lg: var(--al-tool-space-6);
  --al-tool-gap-xl: var(--al-tool-space-8);

  --al-tool-radius-sm: 4px;
  --al-tool-radius-md: 6px;
  --al-tool-radius-lg: 8px;
  --al-tool-radius-pill: 999px;

  --al-tool-shadow-soft: 0 10px 28px rgba(16, 32, 25, 0.08);
  --al-tool-shadow-card: 0 1px 2px rgba(16, 32, 25, 0.06), 0 12px 32px rgba(16, 32, 25, 0.08);
  --al-tool-shadow-elevated: 0 1px 1px rgba(16, 32, 25, 0.025), 0 14px 38px rgba(16, 32, 25, 0.055);
  --al-tool-shadow-focus: 0 0 0 4px rgba(44, 107, 74, 0.18);

  --al-tool-transition-fast: 140ms ease;
  --al-tool-transition-med: 220ms ease;
  --al-tool-transition-slow: 420ms cubic-bezier(0.2, 0.8, 0.2, 1);

  --al-tool-container-width: 1240px;
  --al-tool-readable-width: 720px;
  --al-tool-control-height: 54px;
  --al-tool-touch-target: 44px;

  --al-icon-size-micro: 14px;
  --al-icon-size-inline: 16px;
  --al-icon-size-nav: 18px;
  --al-icon-size-card: 20px;
  --al-icon-size-action: 24px;
  --al-icon-size-feature: 32px;
}

body #content .elementor .elementor-element.e-con:has(.al-tools-app.al-tool-shell),
body #content .elementor .elementor-element.e-con-full:has(.al-tools-app.al-tool-shell),
body #content .elementor .elementor-widget-shortcode:has(.al-tools-app.al-tool-shell),
body #content .elementor .elementor-widget-container:has(.al-tools-app.al-tool-shell),
body #content .elementor .elementor-shortcode:has(.al-tools-app.al-tool-shell),
body .elementor .elementor-element.e-con:has(.al-tools-app.al-tool-shell),
body .elementor .elementor-element.e-con-full:has(.al-tools-app.al-tool-shell),
body .elementor .elementor-widget-shortcode:has(.al-tools-app.al-tool-shell),
body .elementor .elementor-widget-container:has(.al-tools-app.al-tool-shell),
body .elementor .elementor-shortcode:has(.al-tools-app.al-tool-shell) {
  width: 100% !important;
  max-width: none !important;
  flex-basis: 100% !important;
  align-self: stretch !important;
}

body #content .elementor > .elementor-element.e-con:has(.al-tools-app.al-tool-shell),
body #content .elementor > .elementor-element.e-con-full:has(.al-tools-app.al-tool-shell),
body #content .elementor .elementor-element.e-con:has(.al-tools-app.al-tool-shell),
body #content .elementor .elementor-element.e-con-full:has(.al-tools-app.al-tool-shell),
body .elementor .elementor-element.e-con:has(.al-tools-app.al-tool-shell),
body .elementor .elementor-element.e-con-full:has(.al-tools-app.al-tool-shell) {
  --padding-top: 0px !important;
  --padding-bottom: 0px !important;
  --padding-left: 0px !important;
  --padding-right: 0px !important;
  --padding-block-start: 0px !important;
  --padding-block-end: 0px !important;
  --padding-inline-start: 0px !important;
  --padding-inline-end: 0px !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
}

.al-tools-app.al-tool-shell,
.al-tools-app.al-tool-shell *,
.al-tools-app.al-tool-shell *::before,
.al-tools-app.al-tool-shell *::after {
  box-sizing: border-box;
}

.al-tools-app.al-tool-shell {
  position: relative;
  isolation: isolate;
  width: 100vw;
  max-width: 100vw;
  margin-inline: calc(50% - 50vw);
  overflow: visible;
  color: var(--al-tool-color-text);
  font-family: var(--al-tool-font);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.al-tools-app.al-tool-shell :where(h1, h2, h3, p, ul, ol, dl, dd, figure) {
  margin-block: 0;
  padding: 0;
}

.al-tools-app.al-tool-shell :where(button, input, select, textarea) {
  width: auto;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  border-radius: 0;
  font-family: var(--al-tool-font);
  font: inherit;
  letter-spacing: 0;
  text-transform: none;
  box-shadow: none;
}

.al-tools-app.al-tool-shell :where(button) {
  appearance: none;
  -webkit-appearance: none;
  background-image: none;
}

.al-tools-app.al-tool-shell :where(input, select, textarea) {
  appearance: none;
  -webkit-appearance: none;
}

.al-tools-app.al-tool-shell :where(button, a, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--al-tool-color-primary);
  outline-offset: 2px;
  box-shadow: var(--al-tool-shadow-focus);
}

.al-tools-app.al-tool-shell :where(a) {
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.al-tools-app.al-tool-shell .al-icon {
  --al-icon-size: var(--al-icon-size-inline);
  display: inline-flex;
  width: var(--al-icon-size);
  height: var(--al-icon-size);
  flex: 0 0 var(--al-icon-size);
  background: currentColor;
  -webkit-mask: var(--al-icon-url) center / contain no-repeat;
  mask: var(--al-icon-url) center / contain no-repeat;
}

.al-tools-app.al-tool-shell .al-icon--micro {
  --al-icon-size: var(--al-icon-size-micro);
}

.al-tools-app.al-tool-shell .al-icon--inline {
  --al-icon-size: var(--al-icon-size-inline);
}

.al-tools-app.al-tool-shell .al-icon--nav {
  --al-icon-size: var(--al-icon-size-nav);
}

.al-tools-app.al-tool-shell .al-icon--card {
  --al-icon-size: var(--al-icon-size-card);
}

.al-tools-app.al-tool-shell .al-icon--action {
  --al-icon-size: var(--al-icon-size-action);
}

.al-tools-app.al-tool-shell .al-icon--feature {
  --al-icon-size: var(--al-icon-size-feature);
}

@media (min-width: 760px) {
  .al-tools-app.al-tool-shell {
    line-height: 1.56;
  }
}
