:root {
  --ink: #0a3040;
  --muted: #69808a;
  --line: #dce7ea;
  --paper: #fff;
  --soft: #f3f7f8;
  --navy: #063a4b;
  --cyan: #13b9cf;
  --green: #138b70;
  --orange: #e79239;
  --red: #ca5260;
  --shadow: 0 24px 70px rgba(7, 48, 62, .12);
}

* {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

body {
  margin: 0;
  color: var(--ink);
  background:
    radial-gradient(
      circle at 12% 5%,
      rgba(19, 185, 207, .15),
      transparent 28%
    ),
    #edf4f5;
  font-family:
    Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

button,
input,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

.demo-shell {
  width: min(1620px, calc(100% - 28px));
  min-height: calc(100vh - 28px);
  margin: 14px auto;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .9);
  border-radius: 28px;
  background: var(--paper);
  box-shadow: var(--shadow);
}

.topbar {
  min-height: 96px;
  padding: 20px 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
}

.brand {
  display: flex;
  gap: 20px;
  align-items: center;
  color: inherit;
  text-decoration: none;
}

.brand img {
  width: 145px;
  height: auto;
}

.brand span {
  padding-left: 20px;
  display: grid;
  border-left: 1px solid var(--line);
}

.brand small,
.safety-state small {
  margin-top: 4px;
  color: var(--muted);
}

.safety-state {
  position: relative;
  padding-left: 20px;
  display: grid;
  text-align: right;
}

.pulse {
  position: absolute;
  top: 6px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 0 6px rgba(19, 139, 112, .12);
}

.eyebrow {
  margin: 0 0 12px;
  color: #087b9d;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.setup {
  padding: clamp(34px, 5vw, 72px);
}

.setup-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 290px;
  gap: 60px;
  align-items: end;
}

.setup-heading h1 {
  max-width: 900px;
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(42px, 5vw, 72px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.035em;
}

.setup-heading > div > p:last-child {
  max-width: 850px;
  margin: 24px 0 0;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.65;
}

.selection-summary {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--soft);
}

.selection-summary > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
}

.selection-summary strong {
  margin: 8px 0;
  display: flex;
  align-items: baseline;
  gap: 7px;
}

.selection-summary b {
  font-family: Georgia, serif;
  font-size: 38px;
  font-weight: 500;
}

.selection-summary small,
.selection-summary p {
  color: var(--muted);
}

.selection-summary p {
  margin: 9px 0 0;
  font-size: 12px;
  line-height: 1.55;
}

.category-grid {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.category-choice {
  min-height: 88px;
  padding: 15px;
  display: flex;
  gap: 11px;
  align-items: flex-start;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
  cursor: pointer;
  transition: .18s ease;
}

.category-choice:hover {
  transform: translateY(-2px);
  border-color: #9bcdd5;
}

.category-choice.is-selected {
  border-color: var(--cyan);
  background: #ebf9fb;
  box-shadow: inset 0 0 0 1px var(--cyan);
}

.category-choice input {
  margin-top: 3px;
  accent-color: var(--navy);
}

.category-choice span,
.category-choice strong,
.category-choice small {
  display: block;
}

.category-choice strong {
  font-size: 13px;
}

.category-choice small {
  margin-top: 5px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.custom-category {
  margin-top: 22px;
  padding: 18px;
  border-radius: 16px;
  background: var(--soft);
}

.custom-category label {
  display: block;
  margin-bottom: 9px;
  font-size: 12px;
  font-weight: 800;
}

.custom-category > div {
  display: flex;
  gap: 9px;
}

.custom-category input {
  flex: 1;
  min-width: 0;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 11px;
  color: inherit;
  background: #fff;
}

.custom-category button,
.mail-header-actions button,
.email-actions button,
.draft-actions button,
.human-warning button,
.filtered-notice button {
  padding: 10px 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: inherit;
  background: #fff;
  font-weight: 700;
}

.setup-error {
  margin-top: 14px;
  padding: 13px 15px;
  border-radius: 11px;
  color: #9e3442;
  background: #fff0f2;
}

.setup-actions {
  margin-top: 25px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
}

.setup-actions p {
  color: var(--muted);
}

.primary-button {
  min-width: 290px;
  padding: 17px 23px;
  display: inline-flex;
  justify-content: center;
  gap: 16px;
  border: 0;
  border-radius: 13px;
  color: #fff;
  background: var(--navy);
  box-shadow: 0 15px 30px rgba(6, 58, 75, .2);
  font-weight: 800;
}

.analysis-stage {
  min-height: 700px;
  padding: 50px;
  display: grid;
  place-items: center;
}

.analysis-card {
  width: min(720px, 100%);
  padding: 56px;
  text-align: center;
  border: 1px solid var(--line);
  border-radius: 30px;
  box-shadow: var(--shadow);
}

.ai-symbol {
  width: 82px;
  height: 82px;
  margin: 0 auto 26px;
  display: grid;
  place-items: center;
  border-radius: 25px;
  color: #fff;
  background: var(--navy);
  font-size: 32px;
  animation: breathe 1.5s infinite;
}

.analysis-card h2 {
  margin: 0;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 500;
}

.analysis-card > p:not(.eyebrow) {
  color: var(--muted);
}

.progress-track {
  height: 10px;
  margin: 34px 0;
  overflow: hidden;
  border-radius: 999px;
  background: #e7eff1;
}

.progress-track span {
  width: 0;
  height: 100%;
  display: block;
  background: linear-gradient(90deg, var(--cyan), #087b9d);
  transition: width .4s ease;
}

.analysis-counts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.analysis-counts div {
  padding: 15px;
  border-radius: 14px;
  background: var(--soft);
}

.analysis-counts strong,
.analysis-counts span {
  display: block;
}

.analysis-counts strong {
  font-size: 25px;
}

.analysis-counts span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
}

.workspace {
  min-height: 820px;
  display: grid;
  grid-template-columns: 225px minmax(0, 1fr);
  background: #f3f7f8;
}

.mail-sidebar {
  padding: 26px 17px;
  color: #fff;
  background: linear-gradient(180deg, #073e50, #042a37);
}

.workspace-brand {
  padding: 0 9px 23px;
  display: flex;
  gap: 11px;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.workspace-brand small {
  display: block;
  margin-top: 4px;
  color: rgba(255, 255, 255, .6);
}

.ai-mark {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: var(--navy);
  background: var(--cyan);
}

.standard-folders {
  margin-top: 23px;
  display: grid;
  gap: 5px;
}

.folder {
  width: 100%;
  padding: 12px;
  display: grid;
  grid-template-columns: 22px 1fr auto;
  gap: 8px;
  border: 0;
  border-radius: 11px;
  color: rgba(255, 255, 255, .7);
  background: transparent;
  text-align: left;
}

.folder b {
  font-weight: 600;
}

.folder em {
  font-style: normal;
  font-size: 11px;
}

.folder:hover,
.folder.is-active {
  color: #fff;
  background: rgba(255, 255, 255, .13);
}

.control-card {
  margin-top: 35px;
  padding: 17px;
  border: 1px solid rgba(46, 216, 174, .24);
  border-radius: 16px;
  background: rgba(46, 216, 174, .08);
}

.control-card span {
  color: #5ce1bd;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .14em;
}

.control-card strong {
  margin: 8px 0;
  display: block;
}

.control-card p {
  margin: 0;
  color: rgba(255, 255, 255, .64);
  font-size: 11px;
  line-height: 1.55;
}

.mail-application {
  min-width: 0;
}

.mail-header {
  padding: 24px 28px 18px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
}

.mail-header h2 {
  margin: 0;
  font-family: Georgia, serif;
  font-size: 34px;
  font-weight: 500;
}

.mail-header-actions {
  display: flex;
  gap: 8px;
}

.category-results {
  margin: 0 28px 14px;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: #fff;
}

.category-results-heading {
  margin-bottom: 11px;
  display: flex;
  justify-content: space-between;
  gap: 15px;
}

.category-results-heading span {
  color: var(--muted);
  font-size: 11px;
}

.category-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
}

.category-tab {
  min-height: 42px;
  padding: 8px 10px;
  display: flex;
  justify-content: space-between;
  gap: 6px;
  align-items: center;
  border: 0;
  border-radius: 9px;
  color: #355764;
  background: var(--soft);
  text-align: left;
}

.category-tab span {
  overflow: hidden;
  font-size: 11px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.category-tab b {
  font-size: 11px;
}

.category-tab:hover,
.category-tab.is-active {
  color: #fff;
  background: var(--navy);
}

.mail-toolbar {
  min-height: 64px;
  margin: 0 28px;
  padding: 10px 14px;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  border: 1px solid var(--line);
  border-bottom: 0;
  border-radius: 17px 17px 0 0;
  background: #fff;
}

.toolbar-title strong,
.toolbar-title span {
  display: block;
}

.toolbar-title span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
}

.search-box {
  width: min(310px, 45%);
  padding: 9px 11px;
  display: flex;
  gap: 8px;
  border-radius: 10px;
  background: var(--soft);
}

.search-box input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  color: inherit;
  background: transparent;
}

.mail-workbench {
  min-height: 610px;
  margin: 0 28px 28px;
  display: grid;
  grid-template-columns: minmax(310px, .72fr) minmax(470px, 1.28fr);
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 0 0 17px 17px;
  background: #fff;
}

.mail-list {
  max-height: 680px;
  overflow: auto;
  border-right: 1px solid var(--line);
}

.mail-item {
  width: 100%;
  padding: 14px 16px;
  display: block;
  border: 0;
  border-bottom: 1px solid var(--line);
  color: inherit;
  background: #fff;
  text-align: left;
}

.mail-item:hover,
.mail-item.is-active {
  background: #edf8fa;
}

.mail-item.is-active {
  box-shadow: inset 4px 0 var(--cyan);
}

.mail-meta,
.mail-item-footer {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.mail-meta strong {
  overflow: hidden;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mail-meta span {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: 10px;
}

.mail-subject {
  margin: 6px 0 4px;
  overflow: hidden;
  font-size: 12px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mail-item > p {
  margin: 0 0 8px;
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mail-category,
.mail-state {
  padding: 4px 7px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
}

.mail-category {
  color: #13718b;
  background: #e5f6f9;
}

.mail-state {
  color: var(--green);
  background: #e7f7f1;
}

.mail-state.escalated {
  color: var(--red);
  background: #fdebee;
}

.mail-state.filtered {
  color: #718187;
  background: #edf1f2;
}

.list-empty {
  padding: 35px 18px;
  color: var(--muted);
  text-align: center;
}

.message-reader {
  min-width: 0;
  padding: 22px;
  overflow: auto;
  background: #fbfdfd;
}

.empty-message {
  min-height: 520px;
  display: grid;
  place-content: center;
  text-align: center;
}

.empty-message > span {
  color: var(--cyan);
  font-size: 38px;
}

.empty-message h3 {
  margin: 12px 0 5px;
}

.empty-message p {
  max-width: 380px;
  color: var(--muted);
  line-height: 1.55;
}

.email-actions {
  display: flex;
  gap: 7px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.email-actions button {
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: inherit;
  background: #fff;
}

.normal-email {
  padding: 20px 4px 8px;
}

.email-title-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.email-title-row h3 {
  margin: 0;
  font-family: Georgia, serif;
  font-size: 29px;
  font-weight: 500;
}

.email-title-row > span {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: 11px;
}

.sender {
  margin-top: 18px;
  display: flex;
  gap: 11px;
  align-items: center;
}

.avatar {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--navy);
  font-weight: 800;
}

.sender small {
  margin-top: 3px;
  display: block;
  color: var(--muted);
}

.email-body {
  padding: 15px 48px;
  color: #3d5964;
  line-height: 1.65;
}

.automation-panel {
  margin-top: 16px;
  padding: 19px;
  border: 1px solid #bfe3de;
  border-radius: 17px;
  background: #eff9f7;
}

.automation-heading,
.automation-heading > div {
  display: flex;
  justify-content: space-between;
  gap: 11px;
  align-items: center;
}

.automation-heading small {
  margin-top: 3px;
  display: block;
  color: var(--muted);
}

.ai-badge {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  color: #fff;
  background: var(--navy);
}

.confidence {
  padding: 6px 9px;
  border-radius: 999px;
  color: var(--green);
  background: #fff;
  font-size: 10px;
  font-weight: 800;
}

.matched-categories {
  margin: 15px 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.matched-categories span {
  padding: 6px 9px;
  border-radius: 999px;
  color: #13718b;
  background: #fff;
  font-size: 10px;
  font-weight: 800;
}

.reason-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}

.reason-grid div {
  padding: 11px;
  border-radius: 10px;
  background: #fff;
}

.reason-grid span,
.reason-grid strong {
  display: block;
}

.reason-grid span {
  color: var(--muted);
  font-size: 9px;
  text-transform: uppercase;
}

.reason-grid strong {
  margin-top: 4px;
  font-size: 12px;
}

.knowledge-proof {
  margin-top: 12px;
  padding: 13px;
  border-left: 3px solid var(--cyan);
  background: rgba(255, 255, 255, .72);
}

.knowledge-proof ul {
  margin: 8px 0;
  padding-left: 20px;
  color: #43616b;
  font-size: 11px;
  line-height: 1.6;
}

.knowledge-proof p {
  margin: 8px 0 0;
  color: var(--muted);
  font-size: 10px;
}

.draft-box {
  margin-top: 14px;
}

.draft-box label {
  display: block;
  margin-bottom: 7px;
  font-size: 12px;
  font-weight: 800;
}

.draft-box textarea {
  width: 100%;
  min-height: 180px;
  padding: 14px;
  resize: vertical;
  border: 1px solid #cde0e2;
  border-radius: 11px;
  color: inherit;
  background: #fff;
  line-height: 1.55;
}

.draft-actions {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.draft-actions .approve {
  border-color: var(--navy);
  color: #fff;
  background: var(--navy);
}

.draft-actions button:disabled,
.human-warning button:disabled,
.filtered-notice button:disabled {
  cursor: default;
  opacity: .65;
}

.human-warning,
.filtered-notice {
  margin-top: 14px;
  padding: 14px;
  border-radius: 11px;
}

.human-warning {
  color: #8f3944;
  background: #fff0f2;
}

.filtered-notice {
  color: #52676f;
  background: #fff;
}

.human-warning p,
.filtered-notice p {
  font-size: 12px;
  line-height: 1.5;
}

footer {
  min-height: 65px;
  padding: 18px 38px;
  display: flex;
  justify-content: space-between;
  color: var(--muted);
  border-top: 1px solid var(--line);
  font-size: 11px;
}


/* Global demo exit — rightmost control in the main header */
.demo-close-button {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  margin-left: 12px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .24);
  border-radius: 50%;
  color: rgba(255, 255, 255, .94);
  background: rgba(255, 255, 255, .07);
  font-family: Arial, sans-serif;
  font-size: 25px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
  transition:
    background .18s ease,
    border-color .18s ease,
    transform .18s ease;
}

.demo-close-button:hover {
  border-color: rgba(255, 255, 255, .52);
  background: rgba(255, 255, 255, .15);
  transform: scale(1.04);
}

.demo-close-button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}
@keyframes breathe {
  50% {
    transform: scale(1.05);
    box-shadow: 0 0 0 14px rgba(19, 185, 207, .1);
  }
}

@media (max-width: 1180px) {
  .category-grid,
  .category-tabs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .workspace {
    grid-template-columns: 190px minmax(0, 1fr);
  }
}

@media (max-width: 950px) {
  .setup-heading {
    grid-template-columns: 1fr;
  }

  .category-grid,
  .category-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .workspace {
    grid-template-columns: 1fr;
  }

  .mail-sidebar {
    display: none;
  }
}

@media (max-width: 720px) {
  .demo-shell {
    width: 100%;
    min-height: 100vh;
    margin: 0;
    border-radius: 0;
  }

  .topbar {
    padding: 16px;
  }

  .brand img {
    width: 105px;
  }

  .brand span,
  .safety-state small {
    display: none;
  }

  .setup {
    padding: 35px 18px;
  }

  .setup-heading h1 {
    font-size: 43px;
  }

  .category-grid,
  .category-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .setup-actions,
  .mail-header,
  .category-results-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .primary-button {
    width: 100%;
    min-width: 0;
  }

  .analysis-stage {
    padding: 25px 16px;
  }

  .analysis-card {
    padding: 35px 18px;
  }

  .analysis-counts {
    grid-template-columns: 1fr;
  }

  .mail-header,
  .category-results,
  .mail-toolbar,
  .mail-workbench {
    margin-left: 14px;
    margin-right: 14px;
  }

  .mail-header {
    padding-left: 0;
    padding-right: 0;
  }

  .mail-workbench {
    grid-template-columns: 1fr;
  }

  .mail-list {
    max-height: 420px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .message-reader {
    min-height: 550px;
    padding: 16px;
  }

  .reason-grid {
    grid-template-columns: 1fr;
  }

  .email-body {
    padding: 15px 4px;
  }

  footer {
    padding: 16px;
    gap: 8px;
    flex-direction: column;
  }
}

/* Analysis summary dialog */

body.summary-is-open {
  overflow: hidden;
}

.summary-overlay {
  position: fixed;
  z-index: 5000;
  inset: 0;
  padding: 18px;
  display: grid;
  place-items: center;
  background: rgba(4, 32, 42, .66);
  backdrop-filter: blur(5px);
}

.summary-dialog {
  position: relative;
  width: min(720px, 100%);
  max-height: calc(100vh - 36px);
  padding: 25px 28px 21px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 32px 90px rgba(2, 27, 36, .32);
}

.summary-dialog-top {
  min-height: 38px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.summary-ai-mark {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  margin-right: auto;
  border-radius: 11px;
  color: #fff;
  background: var(--navy);
  font-size: 16px;
}



.summary-close {
  width: 38px;
  height: 38px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--ink);
  background: #fff;
  font-size: 25px;
  line-height: 1;
}

.summary-dialog > .eyebrow {
  margin-top: 18px;
  margin-bottom: 7px;
}

.summary-dialog h2 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 34px;
  font-weight: 500;
  line-height: 1.08;
}

.summary-introduction {
  margin: 10px 0 15px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.summary-results {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
}

.summary-results div {
  min-height: 61px;
  padding: 9px 10px;
  border-radius: 10px;
  background: var(--soft);
}

.summary-results strong,
.summary-results span {
  display: block;
}

.summary-results strong {
  font-family: Georgia, serif;
  font-size: 22px;
  font-weight: 500;
}

.summary-results span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}

.summary-explanation {
  margin: 13px 0;
  padding: 11px 13px;
  border-left: 3px solid var(--cyan);
  border-radius: 0 10px 10px 0;
  background: #eff9fa;
}

.summary-explanation p {
  margin: 0;
  color: #3d5c67;
  font-size: 11px;
  line-height: 1.45;
}

.summary-explanation p + p {
  margin-top: 5px;
}

.summary-review-button {
  width: 100%;
  min-height: 45px;
  padding: 11px 16px;
  display: flex;
  justify-content: center;
  gap: 14px;
  border: 0;
  border-radius: 11px;
  color: #fff;
  background: var(--navy);
  font-size: 13px;
  font-weight: 800;
}

.summary-safety-note {
  margin-top: 8px;
  display: block;
  color: var(--muted);
  font-size: 9px;
  text-align: center;
}

@media (max-width: 620px) {
  .summary-overlay {
    padding: 9px;
  }

  .summary-dialog {
    max-height: calc(100vh - 18px);
    padding: 17px;
    border-radius: 18px;
  }

  .summary-dialog > .eyebrow {
    margin-top: 11px;
  }

  .summary-dialog h2 {
    font-size: 27px;
  }

  .summary-introduction {
    margin: 7px 0 10px;
    font-size: 11px;
  }

  .summary-results {
    grid-template-columns: repeat(2, 1fr);
    gap: 5px;
  }

  .summary-results div {
    min-height: 50px;
    padding: 7px 8px;
  }

  .summary-results strong {
    font-size: 18px;
  }

  .summary-explanation {
    margin: 9px 0;
    padding: 8px 10px;
  }

  .summary-explanation p {
    font-size: 10px;
    line-height: 1.35;
  }

  .summary-safety-note {
    display: none;
  }
}

@media (max-height: 650px) {
  .summary-dialog {
    padding-top: 14px;
    padding-bottom: 14px;
  }

  .summary-dialog-top {
    min-height: 32px;
  }

  .summary-ai-mark,
  .summary-close {
    width: 32px;
    height: 32px;
  }

  .summary-dialog > .eyebrow {
    margin-top: 7px;
  }

  .summary-dialog h2 {
    font-size: 27px;
  }

  .summary-introduction {
    margin: 6px 0 9px;
  }

  .summary-results div {
    min-height: 47px;
    padding: 6px 8px;
  }

  .summary-results strong {
    font-size: 17px;
  }

  .summary-explanation {
    margin: 8px 0;
    padding: 7px 10px;
  }

  .summary-explanation p {
    font-size: 9px;
    line-height: 1.3;
  }

  .summary-review-button {
    min-height: 38px;
    padding: 8px 12px;
  }

  .summary-safety-note {
    display: none;
  }
}

/* Final summary explanation */

.summary-explanation-title {
  display: block;
  margin-bottom: 8px;
  color: var(--ink);
  font-size: 11px;
}

.summary-capabilities {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 16px;
  row-gap: 4px;
}

.summary-capabilities span {
  color: #49646d;
  font-size: 10px;
  line-height: 1.35;
}

.summary-capabilities b {
  color: var(--ink);
}

.summary-control-rule {
  margin-top: 9px !important;
  padding-top: 8px;
  border-top: 1px solid #cae5e7;
  color: #31535e !important;
  font-weight: 600;
}

@media (max-width: 620px) {
  .summary-capabilities {
    column-gap: 10px;
    row-gap: 3px;
  }

  .summary-capabilities span {
    font-size: 9px;
  }

  .summary-control-rule {
    margin-top: 6px !important;
    padding-top: 6px;
    font-size: 9px !important;
  }
}

@media (max-height: 680px) {
  .summary-capabilities {
    row-gap: 2px;
  }

  .summary-capabilities span {
    font-size: 9px;
    line-height: 1.25;
  }

  .summary-control-rule {
    margin-top: 5px !important;
    padding-top: 5px;
    font-size: 8.5px !important;
  }
}


/* ===== WEBCONCEPT EMAIL AUTOMATION FINAL ===== */

.topbar {
  background: #080a0d;
  color: #ffffff;
  border-bottom-color: rgba(255, 255, 255, 0.12);
}

.webconcept-brand {
  color: #ffffff;
}

.webconcept-brand img {
  display: block;
  width: min(24vw, 225px);
  height: auto;
  max-height: 40px;
  object-fit: contain;
}

.webconcept-brand > span {
  padding-left: 22px;
  border-left: 1px solid rgba(255, 255, 255, 0.24);
}

.webconcept-brand strong,
.webconcept-brand small,
.topbar .safety-state strong,
.topbar .safety-state small {
  color: #ffffff;
}

.topbar .safety-state small {
  opacity: 0.7;
}

.workspace-logo {
  display: block;
  width: 126px;
  height: auto;
  max-height: 34px;
  object-fit: contain;
}

.workspace-brand > div {
  padding-left: 12px;
  border-left: 1px solid rgba(255, 255, 255, 0.2);
}

.demo-landing {
  display: grid;
  min-height: calc(100vh - 154px);
  grid-template-columns: minmax(0, 1.06fr) minmax(370px, 0.94fr);
  background: #ffffff;
}

.demo-landing[hidden] {
  display: none;
}

.landing-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(52px, 7vw, 108px);
}

.landing-copy .eyebrow {
  margin: 0 0 22px;
  color: #11877f;
  letter-spacing: 0.18em;
}

.landing-copy h1 {
  max-width: 720px;
  margin: 0;
  color: #0b3039;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(3.1rem, 5.2vw, 6.5rem);
  font-weight: 500;
  line-height: 0.94;
  letter-spacing: -0.055em;
}

.landing-copy h1 span {
  display: block;
  color: #11877f;
  font-style: italic;
}

.landing-description {
  max-width: 680px;
  margin: 34px 0 0;
  color: #62777d;
  font-size: clamp(1.05rem, 1.4vw, 1.4rem);
  line-height: 1.65;
}

.landing-start {
  display: flex;
  width: min(100%, 640px);
  min-height: 76px;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: 40px;
  border: 0;
  border-radius: 18px;
  background: #0b3039;
  color: #ffffff;
  box-shadow: 0 18px 44px rgba(11, 48, 57, 0.16);
  cursor: pointer;
  font: inherit;
  font-size: 1.15rem;
  font-weight: 800;
  transition:
    transform 180ms ease,
    background 180ms ease;
}

.landing-start:hover {
  transform: translateY(-2px);
  background: #11877f;
}

.landing-start:focus-visible {
  outline: 3px solid rgba(17, 135, 127, 0.35);
  outline-offset: 4px;
}

.landing-note {
  margin: 22px 0 0;
  color: #849499;
  font-size: 0.9rem;
}

.landing-visual {
  display: flex;
  min-height: 680px;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  padding: clamp(46px, 6vw, 86px);
  background:
    linear-gradient(rgba(90, 215, 201, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(90, 215, 201, 0.06) 1px, transparent 1px),
    radial-gradient(
      circle at 82% 15%,
      rgba(52, 210, 192, 0.2),
      transparent 34%
    ),
    #082f35;
  background-size: 72px 72px, 72px 72px, auto, auto;
  color: #ffffff;
}

.visual-eyebrow {
  margin: 0 0 18px;
  color: #6dd7ca;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.19em;
}

.landing-visual h2 {
  margin: 0 0 38px;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.7rem, 4vw, 5.1rem);
  font-weight: 500;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.landing-visual h2 em {
  display: block;
  color: #69dbcd;
  font-weight: 400;
}

.workflow-preview {
  display: grid;
  gap: 12px;
  max-width: 600px;
}

.workflow-preview article {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 18px 20px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.065);
}

.workflow-preview article > b {
  display: grid;
  width: 43px;
  height: 43px;
  flex: 0 0 43px;
  place-items: center;
  border-radius: 12px;
  background: rgba(103, 219, 205, 0.13);
  color: #74e0d3;
  font-size: 0.75rem;
}

.workflow-preview article > span {
  display: grid;
  gap: 3px;
}

.workflow-preview article strong {
  color: #ffffff;
}

.workflow-preview article small {
  color: rgba(255, 255, 255, 0.64);
}

.workflow-preview .human-step {
  border-color: rgba(108, 221, 207, 0.4);
  background: rgba(65, 183, 170, 0.15);
}

@media (max-width: 980px) {
  .demo-landing {
    grid-template-columns: 1fr;
  }

  .landing-copy {
    min-height: 640px;
    padding: 60px 34px;
  }

  .landing-visual {
    min-height: 630px;
    padding: 60px 34px;
  }

  .webconcept-brand img {
    width: min(42vw, 210px);
  }
}

@media (max-width: 680px) {
  .topbar {
    align-items: flex-start;
    gap: 14px;
  }

  .webconcept-brand > span {
    display: none;
  }

  .webconcept-brand img {
    width: min(58vw, 205px);
    max-height: 36px;
  }

  .topbar .safety-state small {
    display: none;
  }

  .landing-copy {
    min-height: calc(100vh - 100px);
    padding: 52px 24px;
  }

  .landing-copy h1 {
    font-size: clamp(3rem, 14vw, 4.4rem);
  }

  .landing-start {
    min-height: 66px;
  }

  .landing-visual {
    min-height: auto;
    padding: 62px 24px;
  }

  .landing-visual h2 {
    font-size: 3rem;
  }
}


/* ===== EAS PRODUCT IDENTITY ===== */

.eas-product-mark {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 15px;
  margin-bottom: 32px;
  padding: 9px 16px 9px 10px;
  border: 1px solid #d5e7e5;
  border-radius: 14px;
  background: #f3f9f8;
}

.eas-product-mark strong {
  display: grid;
  min-width: 62px;
  min-height: 42px;
  place-items: center;
  border-radius: 10px;
  background: #0b3039;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 900;
  letter-spacing: 0.13em;
}

.eas-product-mark span {
  color: #31545b;
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

@media (max-width: 680px) {
  .eas-product-mark {
    margin-bottom: 27px;
  }

  .eas-product-mark span {
    font-size: 0.72rem;
    letter-spacing: 0.045em;
  }
}


/* ===== EAS DEPLOYMENT MODELS ===== */

.deployment-models {
  display: flex;
  width: min(100%, 640px);
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin-top: 30px;
  padding: 15px 18px;
  border: 1px solid #d9e7e6;
  border-radius: 14px;
  background: #f7faf9;
}

.deployment-label {
  flex: 0 0 auto;
  color: #789095;
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.115em;
  text-transform: uppercase;
}

.deployment-options {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  color: #0b3039;
  white-space: nowrap;
}

.deployment-options strong {
  font-size: 0.78rem;
  font-weight: 800;
}

.deployment-options i {
  color: #38a99f;
  font-style: normal;
  font-weight: 900;
}

.deployment-models + .landing-start {
  margin-top: 22px;
}

@media (max-width: 720px) {
  .deployment-models {
    align-items: flex-start;
    flex-direction: column;
    gap: 9px;
  }

  .deployment-options {
    width: 100%;
    justify-content: flex-start;
    gap: 8px;
  }

  .deployment-options strong {
    font-size: 0.72rem;
  }
}


/* ===== EAS DEPLOYMENT ROW FIT ===== */

.deployment-models {
  display: grid;
  width: min(100%, 640px);
  max-width: 100%;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(12px, 1.4vw, 22px);
  overflow: hidden;
}

.deployment-label {
  font-size: clamp(0.56rem, 0.66vw, 0.66rem);
  letter-spacing: 0.085em;
  white-space: nowrap;
}

.deployment-options {
  display: grid;
  min-width: 0;
  grid-template-columns:
    minmax(0, auto)
    auto
    minmax(0, auto)
    auto
    minmax(0, auto);
  justify-content: end;
  gap: clamp(5px, 0.7vw, 10px);
  overflow: hidden;
  white-space: nowrap;
}

.deployment-options strong {
  min-width: 0;
  font-size: clamp(0.66rem, 0.76vw, 0.78rem);
}

@media (max-width: 760px) {
  .deployment-models {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 9px;
    overflow: visible;
  }

  .deployment-options {
    display: flex;
    width: 100%;
    justify-content: flex-start;
    overflow: visible;
  }
}


/* ===== EAS EXPLANATORY TEXT READABILITY ===== */

/* Landing and configuration explanations */
.landing-description {
  font-size: clamp(1.12rem, 1.48vw, 1.46rem);
}

.landing-note {
  font-size: 0.98rem;
}

.setup-heading > div > p:not(.eyebrow),
.selection-summary p,
.setup-actions p,
.analysis-card > p:not(.eyebrow) {
  font-size: 1rem;
  line-height: 1.55;
}

/* Category and mailbox supporting text */
.category-choice small,
.category-results-heading span,
.workspace-brand small,
.control-card p,
.mail-header .eyebrow,
.visible-count,
.email-preview,
.empty-message p {
  font-size: 0.88rem;
  line-height: 1.45;
}

/* Analysis summary dialog */
.summary-introduction {
  font-size: 0.96rem;
  line-height: 1.55;
}

.summary-results span {
  font-size: 0.78rem;
  line-height: 1.35;
}

.summary-explanation-title {
  font-size: 0.92rem;
}

.summary-capabilities span {
  font-size: 0.84rem;
  line-height: 1.45;
}

.summary-control-rule {
  font-size: 0.88rem;
  line-height: 1.5;
}

.summary-safety-note {
  font-size: 0.78rem;
  line-height: 1.4;
}

/* Keep the enlarged dialog usable on shorter screens */
.summary-dialog {
  max-height: calc(100vh - 36px);
  overflow-y: auto;
}

@media (max-width: 680px) {
  .summary-introduction {
    font-size: 0.92rem;
  }

  .summary-capabilities span {
    font-size: 0.82rem;
  }

  .summary-control-rule {
    font-size: 0.85rem;
  }
}


/* ===== EAS SIDEBAR CSS ONLY FIX ===== */

.mail-sidebar {
  min-width: 0;
  overflow: hidden;
}

.workspace-brand {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: flex-start;
  flex-direction: column;
  gap: 13px;
  overflow: hidden;
}

.workspace-brand .workspace-logo {
  display: block;
  width: min(100%, 150px);
  height: auto;
  max-height: 40px;
  object-fit: contain;
  object-position: left center;
}

.workspace-brand > div {
  display: grid;
  width: 100%;
  min-width: 0;
  gap: 3px;
  padding: 0;
  border: 0;
  overflow: hidden;
}

.workspace-brand > div strong,
.workspace-brand > div small {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workspace-brand > div strong {
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.2;
}

.workspace-brand > div small {
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.72rem;
  line-height: 1.3;
}


/* ===== EAS CUSTOMER REQUEST BUTTON ===== */

.mail-header-actions {
  flex-wrap: wrap;
}

.eas-request-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0.72rem 1.15rem;
  border: 1px solid #0d8d82;
  border-radius: 0.75rem;
  background: #0d8d82;
  color: #ffffff;
  box-shadow: 0 9px 22px rgba(13, 141, 130, 0.2);
  font: inherit;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
  transition:
    transform 160ms ease,
    background 160ms ease,
    box-shadow 160ms ease;
}

.eas-request-button:hover {
  transform: translateY(-2px);
  background: #08776e;
  box-shadow: 0 12px 28px rgba(13, 141, 130, 0.28);
}

.eas-request-button:focus-visible {
  outline: 3px solid rgba(13, 141, 130, 0.3);
  outline-offset: 3px;
}

.eas-request-button span {
  font-size: 1.15rem;
}

@media (max-width: 760px) {
  .eas-request-button {
    width: 100%;
    order: -1;
  }
}


/* ===== EAS CONTACT MODAL ===== */

body.eas-contact-is-open {
  overflow: hidden;
}

.eas-contact-overlay {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(3, 14, 20, 0.72);
  backdrop-filter: blur(6px);
}

.eas-contact-overlay[hidden] {
  display: none;
}

.eas-contact-dialog {
  width: min(920px, 100%);
  max-height: calc(100vh - 48px);
  overflow-y: auto;
  padding: 30px;
  border-radius: 20px;
  background: #ffffff;
  color: #0a3040;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.32);
}

.eas-contact-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}

.eas-contact-top h2 {
  margin: 5px 0 8px;
  font-size: clamp(1.6rem, 3vw, 2.15rem);
}

.eas-contact-top p:not(.eyebrow) {
  max-width: 700px;
  margin: 0;
  color: #5c7480;
  font-size: 0.98rem;
  line-height: 1.55;
}

.eas-contact-close {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  border: 1px solid #d8e3e7;
  border-radius: 50%;
  background: #f5f8f9;
  color: #0a3040;
  font-size: 1.7rem;
  line-height: 1;
  cursor: pointer;
}

.eas-deployment-models {
  display: grid;
  grid-template-columns:
    repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 24px 0 14px;
}

.eas-deployment-models article {
  padding: 17px;
  border: 1px solid #d9e5e8;
  border-radius: 14px;
  background: #f7fafb;
}

.eas-deployment-models strong {
  display: block;
  margin-bottom: 7px;
  color: #0b8078;
  font-size: 0.98rem;
}

.eas-deployment-models p {
  margin: 0;
  color: #526d78;
  font-size: 0.88rem;
  line-height: 1.5;
}

.eas-model-note {
  margin: 0 0 22px;
  padding: 12px 15px;
  border-left: 4px solid #0d8d82;
  border-radius: 8px;
  background: #eef8f6;
  color: #48646f;
  font-size: 0.9rem;
  line-height: 1.5;
}

.eas-model-note strong {
  color: #0a3040;
}

.eas-form-grid {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 15px;
}

.eas-form-grid label {
  display: flex;
  flex-direction: column;
  gap: 7px;
  color: #173f4d;
  font-size: 0.88rem;
  font-weight: 700;
}

.eas-form-grid label small {
  color: #78909a;
  font-weight: 500;
}

.eas-form-wide {
  grid-column: 1 / -1;
}

.eas-form-grid input,
.eas-form-grid textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #ccdce1;
  border-radius: 10px;
  background: #ffffff;
  color: #102f3a;
  font: inherit;
  font-weight: 400;
  outline: none;
}

.eas-form-grid input {
  min-height: 46px;
  padding: 0 12px;
}

.eas-form-grid textarea {
  min-height: 112px;
  padding: 11px 12px;
  resize: vertical;
}

.eas-form-grid input:focus,
.eas-form-grid textarea:focus {
  border-color: #0d8d82;
  box-shadow:
    0 0 0 3px rgba(13, 141, 130, 0.12);
}

.eas-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.eas-form-status {
  margin-top: 16px;
  padding: 12px 14px;
  border-radius: 10px;
  font-size: 0.9rem;
  line-height: 1.45;
}

.eas-form-status.is-success {
  border: 1px solid #a8ddd4;
  background: #edf9f6;
  color: #086a61;
}

.eas-form-status.is-error {
  border: 1px solid #efc3c3;
  background: #fff3f3;
  color: #9d3030;
}

.eas-form-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 18px;
}

.eas-submit-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0.72rem 1.25rem;
  border: 1px solid #0d8d82;
  border-radius: 0.75rem;
  background: #0d8d82;
  color: #ffffff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.eas-submit-button:hover:not(:disabled) {
  background: #08776e;
}

.eas-submit-button:disabled {
  cursor: wait;
  opacity: 0.7;
}

.eas-form-actions small {
  color: #718992;
  line-height: 1.4;
}

@media (max-width: 760px) {
  .eas-contact-overlay {
    padding: 12px;
  }

  .eas-contact-dialog {
    max-height: calc(100vh - 24px);
    padding: 20px;
  }

  .eas-deployment-models,
  .eas-form-grid {
    grid-template-columns: 1fr;
  }

  .eas-form-wide {
    grid-column: auto;
  }

  .eas-form-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .eas-submit-button {
    width: 100%;
  }
}


/* ===== EAS CONTACT COMPACT DESKTOP ===== */

@media (min-width: 761px) and (min-height: 720px) {

  .eas-contact-overlay {
    padding: 14px 24px;
  }

  .eas-contact-dialog {
    width: min(920px, 100%);
    max-height: calc(100vh - 28px);
    padding: 20px 26px 18px;
  }

  .eas-contact-top {
    gap: 18px;
  }

  .eas-contact-top h2 {
    margin: 2px 0 4px;
    font-size: 1.85rem;
    line-height: 1.12;
  }

  .eas-contact-top p:not(.eyebrow) {
    font-size: 0.91rem;
    line-height: 1.4;
  }

  .eas-contact-close {
    width: 38px;
    height: 38px;
    font-size: 1.5rem;
  }

  .eas-deployment-models {
    gap: 10px;
    margin: 14px 0 9px;
  }

  .eas-deployment-models article {
    padding: 11px 14px;
  }

  .eas-deployment-models strong {
    margin-bottom: 3px;
    font-size: 0.92rem;
  }

  .eas-deployment-models p {
    font-size: 0.80rem;
    line-height: 1.34;
  }

  .eas-model-note {
    margin-bottom: 12px;
    padding: 8px 12px;
    font-size: 0.82rem;
    line-height: 1.35;
  }

  .eas-form-grid {
    gap: 9px 13px;
  }

  .eas-form-grid label {
    gap: 4px;
    font-size: 0.82rem;
  }

  .eas-form-grid input {
    min-height: 38px;
    height: 38px;
    padding: 0 10px;
  }

  .eas-form-grid textarea {
    min-height: 66px;
    height: 66px;
    padding: 8px 10px;
  }

  .eas-form-actions {
    gap: 14px;
    margin-top: 11px;
  }

  .eas-submit-button {
    min-height: 42px;
    padding: 0.58rem 1.15rem;
  }

  .eas-form-actions small {
    font-size: 0.78rem;
  }

  .eas-form-status {
    margin-top: 9px;
    padding: 8px 11px;
    font-size: 0.82rem;
  }
}


/* Extra protection for laptop-height screens */
@media (min-width: 761px) and (max-height: 820px) {

  .eas-contact-dialog {
    padding-top: 16px;
    padding-bottom: 14px;
  }

  .eas-contact-top h2 {
    font-size: 1.7rem;
  }

  .eas-deployment-models {
    margin-top: 10px;
  }

  .eas-deployment-models article {
    padding-top: 9px;
    padding-bottom: 9px;
  }

  .eas-deployment-models p {
    font-size: 0.77rem;
    line-height: 1.28;
  }

  .eas-model-note {
    margin-bottom: 9px;
    padding-top: 6px;
    padding-bottom: 6px;
  }

  .eas-form-grid {
    gap: 7px 13px;
  }

  .eas-form-grid input {
    min-height: 35px;
    height: 35px;
  }

  .eas-form-grid textarea {
    min-height: 58px;
    height: 58px;
  }

  .eas-form-actions {
    margin-top: 8px;
  }
}


/* ===== EAS ACTION SWAP FINAL ===== */

/* Request EAS is the primary conversion action in dark header */
.eas-request-header {
  flex: 0 0 auto;
  min-height: 44px;
  padding: 0.65rem 1.15rem;
  border-color: #0d8d82;
  background: #0d8d82;
  color: #ffffff;
  box-shadow: 0 8px 22px rgba(13, 141, 130, 0.28);
}

.eas-request-header:hover {
  background: #08776e;
  border-color: #08776e;
}

/* Change categories belongs to the mailbox/report controls */
.workspace-category-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 0.72rem 1.15rem;
  border: 1px solid #d3e0e4;
  border-radius: 0.75rem;
  background: #ffffff;
  color: #0a3040;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
  transition:
    transform 160ms ease,
    border-color 160ms ease,
    box-shadow 160ms ease;
}

.workspace-category-button:hover {
  transform: translateY(-1px);
  border-color: #9fbfc5;
  box-shadow: 0 7px 18px rgba(10, 48, 64, 0.08);
}

.workspace-category-button:focus-visible {
  outline: 3px solid rgba(13, 141, 130, 0.18);
  outline-offset: 3px;
}

@media (max-width: 760px) {
  .eas-request-header {
    min-height: 40px;
    padding: 0.52rem 0.8rem;
    font-size: 0.82rem;
  }

  .workspace-category-button {
    width: 100%;
  }
}


/*
 * EAS header final alignment:
 * brand stays left;
 * Request EAS + Close stay together at far right.
 */
.eas-request-header {
  margin-left: auto !important;
}

.demo-close-button {
  margin-left: 8px !important;
}



/* Final-page return control */
.demo-close-button[hidden] {
  display: none !important;
}


/* =========================================================
   Aegeantek EAS — professional bilingual header controls
   ========================================================= */

.aegeantek-brand img,
.workspace-brand .workspace-logo {
  object-fit: contain;
}

.aegeantek-brand img {
  width: auto;
  max-width: 15.75rem;
  max-height: 4.8rem;
}

.workspace-brand .workspace-logo {
  width: auto;
  max-width: 8.5rem;
  max-height: 2.7rem;
}

.topbar {
  gap: 0.85rem;
}

.eas-language-switch {
  display: inline-flex;
  align-items: center;
  direction: ltr;
  margin-left: auto;
  padding: 0.18rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
}

.eas-language-switch button {
  min-width: 2.35rem;
  padding: 0.42rem 0.58rem;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(255, 255, 255, 0.72);
  font: inherit;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.08em;
  cursor: pointer;
}

.eas-language-switch button.active {
  background: #ffffff;
  color: #0a3133;
  box-shadow: 0 0.25rem 0.8rem rgba(0, 0, 0, 0.14);
}

.eas-request-header {
  margin-left: 0;
}

@media (max-width: 700px) {
  .topbar {
    flex-wrap: wrap;
  }

  .eas-language-switch {
    margin-left: auto;
  }

  .aegeantek-brand img {
    max-width: 8rem;
  }
}

/* =========================================================
   AEGEANTEK EAS — LIGHT BRAND HEADER
   ========================================================= */

.topbar {
  background: #ffffff !important;
  border-bottom: 1px solid rgba(10, 49, 51, 0.12) !important;
  box-shadow: 0 8px 24px rgba(10, 49, 51, 0.06);
}

.aegeantek-brand {
  color: #0a3133 !important;
}

.aegeantek-brand strong,
.aegeantek-brand span {
  color: #0a3133 !important;
}

.aegeantek-brand small {
  color: #60787a !important;
}

.aegeantek-brand img {
  opacity: 1 !important;
  filter: none !important;
}

.eas-language-switch {
  background: #f2f6f5 !important;
  border: 1px solid rgba(10, 49, 51, 0.16) !important;
}

.eas-language-switch button {
  color: #53696b !important;
}

.eas-language-switch button.active {
  background: #0a3133 !important;
  color: #ffffff !important;
}

.eas-request-header {
  box-shadow: 0 8px 20px rgba(15, 153, 145, 0.18);
}


/* =========================================================
   AEGEANTEK EAS — DEPLOYMENT MODELS
   Prevent Turkish labels from colliding or clipping.
   ========================================================= */

.demo-landing .deployment-models {
  display: flex !important;
  align-items: center !important;
  gap: 1rem !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0.85rem 1rem !important;
  overflow: visible !important;
}

.demo-landing .deployment-label {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  margin: 0 !important;
}

.demo-landing .deployment-options {
  display: flex !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.65rem !important;
  flex-wrap: wrap !important;
  overflow: visible !important;
}

.demo-landing .deployment-options strong {
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  white-space: nowrap !important;
  line-height: 1.35 !important;
  margin: 0 !important;
}

.demo-landing .deployment-options i {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

@media (max-width: 900px) {
  .demo-landing .deployment-models {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 0.45rem !important;
  }

  .demo-landing .deployment-options {
    gap: 0.45rem 0.65rem !important;
  }
}


/* =========================================================
   AEGEANTEK EAS — DEPLOYMENT CARDS V2
   ========================================================= */

.demo-landing .deployment-models {
  display: block !important;
  width: 100% !important;
  padding: 0.85rem !important;
}

.demo-landing .deployment-label {
  display: block !important;
  margin: 0 0 0.65rem !important;
  white-space: normal !important;
}

.demo-landing .deployment-options {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.5rem !important;
  width: 100% !important;
}

.demo-landing .deployment-options strong {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 0 !important;
  min-height: 3rem !important;
  padding: 0.55rem 0.45rem !important;

  white-space: normal !important;
  overflow-wrap: anywhere !important;

  text-align: center !important;
  line-height: 1.2 !important;
  font-size: 0.68rem !important;
  font-weight: 800 !important;

  color: #123f41 !important;
  background: #ffffff !important;

  border:
    1px solid rgba(10, 49, 51, 0.14) !important;

  border-radius: 0.65rem !important;
}

.demo-landing .deployment-options i {
  display: none !important;
}

@media (max-width: 760px) {
  .demo-landing .deployment-options {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   AEGEANTEK EAS — FINAL LANGUAGE CONTROL
   ========================================================= */

.eas-language-switch {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;

  margin-left: auto !important;
  padding: 0.18rem !important;

  border:
    1px solid rgba(10, 49, 51, 0.16) !important;

  border-radius: 999px !important;
  background: #f2f6f5 !important;
}

.eas-language-switch button {
  appearance: none !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 2.45rem !important;
  min-height: 2rem !important;

  padding: 0.42rem 0.58rem !important;

  border: 0 !important;
  border-radius: 999px !important;

  background: transparent !important;
  color: #53696b !important;

  font: inherit !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.06em !important;

  text-decoration: none !important;
  cursor: pointer !important;
}

.eas-language-switch button.active,
.eas-language-switch button[aria-pressed="true"] {
  background: #0a3133 !important;
  color: #ffffff !important;

  box-shadow:
    0 0.2rem 0.65rem
    rgba(10, 49, 51, 0.16) !important;
}


/* =========================================================
   AEGEANTEK EAS — COMPACT ANALYSIS SUMMARY
   Keep the full summary visible on standard laptop screens.
   Internal scrolling remains available only when required.
   ========================================================= */

.summary-dialog {
  width: min(700px, 100%);
  max-height: calc(100vh - 24px);
  padding: 18px 24px 16px;
  overflow-y: auto;
}

.summary-dialog-top {
  min-height: 32px;
}

.summary-ai-mark,
.summary-close {
  width: 34px;
  height: 34px;
}

.summary-dialog > .eyebrow {
  margin-top: 10px;
  margin-bottom: 5px;
}

.summary-dialog h2 {
  font-size: 29px;
  line-height: 1.04;
}

.summary-introduction {
  margin: 7px 0 10px;
  line-height: 1.4;
}

.summary-results {
  gap: 6px;
}

.summary-results div {
  min-height: 52px;
  padding: 7px 9px;
}

.summary-explanation {
  margin-top: 9px;
  margin-bottom: 9px;
  padding-top: 9px;
  padding-bottom: 9px;
}

.summary-capabilities {
  row-gap: 3px;
}

.summary-control-rule {
  margin-top: 7px;
}

.summary-review-button {
  min-height: 40px;
  padding-top: 8px;
  padding-bottom: 8px;
}

.summary-safety-note {
  margin-top: 6px;
  line-height: 1.25;
}


/* =========================================================
   AEGEANTEK EAS — COMPACT TOP-ALIGNED LANDING
   Desktop only: equal columns, reduced header gap.
   ========================================================= */

@media (min-width: 981px) {
  .demo-landing {
    align-items: stretch;
  }

  .landing-copy,
  .landing-visual {
    min-height: 600px;
    justify-content: flex-start;
  }

  .landing-copy {
    padding-top: 28px;
    padding-bottom: 36px;
  }

  .landing-visual {
    padding-top: 28px;
    padding-bottom: 36px;
  }

  .eas-product-mark {
    margin-bottom: 20px;
  }

  .landing-copy .eyebrow {
    margin-bottom: 14px;
  }

  .landing-description {
    margin-top: 24px;
  }

  .landing-visual h2 {
    margin-bottom: 26px;
  }
}


/* =========================================================
   AEGEANTEK EAS — COMPACT LANDING TYPOGRAPHY
   ========================================================= */

@media (min-width: 981px) {
  .landing-copy h1 {
    font-size: clamp(3rem, 3.5vw, 3.75rem);
    line-height: 0.98;
    letter-spacing: -0.04em;
  }

  .landing-visual h2 {
    font-size: clamp(2.5rem, 3vw, 3.4rem);
    line-height: 1;
  }

  .landing-description {
    margin-top: 20px;
    line-height: 1.5;
  }
}


/* =========================================================
   AEGEANTEK EAS — FINAL COMPACT LANDING
   Smaller header + tighter vertical rhythm
   ========================================================= */

@media (min-width: 981px) {

  /* Slightly slimmer header */
  .topbar {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    min-height: 0 !important;
  }

  /* Keep both landing columns compact and equal */
  .landing-copy,
  .landing-visual {
    min-height: 560px;
    padding-top: 20px;
    padding-bottom: 22px;
  }

  /* Tighten vertical spacing on left */
  .eas-product-mark {
    margin-bottom: 14px;
  }

  .landing-copy .eyebrow {
    margin-bottom: 9px;
  }

  .landing-description {
    margin-top: 17px;
    line-height: 1.5;
  }

  .landing-start {
    margin-top: 24px;
    min-height: 64px;
  }

  .landing-note {
    margin-top: 12px;
  }

  /* Tighten vertical spacing on right */
  .landing-visual h2 {
    margin-bottom: 18px;
  }

  .workflow-preview {
    gap: 9px;
  }

  .workflow-preview article {
    padding-top: 13px;
    padding-bottom: 13px;
  }
}


/* =========================================================
   AEGEANTEK EAS — FINAL LANDING HEIGHT
   Remove unnecessary bottom space
   ========================================================= */

@media (min-width: 981px) {
  .landing-copy,
  .landing-visual {
    min-height: 505px;
  }
}


/* =========================================================
   AEGEANTEK EAS — LANDING TRUE CONTENT HEIGHT
   Remove viewport-forced desktop height.
   Both columns remain equal through CSS Grid stretch.
   ========================================================= */

@media (min-width: 981px) {
  .demo-landing {
    min-height: 0 !important;
    align-items: stretch;
  }

  .landing-copy,
  .landing-visual {
    min-height: 0 !important;
  }
}


/* =========================================================
   AEGEANTEK EAS — LIGHT HEADER CLOSE CONTROL
   Visible equivalent of the WebConcept return-to-start button.
   ========================================================= */

.demo-close-button:not([hidden]) {
  display: grid !important;
  color: #123f41 !important;
  border-color: rgba(18, 63, 65, 0.24) !important;
  background: rgba(18, 63, 65, 0.06) !important;
}

.demo-close-button:not([hidden]):hover {
  color: #0b3039 !important;
  border-color: rgba(18, 63, 65, 0.42) !important;
  background: rgba(18, 63, 65, 0.12) !important;
}

.demo-close-button:not([hidden]):focus-visible {
  outline: 2px solid #11877f !important;
  outline-offset: 3px;
}
