:root {
  --ink: #1A325C;
  --muted: #6b7289;
  --line: #e6eaf0;
  --soft: #f5f7fa;
  --paper: #ffffff;
  --navy: #1A325C;
  --navy-2: #203f66;
  --gold: #B39464;
  --grad: linear-gradient(90deg, #1A325C 0%, #2a4a7a 100%);
  --grad-soft: linear-gradient(145deg, #eef2f8, #f7f3ec);
  /* legacy aliases → navy law palette (Iskra polish) */
  --purple: #1A325C;
  --purple-deep: #12243f;
  --bubble-user: #e8eef6;
  --shadow: 0 12px 40px rgba(26, 50, 92, 0.08);
  --radius: 16px;
  --font: "Outfit", ui-sans-serif, system-ui, sans-serif;
  --font-serif: "Libre Baskerville", Georgia, "Times New Roman", serif;
}
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
body.med-body {
  min-height: 100dvh;
  font-family: var(--font);
  color: var(--ink);
  background: #f5f7fa;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}
button, input, textarea { font: inherit; }
a { color: inherit; }
button { cursor: pointer; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

/* —— Phone shell (landing) —— */
.med-landing { display: grid; place-items: start center; padding: 24px 12px 40px; }
.med-phone {
  width: min(420px, 100%);
  min-height: min(860px, calc(100dvh - 48px));
  background: var(--paper);
  border-radius: 28px;
  box-shadow: var(--shadow), 0 0 0 1px rgba(255,255,255,0.6);
  overflow: hidden;
  display: flex; flex-direction: column;
  position: relative;
}
.med-home-top {
  display: flex; align-items: center; justify-content: space-between;
  padding: 8px 20px 6px;
}
.med-logo { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.med-logo-text strong { display: block; font-size: 1.05rem; font-weight: 800; letter-spacing: -0.02em; }
.med-logo-text small { display: block; margin-top: 2px; font-size: 0.62rem; font-weight: 700; letter-spacing: 0.08em; color: var(--muted); text-transform: uppercase; }
.med-icon-btn {
  width: 40px; height: 40px; border: 0; background: transparent; border-radius: 12px;
  display: grid; place-items: center; color: var(--ink); text-decoration: none; font-size: 1.25rem;
}
.med-icon-btn span {
  display: block; width: 18px; height: 2px; background: var(--ink); border-radius: 2px; margin: 3px 0;
}
.med-home-main { flex: 1; padding: 8px 22px 20px; display: flex; flex-direction: column; gap: 22px; }
.med-hero { position: relative; padding-right: 48px; }
.med-hero-justice {
  position: absolute; right: -28px; top: -10px; width: 140px; height: 180px;
  color: #d8dae6; pointer-events: none; z-index: 0;
}
.med-hero h1 {
  position: relative; z-index: 1; margin: 0;
  font-size: clamp(1.85rem, 6.5vw, 2.15rem);
  line-height: 1.18; font-weight: 800; letter-spacing: -0.03em;
}
.med-grad-text {
  background: var(--grad); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.med-lead {
  position: relative; z-index: 1; margin: 12px 0 0;
  color: var(--muted); font-size: 0.95rem; line-height: 1.5; font-weight: 500;
}
.med-features { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.med-features li { display: flex; align-items: center; gap: 12px; }
.med-feat-icon {
  width: 42px; height: 42px; border-radius: 12px; flex: 0 0 auto;
  display: grid; place-items: center; color: var(--purple);
  background: var(--grad-soft); box-shadow: inset 0 0 0 1px #dbe3ef;
}
.med-features b { display: block; font-size: 0.92rem; font-weight: 700; }
.med-features small { display: block; margin-top: 2px; color: var(--muted); font-size: 0.78rem; }
.med-home-actions { display: flex; flex-direction: column; gap: 10px; }
.med-btn-grad {
  display: flex; align-items: center; justify-content: center;
  min-height: 54px; border-radius: 14px; text-decoration: none; font-weight: 700; font-size: 1rem;
  color: #fff; background: var(--grad); box-shadow: 0 10px 28px rgba(99, 70, 240, 0.35);
  border: 0; transition: transform .15s ease, box-shadow .15s ease;
}
.med-btn-grad:hover { transform: translateY(-1px); box-shadow: 0 14px 32px rgba(99, 70, 240, 0.42); }
.med-btn-outline {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 50px; border-radius: 14px; text-decoration: none; font-weight: 650; font-size: 0.95rem;
  color: var(--ink); background: #fff; border: 1.5px solid var(--line);
}
.med-btn-sm { min-height: 40px; padding: 0 16px; font-size: 0.85rem; border-color: #1A325C55; color: var(--purple); font-weight: 700; }
.med-balance-card {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 16px 18px; border-radius: 16px; background: var(--soft); border: 1px solid var(--line);
}
.med-balance-label { display: block; font-size: 0.78rem; color: var(--muted); font-weight: 600; }
.med-balance-value {
  display: block; margin-top: 4px; font-size: 1.55rem; font-weight: 800;
  background: var(--grad); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.med-balance-hint { display: block; margin-top: 4px; font-size: 0.72rem; color: var(--muted); }
.med-how h2 { margin: 0 0 10px; font-size: 1rem; font-weight: 800; }
.med-how ol { margin: 0; padding-left: 1.15rem; color: var(--muted); font-size: 0.88rem; line-height: 1.55; }
.med-how b { color: var(--ink); }
.med-home-foot {
  padding: 8px 22px 22px; text-align: center; color: var(--muted); font-size: 0.72rem; line-height: 1.5;
}
.med-tagline { margin: 8px 0 0; font-weight: 600; color: #a0a3b5; }
.med-sheet {
  position: fixed; inset: auto 12px 12px; z-index: 40;
  background: #fff; border-radius: 18px; box-shadow: var(--shadow);
  padding: 12px; display: flex; flex-direction: column; gap: 6px;
  width: min(420px, calc(100% - 24px)); left: 50%; transform: translateX(-50%);
}
.med-sheet[hidden] { display: none !important; }
.med-sheet a, .med-sheet button {
  min-height: 48px; border: 0; border-radius: 12px; background: var(--soft);
  text-decoration: none; display: flex; align-items: center; justify-content: center; font-weight: 650;
}

/* —— Inbox / chat —— */
.med-inbox-page { background: #e8e9f0; display: grid; place-items: start center; padding: 16px 10px 24px; }
.med-app-shell {
  width: 100%;
  max-width: none;
  min-height: min(860px, calc(100dvh - 20px));
  background: var(--paper);
  border-radius: 24px;
  box-shadow: var(--shadow);
  display: flex; flex-direction: column; overflow: hidden;
}
.med-chat-top {
  display: grid; grid-template-columns: 40px 1fr auto; align-items: center; gap: 8px;
  padding: 12px 14px; border-bottom: 1px solid var(--line);
}
.med-back {
  width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; color: var(--ink); text-decoration: none;
}
.med-lawyer-chip { display: flex; align-items: center; gap: 10px; justify-self: center; }
.med-avatar {
  width: 42px; height: 42px; border-radius: 50%;
  background: var(--grad); color: #fff; display: grid; place-items: center;
  font-size: 0.75rem; font-weight: 800; letter-spacing: 0.02em;
  box-shadow: 0 6px 16px rgba(99, 70, 240, 0.28);
}
.med-lawyer-chip strong { display: block; font-size: 0.95rem; font-weight: 800; }
.med-lawyer-chip span { display: flex; align-items: center; gap: 6px; font-size: 0.72rem; color: var(--muted); font-weight: 600; }
.med-online { width: 7px; height: 7px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 3px #dcfce7; }
.med-chat-tools { display: flex; gap: 2px; }
.med-credit-bar {
  display: flex; align-items: center; justify-content: space-between;
  padding: 10px 16px; border-bottom: 1px solid var(--line); background: #fafafa;
}
.med-credit-pill {
  display: inline-flex; align-items: center; gap: 8px; font-size: 0.9rem; font-weight: 700;
}
.med-credit-pill b {
  background: var(--grad); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.med-credit-topup {
  border: 0; background: transparent; color: var(--purple); font-weight: 700; font-size: 0.85rem;
  display: inline-flex; align-items: center; gap: 6px;
}
.med-plus {
  width: 22px; height: 22px; border-radius: 50%; background: var(--grad); color: #fff;
  display: inline-grid; place-items: center; font-size: 0.85rem; line-height: 1;
}
.med-inbox-split {
  flex: 1; min-height: 0; display: grid; grid-template-columns: 240px 1fr;
}
.med-sidebar {
  border-right: 1px solid var(--line); display: flex; flex-direction: column; min-height: 0; background: #fcfcfd;
}
.med-sidebar-head {
  display: flex; align-items: center; justify-content: space-between; padding: 14px 12px; border-bottom: 1px solid var(--line);
}
.med-sidebar-head h2 { margin: 0; font-size: 0.95rem; font-weight: 800; }
.med-new-chip {
  border: 0; border-radius: 999px; padding: 6px 10px; background: var(--grad); color: #fff;
  font-size: 0.72rem; font-weight: 750;
}
.med-thread-list { flex: 1; overflow: auto; padding: 8px; }
.med-linkish {
  border: 0;
  background: none;
  color: #1a325c;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
  padding: 0;
}
.med-thread-item {
  width: 100%; text-align: left; border: 1px solid transparent; background: transparent;
  border-radius: 12px; padding: 10px 12px; margin-bottom: 4px; cursor: pointer;
}
.med-thread-item:hover { background: #f3f2f8; }
.med-thread-item.active { background: #e8eef6; border-color: #d5deeb; }
.med-thread-item .t-title { font-weight: 700; font-size: 0.85rem; margin-bottom: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.med-thread-item .t-meta { display: flex; justify-content: space-between; font-size: 0.7rem; color: var(--muted); }
.med-badge-pending { color: var(--purple); font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; font-size: 0.65rem; }

.med-thread-panel { min-width: 0; display: flex; flex-direction: column; min-height: 0; }
.med-thread-meta { display: none; }
.med-messages {
  flex: 1; overflow: auto; padding: 18px 16px 12px;
  display: flex; flex-direction: column; gap: 12px; background: #fff;
  scroll-behavior: smooth;
}

.med-avatar-sm { width: 28px; height: 28px; font-size: 0.55rem; box-shadow: none; flex: 0 0 auto; }
.med-msg-row {
  display: flex; align-items: flex-end; gap: 8px; max-width: 100%;
}
.med-msg-row.user { align-self: flex-end; flex-direction: row-reverse; }
.med-msg-row.bot { align-self: flex-start; }
.med-msg-row.system { align-self: center; justify-content: center; }
.med-msg-row .med-bubble { max-width: min(78vw, 420px); }
.med-coin {
  width: 18px; height: 18px; border-radius: 5px;
  background: var(--grad); display: inline-block;
  box-shadow: inset 0 -2px 0 rgba(0,0,0,0.12);
}

.med-day {
  align-self: center; font-size: 0.72rem; color: var(--muted); font-weight: 650; margin: 4px 0 8px;
}
.med-bubble {
  max-width: min(78%, 420px); padding: 12px 14px; border-radius: 16px;
  line-height: 1.5; font-size: 0.92rem; position: relative;
}
.med-bubble.is-plain,
.med-bubble .med-bubble-body.is-plain {
  white-space: pre-wrap;
}
.med-bubble.is-html {
  white-space: normal;
}
.med-bubble-body {
  word-break: break-word;
}
.med-bubble-body > *:first-child { margin-top: 0; }
.med-bubble-body > *:last-child { margin-bottom: 0; }
.med-bubble-body p {
  margin: 0 0 0.7em;
}
.med-bubble-body p:last-child { margin-bottom: 0; }
.med-bubble-body strong,
.med-bubble-body b { font-weight: 700; color: #1f2d44; }
.med-bubble-body ol,
.med-bubble-body ul {
  margin: 0.35em 0 0.75em;
  padding-left: 1.35em;
}
.med-bubble-body li {
  margin: 0.28em 0;
  padding-left: 0.15em;
}
.med-bubble-body li + li { margin-top: 0.35em; }
.med-bubble-body a {
  color: #2f5f9a;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.med-bubble.user {
  align-self: flex-end; background: var(--bubble-user); color: var(--ink);
  border-bottom-right-radius: 6px;
}
.med-bubble.bot {
  align-self: flex-start; background: #fff; border: 1px solid var(--line);
  border-bottom-left-radius: 6px; box-shadow: 0 4px 14px rgba(30,25,60,0.04);
}
.med-bubble.system {
  align-self: center; max-width: 90%; text-align: center; background: #eef2f8;
  border: 0; color: #6b628a; font-size: 0.8rem; box-shadow: none;
}
.med-bubble .meta {
  display: flex; justify-content: space-between; gap: 8px; margin-bottom: 6px;
  font-size: 0.68rem; font-weight: 700; color: var(--muted);
}
.med-bubble.user .meta { color: #8b7bb8; }
.med-bubble .ticks { letter-spacing: -0.08em; color: var(--purple); }
.med-typing {
  align-self: flex-start; display: flex; align-items: center; gap: 8px;
}
.med-typing .dots {
  display: flex; gap: 4px; padding: 12px 14px; border-radius: 16px; border: 1px solid var(--line); background: #fff;
}
.med-typing .dots i {
  width: 6px; height: 6px; border-radius: 50%; background: rgba(26,50,92,.35);
  animation: med-bounce 1.1s infinite ease-in-out;
}
.med-typing .dots i:nth-child(2) { animation-delay: .15s; }
.med-typing .dots i:nth-child(3) { animation-delay: .3s; }
@keyframes med-bounce { 0%,80%,100% { transform: translateY(0); opacity: .5; } 40% { transform: translateY(-4px); opacity: 1; } }

.med-composer {
  padding: 8px 12px 10px; border-top: 1px solid var(--line); background: #fff;
}
.med-subject {
  width: 100%; border: 0; border-bottom: 1px solid var(--line); padding: 8px 8px 10px; margin-bottom: 6px; font-weight: 650;
}
.med-subject, .med-subject[hidden] { display: none !important; }
.med-composer-row {
  display: grid; grid-template-columns: 40px 1fr 48px; gap: 8px; align-items: end;
}
.med-attach {
  width: 40px; height: 40px; border: 0; background: transparent; color: var(--muted); border-radius: 12px;
}
.med-textarea {
  width: 100%; min-height: 44px; max-height: 140px; resize: none;
  border: 1px solid var(--line); border-radius: 22px; padding: 12px 16px;
  background: var(--soft); line-height: 1.4;
}
.med-textarea:focus { outline: 0; border-color: #1A325C55; background: #fff; }
.med-send-fab {
  width: 48px; height: 48px; border: 0; border-radius: 50%;
  background: var(--grad); display: grid; place-items: center;
  box-shadow: 0 8px 20px rgba(99, 70, 240, 0.35);
}
.med-send-fab:disabled { opacity: 0.4; box-shadow: none; }
.med-cost-note { margin: 8px 8px 0; font-size: 0.72rem; color: var(--muted); text-align: center; }

.med-tabbar {
  display: grid; grid-template-columns: repeat(5, 1fr);
  border-top: 1px solid var(--line); background: #fff;
  padding: 6px 4px calc(6px + env(safe-area-inset-bottom));
}
.med-tabbar a, .med-tabbar button {
  border: 0; background: transparent; display: flex; flex-direction: column; align-items: center; gap: 2px;
  padding: 6px 2px; font-size: 0.62rem; font-weight: 650; color: var(--muted); text-decoration: none;
}
.med-tabbar a.active, .med-tabbar button.active { color: var(--purple); }
.med-tabbar span[aria-hidden] { font-size: 1.05rem; line-height: 1; }

/* modal / toast / packages */
.med-muted { color: var(--muted); font-size: 0.88rem; line-height: 1.45; }
.med-modal[hidden], .med-toast[hidden] { display: none !important; }
.med-modal {
  position: fixed; inset: 0; z-index: 100; display: grid; place-items: center;
  padding: 16px; background: rgba(20, 18, 40, 0.45); backdrop-filter: blur(4px);
}
.med-modal-card {
  width: min(440px, 100%); background: #fff; border-radius: 20px; padding: 24px; box-shadow: var(--shadow); position: relative;
}
.med-modal-card h2 { margin: 0 0 8px; font-size: 1.25rem; }
.med-modal-close { position: absolute; top: 10px; right: 12px; border: 0; background: transparent; font-size: 1.5rem; color: var(--muted); }
.med-pkg-list { margin-top: 14px; display: flex; flex-direction: column; gap: 8px; }
.med-pkg {
  display: flex; justify-content: space-between; align-items: center; gap: 10px;
  padding: 12px; border-radius: 14px; border: 1px solid var(--line); background: var(--soft);
}
.med-btn { min-height: 38px; padding: 0 14px; border: 0; border-radius: 10px; font-weight: 750; cursor: pointer; }
.med-btn-primary { background: var(--grad); color: #fff; }
.med-toast {
  position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 120;
  background: var(--ink); color: #fff; padding: 10px 16px; border-radius: 999px; font-size: 0.85rem;
  max-width: 90vw; box-shadow: var(--shadow);
}

@media (max-width: 820px) {
  .med-landing, .med-inbox-page { padding: 0; background: #fff; place-items: stretch; }
  .med-phone, .med-app-shell {
    width: 100%; min-height: 100dvh; border-radius: 0; box-shadow: none;
  }
  .med-inbox-split { grid-template-columns: 1fr; }
  .med-sidebar { display: none; }
  .med-lawyer-chip { justify-self: start; }
  .med-thread-meta { display: none; }
}

/* chat-first mobile */


@media (min-width: 821px) {
  .med-inbox-page {
    padding: 0;
    place-items: stretch;
    min-height: 100dvh;
    box-sizing: border-box;
  }
  .med-app-shell {
    width: 100%;
    max-width: none;
    min-height: 100dvh;
    height: 100dvh;
    border-radius: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* —— Light hero composition —— */
.med-landing-hero { background: #f3f4f8; padding: 0; }
.med-phone-light {
  background: #fff;
  color: var(--ink);
  border-radius: 0;
  box-shadow: none;
  width: min(430px, 100%);
}
.med-hero-block {
  position: relative;
  min-height: min(48dvh, 400px);
  background: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.med-hero-img {
  position: absolute;
  top: 0;
  right: -4%;
  height: 108%;
  width: auto;
  max-width: none;
  z-index: 0;
  pointer-events: none;
  object-fit: cover;
  object-position: right center;
  /* invert: black plate→white (vanishes via multiply); statue→visible grey */
  mix-blend-mode: multiply;
  opacity: 0.55;
  filter: invert(1) grayscale(1) contrast(0.95) brightness(1.05);
}
.med-hero-shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg, #fff 0%, rgba(255,255,255,0.9) 28%, rgba(255,255,255,0.35) 48%, transparent 70%),
    linear-gradient(180deg, rgba(255,255,255,0.25) 0%, transparent 24%, transparent 75%, #fff 100%);
}
.med-home-top-over {
  position: relative;
  z-index: 3;
  color: var(--ink);
  padding: 8px 16px 4px;
}
.med-icon-dark span { background: var(--ink); }
.med-hero-copy {
  position: relative;
  z-index: 3;
  max-width: 78%;
  padding: 8px 20px 22px;
}
.med-hero-copy h1 {
  margin: 0;
  font-size: clamp(1.7rem, 7vw, 2.05rem);
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: var(--ink);
  text-shadow: none;
}
.med-hero-copy .med-lead {
  color: var(--muted) !important;
  max-width: 36ch;
  font-size: 0.9rem !important;
  line-height: 1.45 !important;
}
.med-home-sheet {
  background: #fff;
  color: var(--ink);
  border-radius: 0;
  margin-top: 0;
  position: relative;
  z-index: 4;
  padding: 8px 22px 20px;
  box-shadow: none;
}
.med-phone-light .med-home-foot {
  background: #fff;
  color: var(--muted);
}

@media (max-width: 820px) {
  .med-landing-hero { padding: 0; background: #fff; }
  .med-phone-light { width: 100%; min-height: 100dvh; border-radius: 0; }
  .med-hero-block { min-height: 42dvh; }
}

@media (min-width: 821px) {
  .med-landing-hero {
    padding: 0;
    background: #eef0f5;
    place-items: stretch;
    min-height: 100dvh;
    box-sizing: border-box;
  }
  .med-phone-light {
    width: 100%;
    max-width: none;
    min-height: 100dvh;
    border-radius: 0;
    overflow: hidden;
    box-shadow: none;
  }
}

/* —— Remeliai + navigacija polish (mockup) —— */
:root {
  --line: #e6e8ef;
  --soft: #f4f5f9;
  --frame: 0 0 0 1px rgba(30, 35, 60, 0.06);
  --frame-shadow: 0 10px 30px rgba(40, 45, 80, 0.07);
  --radius-lg: 22px;
  --radius-pill: 999px;
  --blue: #1A325C;
}

.med-card-frame {
  border-radius: var(--radius-lg);
  background: #fff;
  box-shadow: var(--frame), var(--frame-shadow);
}
.med-sheet-frame {
  box-shadow: 0 -8px 32px rgba(0,0,0,0.22);
}
.med-feat-round {
  border-radius: 50% !important;
  width: 44px; height: 44px;
  background: #eef1ff !important;
  box-shadow: none !important;
  color: var(--blue) !important;
}
.med-nav-3 {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  align-items: center;
  gap: 8px;
}
.med-logo-center { justify-self: center; }
.med-login-pill {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 36px; padding: 0 14px; border-radius: var(--radius-pill);
  background: var(--grad); color: #fff; font-weight: 700; font-size: 0.82rem;
  text-decoration: none; box-shadow: 0 6px 16px rgba(99,70,240,0.35);
}
.med-balance-card.med-card-frame {
  border: 0;
  background: #f7f8fc;
  border-radius: 18px;
  box-shadow: var(--frame);
}

/* Client panel shell */
.med-inbox-page { background: #eef0f5; }
.med-shell-card {
  background: #fff;
  border-radius: 28px;
  box-shadow: var(--frame), 0 18px 50px rgba(35, 40, 70, 0.1);
  overflow: hidden;
}
.med-panel-top {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 16px 10px; gap: 10px;
}
.med-panel-tools { display: flex; align-items: center; gap: 8px; }
.med-icon-soft {
  width: 40px; height: 40px; border: 0; border-radius: 12px;
  background: transparent; color: #6b728a;
  display: grid; place-items: center;
}
.med-avatar-nav {
  width: 36px; height: 36px; font-size: 0.7rem; text-decoration: none;
}
.med-pills {
  display: flex; gap: 8px; padding: 4px 16px 10px; overflow-x: auto;
}
.med-pills button {
  border: 0; background: transparent; color: var(--muted);
  font-weight: 700; font-size: 0.88rem;
  padding: 9px 16px; border-radius: var(--radius-pill);
  white-space: nowrap;
}
.med-pills button.active {
  background: var(--blue); color: #fff;
  box-shadow: 0 8px 18px rgba(79, 107, 255, 0.28);
}
.med-credit-soft {
  margin: 0 16px 10px;
  border: 0;
  border-radius: 14px;
  background: #f7f8fc;
  box-shadow: var(--frame);
  padding: 10px 12px;
}
.med-lawyer-row {
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 14px 8px; gap: 10px;
  border-bottom: 1px solid var(--line);
}
.med-active-pill {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 0.75rem; font-weight: 700; color: #16a34a;
  background: #ecfdf3; border-radius: var(--radius-pill);
  padding: 6px 10px;
}
.med-inbox-split .med-thread-panel.med-card-frame {
  margin: 0 12px 8px;
  border-radius: 18px;
  min-height: 0;
  box-shadow: var(--frame), 0 8px 24px rgba(40,45,80,0.06);
  overflow: hidden;
  display: flex; flex-direction: column;
}
.med-composer-frame {
  margin: 0 10px 10px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fafbff;
  box-shadow: none;
  padding: 8px 10px 6px;
}
.med-composer-frame .med-composer-row { gap: 6px; }
.med-composer-frame .med-textarea {
  background: transparent; border: 0; border-radius: 12px; padding: 10px 8px;
}
.med-composer-frame .med-textarea:focus { background: #fff; }
.med-bubble.user {
  background: #e8ecff;
  border: 0;
  box-shadow: none;
}
.med-bubble.bot {
  border: 1px solid var(--line);
  box-shadow: 0 2px 8px rgba(30,35,60,0.04);
}
.med-tabbar-line {
  border-top: 1px solid var(--line);
  background: #fff;
  grid-template-columns: repeat(4, 1fr);
  padding: 8px 6px calc(8px + env(safe-area-inset-bottom));
}
.med-tabbar-line a, .med-tabbar-line button {
  color: #9aa0b4;
  font-size: 0.62rem;
  gap: 4px;
}
.med-tabbar-line a.active, .med-tabbar-line button.active {
  color: var(--blue);
}
.med-tabbar-line svg { display: block; }

@media (max-width: 820px) {
  .med-inbox-page { padding: 0; background: #eef0f5; }
  .med-shell-card {
    width: 100%; min-height: 100dvh; border-radius: 0; box-shadow: none;
  }
  .med-inbox-split { grid-template-columns: 1fr; }
  .med-sidebar { display: none; }
  .med-sidebar:not([hidden]) {
    display: block; max-height: 160px; margin: 0 12px 8px;
    border-radius: 16px; overflow: auto;
  }
  .med-thread-list { display: flex; gap: 6px; overflow-x: auto; }
  .med-thread-item { min-width: 150px; margin: 0; }
  .med-tabbar { display: grid; }
}

@media (min-width: 821px) {
  .med-tabbar-line { display: grid; }
  .med-sidebar[hidden] { display: flex !important; }
  .med-shell-card {
    width: 100%;
    max-width: none;
    min-height: 100dvh;
    height: 100dvh;
    border-radius: 0;
  }
  .med-inbox-split {
    grid-template-columns: minmax(220px, 280px) 1fr;
    padding: 0 12px 8px;
    gap: 10px;
    flex: 1;
    min-height: 0;
  }
  .med-sidebar.med-card-frame {
    border-radius: 18px; overflow: hidden;
  }
  .med-inbox-split .med-thread-panel.med-card-frame {
    flex: 1;
  }
}

.med-brand-logo {
  display: block;
  height: 40px;
  width: auto;
  max-width: min(220px, 58vw);
  object-fit: contain;
}
.med-brand-logo-sm { height: 36px; max-width: min(180px, 52vw); }
.med-logo-panel { margin-left: 2px; }
.med-logo-panel small {
  display: block;
  margin-top: 0;
  font-size: 0.62rem;
  letter-spacing: 0.1em;
  color: var(--muted);
  font-weight: 700;
}
.med-logo:has(.med-brand-logo) { gap: 6px; align-items: center; }


/* —— Mediatorius × AstroCore optional context bridge —— */
.med-bubble.bot {
  max-width: min(92%, 780px);
  line-height: 1.62;
}
.med-context-layer {
  margin: 0 2px 8px;
  border: 1px solid #d9e0ea;
  border-radius: 14px;
  background: #fff;
  color: #14243b;
  overflow: hidden;
}
.med-context-layer > summary {
  min-height: 42px;
  padding: 9px 12px;
  display: flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
  list-style: none;
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.01em;
  user-select: none;
}
.med-context-layer > summary::-webkit-details-marker { display: none; }
.med-context-layer > summary::after {
  content: '⌄';
  margin-left: auto;
  color: #64748b;
  font-size: 1rem;
  transition: transform .15s ease;
}
.med-context-layer[open] > summary::after { transform: rotate(180deg); }
.med-context-layer > summary small {
  color: #64748b;
  font-size: 0.66rem;
  font-weight: 650;
  border: 1px solid #d9e0ea;
  border-radius: 999px;
  padding: 3px 7px;
}
.med-context-symbol {
  width: 24px;
  height: 24px;
  border: 1px solid #b69155;
  border-radius: 50%;
  display: inline-grid;
  place-items: center;
  color: #8a692f;
  background: #fffaf0;
  font-size: 0.85rem;
}
.med-context-body {
  max-height: min(48vh, 480px);
  overflow: auto;
  border-top: 1px solid #e6eaf0;
  padding: 12px;
  background: #f8fafc;
}
.med-context-body > p {
  margin: 0 0 10px;
  color: #475569;
  font-size: 0.74rem;
  line-height: 1.52;
}
.med-context-body strong { color: #14243b; }
.med-context-field {
  display: grid;
  gap: 5px;
  margin-bottom: 9px;
  font-size: 0.7rem;
  font-weight: 700;
  color: #334155;
}
.med-context-field select,
.med-context-person input {
  min-height: 38px;
  border: 1px solid #cfd8e5;
  border-radius: 9px;
  background: #fff;
  color: #14243b;
  padding: 7px 9px;
  font: inherit;
  font-size: 0.75rem;
}
.med-context-field select:focus,
.med-context-person input:focus {
  outline: 2px solid rgba(29, 78, 216, 0.14);
  border-color: #5472a5;
}
.med-context-participants { display: grid; gap: 7px; }
.med-context-person {
  display: grid;
  grid-template-columns: minmax(92px, .8fr) minmax(120px, 1fr) minmax(95px, .7fr) minmax(110px, .9fr) 30px;
  gap: 6px;
  align-items: center;
}
.med-context-remove,
.med-context-add {
  border: 1px solid #d6dde8;
  background: #fff;
  color: #334155;
  border-radius: 9px;
  min-height: 34px;
  font-weight: 700;
}
.med-context-remove { width: 30px; padding: 0; font-size: 1rem; }
.med-context-add { margin: 8px 0 10px; padding: 0 11px; font-size: 0.7rem; }
.med-context-add:disabled { opacity: .45; }
.med-context-pressure {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin: 2px 0 11px;
}
.med-context-pressure label {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 5px;
  align-items: center;
  border: 1px solid #e1e6ee;
  border-radius: 10px;
  padding: 7px 8px;
  background: #fff;
  color: #475569;
  font-size: 0.66rem;
  font-weight: 650;
}
.med-context-pressure input[type="range"] {
  grid-column: 1 / -1;
  width: 100%;
  accent-color: #18365d;
}
.med-context-pressure output { color: #18365d; font-weight: 800; }
.med-context-consent {
  display: grid;
  grid-template-columns: 18px 1fr;
  gap: 8px;
  align-items: start;
  color: #334155;
  font-size: 0.7rem;
  line-height: 1.45;
}
.med-context-consent input {
  width: 16px;
  height: 16px;
  margin: 2px 0 0;
  accent-color: #18365d;
}
.med-context-warning {
  margin: 8px 0 0 !important;
  padding-left: 26px;
  color: #7c5d2a !important;
}
@media (max-width: 820px) {
  .med-context-person { grid-template-columns: 1fr 1fr; }
  .med-context-person .med-context-remove { grid-column: 2; justify-self: end; }
  .med-context-pressure { grid-template-columns: 1fr; }
  .med-context-layer > summary small { display: none; }
  .med-context-body { max-height: 54vh; }
  .med-bubble.bot { max-width: 94%; }
}

/* Topbar EUR + wallet + bell */
button.med-top-balance {
  font: inherit;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}
.med-top-balance {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #f4f5f9;
  box-shadow: var(--frame);
  font-weight: 800;
  font-size: 0.92rem;
  color: var(--purple);
}
.med-top-balance.is-ok { color: #15803d; }
.med-top-balance.is-empty { color: #dc2626; }
.med-bal-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: #c4c7d4;
  box-shadow: 0 0 0 3px rgba(196,199,212,0.35);
}
.med-bal-dot.is-ok {
  background: #22c55e;
  box-shadow: 0 0 0 3px rgba(34,197,94,0.22);
}
.med-bal-dot.is-empty {
  background: #ef4444;
  box-shadow: 0 0 0 3px rgba(239,68,68,0.22);
}
.med-wallet-btn { color: var(--purple); }
.med-bell { position: relative; }
.med-bell .med-bell-dot {
  position: absolute; top: 8px; right: 8px;
  width: 8px; height: 8px; border-radius: 50%;
  background: #ef4444;
  box-shadow: 0 0 0 2px #fff;
  opacity: 0;
  transform: scale(0.6);
  transition: opacity .15s ease, transform .15s ease;
}
.med-bell.is-lit {
  color: var(--purple);
}
.med-bell.is-lit .med-bell-dot {
  opacity: 1;
  transform: scale(1);
  animation: med-bell-pulse 1.4s ease-in-out infinite;
}
@keyframes med-bell-pulse {
  0%, 100% { box-shadow: 0 0 0 2px #fff, 0 0 0 0 rgba(239,68,68,0.45); }
  50% { box-shadow: 0 0 0 2px #fff, 0 0 0 6px rgba(239,68,68,0); }
}
.med-credit-bar { display: none !important; }

.med-btn-cta {
  justify-content: center;
  gap: 10px;
  border-radius: 999px;
  min-height: 56px;
}
.med-btn-arrow {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255,255,255,0.22);
  font-size: 1rem;
  line-height: 1;
}
.med-features-under {
  margin-top: 6px;
  gap: 16px;
}
.med-features-under li { align-items: flex-start; }
.med-home-sheet > .med-link-how {
  margin: 4px 0 8px;
}

/* —— Desktop hero (mockup desk1) —— */
.med-d-only { display: none !important; }

@media (min-width: 821px) {
  .med-m-only { display: none !important; }
  .med-d-only { display: block !important; }
  .med-hero-desk.med-d-only { display: flex !important; }
  .med-trust-bar.med-d-only { display: grid !important; }
  .med-hero-ctas { display: flex !important; }

  .med-landing-hero {
    padding: 0;
    background: #e8ebf2;
    align-items: stretch;
    overflow-x: hidden;
    max-width: 100vw;
  }
  .med-phone-light {
    display: flex;
    flex-direction: column;
    background: #f5f6fa;
    min-height: 100dvh;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    border-radius: 0;
    box-shadow: none;
  }

  .med-hero-block {
    flex: 0 0 auto;
    min-height: clamp(480px, 56dvh, 620px);
    padding: 0 40px 0;
    background: transparent;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 0;
    position: relative;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  /* Temidė — right 55%, width-capped, clipped by hero */
  .med-hero-img {
    top: 0;
    right: 0;
    bottom: 0;
    left: auto;
    width: 55%;
    max-width: 55%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: 70% 18%;
    mix-blend-mode: normal;
    opacity: 0.68;
    filter: invert(1) grayscale(1) contrast(1.14) brightness(1.02);
    z-index: 0;
  }
  .med-hero-shade {
    z-index: 1;
    background:
      linear-gradient(90deg, #f5f6fa 0%, #f5f6fa 36%, rgba(245,246,250,0.75) 48%, rgba(245,246,250,0.2) 60%, transparent 72%),
      linear-gradient(180deg, #f5f6fa 0%, transparent 10%, transparent 72%, rgba(245,246,250,0.65) 90%, #f5f6fa 100%);
  }

  .med-home-top-over {
    position: relative;
    z-index: 3;
    padding: 4px 0 0;
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  .med-nav-3 {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    width: 100%;
    max-width: 100%;
  }
  .med-logo-center { justify-self: center; }

  .med-hero-desk {
    position: relative;
    z-index: 3;
    max-width: min(560px, 48%);
    width: 100%;
    padding: 12px 0 36px;
    margin: 0;
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    flex: 0 0 auto;
    justify-content: flex-start;
    box-sizing: border-box;
  }
  .med-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    border-radius: 999px;
    background: #e8eeff;
    border: 1px solid #d5defe;
    color: #3d5afe;
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.06em;
  }
  .med-hero-desk h1 {
    font-size: clamp(2.1rem, 3.2vw, 2.9rem);
    line-height: 1.12;
    letter-spacing: -0.035em;
    max-width: min(16ch, 100%);
    overflow-wrap: break-word;
  }
  .med-hero-desk .med-lead {
    max-width: 44ch !important;
    font-size: 1.05rem !important;
    line-height: 1.55 !important;
    margin: 0;
  }
  .med-hero-ctas {
    display: flex !important;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 10px;
    position: relative;
    z-index: 3;
  }
  .med-btn-ask {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 52px;
    padding: 0 26px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 0.98rem;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(79, 94, 242, 0.28);
  }
  .med-btn-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 52px;
    padding: 0 22px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #dde1ea;
    color: #2a3144;
    font-weight: 650;
    font-size: 0.95rem;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(30, 35, 60, 0.04);
  }
  .med-btn-ghost:hover { border-color: #c5cad6; }

  .med-trust-bar {
    position: relative;
    z-index: 4;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px 18px;
    margin: 12px 40px 16px;
    width: auto;
    max-width: none;
    box-sizing: border-box;
    padding: 18px 22px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 32px rgba(40, 45, 80, 0.07);
    border: 1px solid rgba(30, 35, 60, 0.05);
    flex: 0 0 auto;
  }
  .med-trust-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
  }
  .med-trust-ico {
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #1A325C;
    background: #eef2f8;
  }
  .med-trust-item b {
    display: block;
    font-size: 0.92rem;
    font-weight: 750;
    color: #1c2233;
    line-height: 1.25;
  }
  .med-trust-item small {
    display: block;
    margin-top: 2px;
    font-size: 0.78rem;
    color: #7a8296;
    line-height: 1.35;
  }

  .med-home-sheet {
    position: relative;
    z-index: 4;
    background: #fff;
    margin: 0 40px 24px;
    padding: 20px 24px;
    border-radius: 18px;
    box-shadow: 0 8px 24px rgba(40, 45, 80, 0.05);
    width: auto;
    max-width: none;
    box-sizing: border-box;
    flex: 0 0 auto;
  }
  .med-home-main.med-home-sheet { gap: 18px; }
  .med-home-foot {
    padding: 0 40px 28px;
    flex: 0 0 auto;
    max-width: 100%;
    box-sizing: border-box;
  }
}

@media (min-width: 821px) and (max-width: 1100px) {
  .med-trust-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .med-hero-block { padding: 0 24px; min-height: clamp(420px, 52dvh, 560px); }
  .med-hero-desk { max-width: min(460px, 58%); padding-top: 8px; }
  .med-hero-desk h1 { max-width: min(15ch, 100%); font-size: clamp(1.85rem, 3.2vw, 2.4rem); }
  .med-hero-ctas { flex-direction: column; align-items: flex-start; }
  .med-trust-bar, .med-home-sheet, .med-home-foot-modern { margin-left: 24px !important; margin-right: 24px !important; max-width: none !important; }
  .med-home-foot { padding-left: 24px; padding-right: 24px; }
  .med-hero-img {
    width: 48%;
    max-width: 48%;
    object-position: 72% 20%;
    opacity: 0.55;
  }
}

/* —— Modern bottom (how + info bar) —— */
.med-balance-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  border-radius: 16px;
  background: linear-gradient(135deg, #eef2f8 0%, #f7f3ec 100%);
  border: 1px solid #e0e5f8;
}
.med-balance-strip-left { min-width: 0; }
.med-balance-strip .med-balance-value {
  font-size: 1.55rem;
  letter-spacing: -0.03em;
}
.med-balance-strip .med-btn-outline {
  background: #fff;
  border-color: #1A325C55;
}

.med-how-modern {
  margin-top: 4px;
  padding: 22px 20px 20px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(30, 35, 60, 0.07);
  box-shadow: 0 10px 28px rgba(40, 45, 80, 0.05);
}
.med-how-modern h2 {
  margin: 0 0 18px;
  text-align: center;
  font-size: 1.15rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--ink);
}
.med-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.med-step {
  display: grid;
  grid-template-columns: 26px 44px 1fr;
  align-items: center;
  gap: 10px;
}
.med-step-sep { display: none; }
.med-step-num {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--grad);
  color: #fff;
  font-size: 0.75rem;
  font-weight: 800;
}
.med-step-ico {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #1A325C;
  background: #fff;
  box-shadow: 0 6px 16px rgba(40, 45, 80, 0.1);
  border: 1px solid #eef0f6;
}
.med-step-txt b {
  display: block;
  font-size: 0.92rem;
  font-weight: 750;
  color: var(--ink);
  line-height: 1.25;
}
.med-step-txt small {
  display: block;
  margin-top: 2px;
  font-size: 0.78rem;
  color: var(--muted);
  line-height: 1.35;
}

.med-info-bar {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin-top: 4px;
  padding: 6px;
  border-radius: 18px;
  background: #1a2340;
  color: #e8ecf7;
  box-shadow: 0 14px 36px rgba(20, 28, 55, 0.22);
}
.med-info-cell {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 14px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.med-info-cell:last-child { border-bottom: 0; }
.med-info-ico {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  color: var(--c, #a78bfa);
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.08);
}
.med-info-cell b {
  display: block;
  font-size: 0.88rem;
  font-weight: 750;
  color: #fff;
  line-height: 1.3;
}
.med-info-hi {
  display: inline-block;
  margin: 2px 0 2px;
  font-size: 0.95rem;
  font-weight: 800;
  color: rgba(26,50,92,.35);
}
.med-info-cell small {
  display: block;
  font-size: 0.76rem;
  color: #9aa6c2;
  line-height: 1.4;
}
.med-info-cell a {
  color: #93c5fd;
  text-decoration: none;
}
.med-info-cell a:hover { text-decoration: underline; }

.med-home-foot-modern {
  border-top: 1px solid rgba(30, 35, 60, 0.08);
  margin-top: 8px;
  padding-top: 18px;
  text-align: center;
}
.med-home-foot-modern p { margin: 0; }
.med-home-foot-modern .med-tagline {
  margin-top: 6px;
  font-size: 0.88rem;
  color: #6b728a;
}

@media (min-width: 821px) {
  .med-home-sheet {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 40px 28px !important;
    max-width: none !important;
    width: auto;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 16px !important;
  }
  .med-balance-strip {
    padding: 16px 22px;
  }
  .med-how-modern {
    padding: 26px 28px 24px;
  }
  .med-how-modern h2 {
    font-size: 1.28rem;
    margin-bottom: 22px;
  }
  .med-steps {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
  }
  .med-step {
    flex: 1 1 0;
    grid-template-columns: 24px 42px 1fr;
    gap: 8px;
    min-width: 0;
  }
  .med-step-sep {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    align-self: center;
    width: 18px;
    color: #c5cad8;
    font-size: 1.25rem;
    font-weight: 300;
    padding-top: 8px;
  }
  .med-info-bar {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 8px 4px;
    gap: 0;
  }
  .med-info-cell {
    border-bottom: 0;
    border-right: 1px solid rgba(255,255,255,0.1);
    padding: 18px 16px;
    min-height: 96px;
  }
  .med-info-cell:last-child { border-right: 0; }
  .med-home-foot-modern {
    margin: 0 40px 28px;
    padding: 20px 0 8px;
    max-width: none;
    box-sizing: border-box;
  }
}

@media (min-width: 821px) and (max-width: 1100px) {
  .med-steps { flex-wrap: wrap; }
  .med-step { flex: 1 1 40%; }
  .med-step-sep { display: none; }
  .med-info-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .med-info-cell:nth-child(2) { border-right: 0; }
  .med-info-cell:nth-child(1),
  .med-info-cell:nth-child(2) {
    border-bottom: 1px solid rgba(255,255,255,0.1);
  }
}

.med-step-ico-wa {
  text-decoration: none;
  background: #ecfdf5 !important;
  border-color: #bbf7d0 !important;
  box-shadow: 0 6px 16px rgba(37, 211, 102, 0.18) !important;
}
.med-step-ico-wa:hover { transform: scale(1.06); }
.med-wa-link {
  color: #16a34a;
  font-weight: 700;
  text-decoration: none;
}
.med-wa-link:hover { text-decoration: underline; }
@media (min-width: 821px) {
  .med-how-modern .med-steps { gap: 4px; }
  .med-how-modern .med-step {
    grid-template-columns: 22px 38px 1fr;
    gap: 6px;
  }
  .med-how-modern .med-step-num { width: 22px; height: 22px; font-size: 0.68rem; }
  .med-how-modern .med-step-ico { width: 38px; height: 38px; }
  .med-how-modern .med-step-txt b { font-size: 0.82rem; }
  .med-how-modern .med-step-txt small { font-size: 0.7rem; }
  .med-how-modern .med-step-sep { width: 12px; font-size: 1.05rem; padding-top: 4px; }
}

/* —— Left slide drawer (shared) —— */
.med-drawer-root {
  position: fixed;
  inset: 0;
  z-index: 80;
  pointer-events: none;
}
.med-drawer-root:not([hidden]) { pointer-events: auto; }
.med-drawer-root[hidden] { display: block !important; visibility: hidden; }
.med-drawer-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(18, 22, 40, 0.45);
  opacity: 0;
  transition: opacity .22s ease;
}
.med-drawer {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: min(320px, 88vw);
  background: #fff;
  box-shadow: 12px 0 40px rgba(20, 25, 50, 0.18);
  display: flex;
  flex-direction: column;
  transform: translateX(-105%);
  transition: transform .26s cubic-bezier(.22,.9,.3,1);
  padding: env(safe-area-inset-top) 0 env(safe-area-inset-bottom);
}
.med-drawer-root:not([hidden]) .med-drawer-backdrop { opacity: 1; }
.med-drawer-root:not([hidden]) .med-drawer { transform: translateX(0); }
body.med-drawer-open { overflow: hidden; }

.med-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 16px 14px 14px 16px;
  border-bottom: 1px solid #eef0f5;
}
.med-drawer-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: inherit;
  min-width: 0;
}
.med-drawer-brand .med-logo-text strong {
  display: block;
  font-size: 0.98rem;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.med-drawer-brand .med-logo-text small {
  display: block;
  font-size: 0.58rem;
  letter-spacing: 0.1em;
  color: var(--muted);
  font-weight: 700;
}
.med-drawer-close {
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 12px;
  background: #f3f4f8;
  color: #2a3144;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}
.med-drawer-close:hover { background: #e8eaf1; }

.med-drawer-nav {
  flex: 1;
  overflow: auto;
  padding: 12px 12px 8px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.med-drawer-link {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 0 12px;
  border-radius: 14px;
  text-decoration: none;
  color: #1c2233;
  font-weight: 650;
  font-size: 0.95rem;
  background: transparent;
  transition: background .15s ease;
}
.med-drawer-link:hover { background: #f4f5f9; }
.med-drawer-link.is-active {
  background: linear-gradient(135deg, #eef2f8, #f7f3ec);
  color: #1A325C;
}
.med-drawer-ico {
  width: 36px;
  height: 36px;
  border-radius: 11px;
  display: grid;
  place-items: center;
  background: #f3f4f8;
  color: #1A325C;
  flex: 0 0 auto;
}
.med-drawer-link.is-active .med-drawer-ico {
  background: #fff;
  box-shadow: 0 4px 12px rgba(79, 94, 242, 0.15);
}
.med-drawer-foot {
  padding: 14px 18px 18px;
  border-top: 1px solid #eef0f5;
  color: #8b92a8;
  font-size: 0.72rem;
  text-align: center;
}
.med-drawer-foot p { margin: 0; }

@media (prefers-reduced-motion: reduce) {
  .med-drawer, .med-drawer-backdrop { transition: none; }
}

.med-panel-top:has(#btnMenu) {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}
.med-panel-top:has(#btnMenu) .med-logo {
  justify-self: start;
  min-width: 0;
}
.med-inbox-page .med-icon-btn span { background: var(--ink); }

.med-drawer-nav {
  flex: 0 0 auto;
  max-height: none;
  overflow: visible;
}

.med-drawer-user {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 4px 12px 10px;
  padding: 12px;
  border-radius: 16px;
  text-decoration: none;
  color: inherit;
  background: #fff;
  border: 1px solid #e8eaf1;
  box-shadow: 0 1px 0 rgba(30, 35, 60, 0.04);
  transition: background .15s ease, border-color .15s ease;
}
.med-drawer-user:hover {
  background: #f4f5f9;
  border-color: #dde1ea;
}
.med-drawer-user-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  background: #1A325C;
  color: #fff;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}
.med-drawer-user-avatar-guest {
  background: #eef2f8;
  color: #1A325C;
}
.med-drawer-user-avatar-guest svg {
  width: 22px;
  height: 22px;
}
.med-drawer-user-meta {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.med-drawer-user-meta strong {
  font-size: 0.92rem;
  font-weight: 750;
  color: #1c2233;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.med-drawer-user-meta small {
  font-size: 0.75rem;
  font-weight: 600;
  color: #8b92a8;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.med-drawer-user.is-guest .med-drawer-user-meta strong {
  color: #1A325C;
}

.med-drawer-recent {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  margin: 4px 12px 0;
  padding: 12px 10px 10px;
  border-radius: 16px;
  background: #f6f7fb;
  border: 1px solid #e8eaf1;
  overflow: hidden;
}
.med-drawer-recent-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
  padding: 0 4px;
}
.med-drawer-recent-head h3 {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #7a8296;
}
.med-drawer-recent-all {
  font-size: 0.75rem;
  font-weight: 700;
  color: #1A325C;
  text-decoration: none;
}
.med-drawer-recent-all:hover { text-decoration: underline; }
.med-drawer-recent-list {
  flex: 1 1 auto;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.med-drawer-recent-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  width: 100%;
  border: 0;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 1px 0 rgba(30, 35, 60, 0.04);
}
.med-drawer-recent-item:hover { background: #eef2f8; }
.med-drawer-recent-title {
  font-size: 0.86rem;
  font-weight: 700;
  color: #1c2233;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.med-drawer-recent-meta {
  font-size: 0.72rem;
  color: #8b92a8;
  font-weight: 600;
}
.med-drawer-recent-empty {
  margin: 8px 4px;
  font-size: 0.8rem;
  color: #8b92a8;
  line-height: 1.45;
}
.med-drawer-recent-empty a {
  color: #1A325C;
  font-weight: 700;
  text-decoration: none;
}

/* —— Auth page —— */
.med-auth-page {
  background: #eef0f5;
}
.med-auth-shell {
  width: min(440px, 100%);
  min-height: 100dvh;
  margin: 0 auto;
  background: #fff;
  display: flex;
  flex-direction: column;
}
.med-auth-main {
  flex: 1 1 auto;
  gap: 16px !important;
  padding: 8px 18px 16px !important;
  overflow: auto;
}
.med-auth-page .med-tabbar-line {
  display: grid;
  flex: 0 0 auto;
  margin-top: auto;
  border-top: 1px solid #e6eaf0;
  background: #fff;
  color: #1A325C;
}
.med-auth-page .med-tabbar-line a {
  color: #6b7687;
}
.med-auth-page .med-tabbar-line a:hover {
  color: #1A325C;
}
.med-auth-card {
  padding: 20px 18px 18px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(30, 35, 60, 0.07);
  box-shadow: 0 10px 28px rgba(40, 45, 80, 0.05);
}
.med-auth-card h1,
.med-auth-card h2 {
  margin: 0 0 4px;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: var(--ink);
}
.med-auth-card h1 { font-size: 1.55rem; }
.med-auth-card h2 { font-size: 1.2rem; }
.med-auth-card > .med-muted {
  margin: 0 0 16px;
  font-size: 0.88rem;
}
.med-auth-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.med-field {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  width: 100%;
  margin: 0;
  font-weight: 650;
  font-size: 0.82rem;
  color: #4b5568;
}
.med-field span em {
  font-style: normal;
  font-weight: 550;
  color: #9aa3b5;
}
.med-field input {
  width: 100%;
  box-sizing: border-box;
  min-height: 48px;
  padding: 0 14px;
  border: 1px solid #dde1ea;
  border-radius: 14px;
  background: #f8f9fc;
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 500;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.med-field input::placeholder { color: #b0b6c6; }
.med-field input:focus {
  background: #fff;
  border-color: #a5b4fc;
  box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.12);
}
.med-btn-block {
  width: 100%;
  justify-content: center;
  min-height: 50px;
  margin-top: 4px;
  border-radius: 999px;
  font-weight: 750;
}
.med-auth-form .med-btn-outline {
  background: #fff;
  border: 1.5px solid #d5d9e5;
  color: #2a3144;
}
.med-auth-form .med-btn-outline:hover {
  border-color: #a5b4fc;
  color: #1A325C;
}
.med-auth-note {
  margin: 4px 0 0;
  text-align: center;
  font-size: 0.75rem;
  color: #8b92a8;
}

@media (min-width: 821px) {
  .med-auth-page {
    min-height: 100dvh;
    display: grid;
    place-items: stretch;
    padding: 10px;
    box-sizing: border-box;
    background: #eef0f5;
  }
  .med-auth-shell {
    width: 100%;
    max-width: none;
    min-height: calc(100dvh - 20px);
    height: calc(100dvh - 20px);
    border-radius: 20px;
    overflow: auto;
    box-shadow: 0 18px 50px rgba(35, 40, 70, 0.1);
    display: flex;
    flex-direction: column;
  }
  .med-auth-shell > .med-home-top {
    padding: 18px 28px 10px;
    flex: 0 0 auto;
  }
  .med-auth-shell .med-nav-3 {
    grid-template-columns: 44px 1fr auto;
    max-width: none;
  }
  .med-auth-shell .med-logo-center {
    justify-self: start;
  }
  .med-auth-main {
    flex: 1 1 auto;
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 20px !important;
    align-content: start;
    padding: 12px 28px 20px !important;
    max-width: none !important;
    width: 100%;
    box-sizing: border-box;
    overflow: auto;
    min-height: 0;
  }
  .med-auth-page .med-tabbar-line {
    display: grid;
    flex: 0 0 auto;
  }
  .med-auth-main > .med-auth-card {
    margin: 0;
    min-height: 0;
  }
  .med-auth-main > .med-auth-note {
    grid-column: 1 / -1;
    margin-top: 4px;
  }
  .med-auth-card {
    padding: 28px 26px 24px;
  }
  .med-auth-card h1 { font-size: 1.85rem; }
  .med-auth-card h2 { font-size: 1.45rem; }
}

.med-avatar-guest {
  font-size: 0 !important;
  letter-spacing: 0;
}
.med-avatar-guest svg {
  display: block;
}

/* —— About / Mediatorius page —— */
.med-about-page .med-app-shell {
  display: flex;
  flex-direction: column;
}
.med-about-main {
  flex: 1 1 auto;
  overflow: auto;
  width: 100%;
  padding: 8px 16px 20px;
  box-sizing: border-box;
}
.med-about-inner {
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.med-about-hero {
  padding: 18px 16px 16px;
  border-radius: 18px;
  background: linear-gradient(145deg, #eef2f8 0%, #f7f3ec 55%, #fff 100%);
  border: 1px solid #e4e8f6;
}
.med-about-badge {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: #fff;
  color: #1A325C;
  box-shadow: 0 6px 16px rgba(79, 94, 242, 0.12);
  margin-bottom: 10px;
}
.med-about-hero h1 {
  margin: 0 0 8px;
  font-size: 1.55rem;
  font-weight: 800;
  letter-spacing: -0.03em;
}
.med-about-hero p {
  margin: 0;
  color: var(--muted);
  font-size: 0.95rem;
  line-height: 1.5;
  max-width: 46ch;
}
.med-about-card {
  padding: 16px 16px 14px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(30, 35, 60, 0.07);
  box-shadow: 0 8px 22px rgba(40, 45, 80, 0.04);
}
.med-about-card h2 {
  margin: 0 0 8px;
  font-size: 1.05rem;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.med-about-card p {
  margin: 0 0 10px;
  color: #4b5568;
  font-size: 0.9rem;
  line-height: 1.55;
}
.med-about-card p:last-child { margin-bottom: 0; }
.med-about-tags {
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.med-about-tags li {
  padding: 7px 12px;
  border-radius: 999px;
  background: #eef2f8;
  color: #4338ca;
  font-size: 0.78rem;
  font-weight: 700;
}
.med-about-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  counter-reset: about;
}
.med-about-list li {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
  align-items: start;
  counter-increment: about;
}
.med-about-list li::before {
  content: counter(about);
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--grad);
  color: #fff;
  font-size: 0.75rem;
  font-weight: 800;
}
.med-about-list b {
  display: block;
  font-size: 0.92rem;
  color: var(--ink);
  margin-bottom: 2px;
}
.med-about-list span {
  display: block;
  font-size: 0.84rem;
  color: var(--muted);
  line-height: 1.4;
}
.med-about-bullets {
  margin: 0 0 12px;
  padding-left: 1.15rem;
  color: #4b5568;
  font-size: 0.9rem;
  line-height: 1.55;
}
.med-about-bullets li { margin-bottom: 6px; }
.med-about-note {
  margin: 0 !important;
  padding: 10px 12px;
  border-radius: 12px;
  background: #f6f7fb;
  font-size: 0.8rem !important;
  color: #6b728a !important;
}
.med-about-cta {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-bottom: 8px;
}
.med-about-cta .med-btn-outline {
  border-radius: 999px;
}

@media (min-width: 821px) {
  .med-about-main {
    padding: 20px 40px 28px;
  }
  .med-about-inner {
    max-width: none;
    width: 100%;
  }
  .med-about-hero h1 { font-size: 1.85rem; }
}

.med-wa-top {
  color: #25D366 !important;
  text-decoration: none;
}
.med-wa-top:hover { background: #ecfdf5; border-radius: 12px; }
.med-auth-page .med-panel-tools,
.med-auth-shell .med-panel-tools {
  justify-self: end;
}
.med-auth-shell .med-nav-3 {
  align-items: center;
}
.med-auth-shell .med-panel-tools .med-top-balance {
  display: inline-flex;
}
@media (max-width: 479px) {
  .med-auth-shell .med-panel-tools .med-top-balance { display: none; }
}

/* —— Mobile compact topbar —— */
@media (max-width: 820px) {
  .med-panel-top,
  .med-panel-top:has(#btnMenu) {
    padding: 8px 8px 6px;
    gap: 4px;
    grid-template-columns: 32px minmax(0, 1fr) auto;
  }
  .med-panel-top .med-icon-btn {
    width: 32px;
    height: 32px;
    border-radius: 10px;
  }
  .med-panel-top .med-logo {
    gap: 6px;
    min-width: 0;
  }
  .med-panel-top .med-logo-mark svg {
    width: 28px;
    height: 28px;
  }
  .med-panel-top .med-logo-text strong {
    font-size: 0.88rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .med-panel-top .med-logo-text small {
    display: none;
  }
  .med-panel-tools {
    gap: 1px;
    flex: 0 0 auto;
  }
  .med-panel-tools .med-icon-soft {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    padding: 0;
  }
  .med-panel-tools .med-icon-soft svg {
    width: 16px;
    height: 16px;
  }
  .med-panel-tools .med-top-balance {
    gap: 4px;
    padding: 3px 7px;
    font-size: 0.72rem;
    font-weight: 800;
  }
  .med-panel-tools .med-bal-dot {
    width: 6px;
    height: 6px;
    box-shadow: 0 0 0 2px rgba(196,199,212,0.35);
  }
  .med-panel-tools .med-bal-dot.is-ok {
    box-shadow: 0 0 0 2px rgba(34,197,94,0.22);
  }
  .med-panel-tools .med-bal-dot.is-empty {
    box-shadow: 0 0 0 2px rgba(239,68,68,0.22);
  }
  .med-panel-tools .med-avatar-nav {
    width: 28px;
    height: 28px;
  }
  .med-panel-tools .med-avatar-nav svg {
    width: 14px;
    height: 14px;
  }
  .med-panel-tools .med-bell .med-bell-dot {
    top: 4px;
    right: 4px;
    width: 6px;
    height: 6px;
  }
  .med-about-main {
    padding: 6px 10px 16px;
  }
  .med-about-inner {
    max-width: none;
    gap: 10px;
  }
  .med-about-card,
  .med-about-hero {
    padding: 14px 12px 12px;
  }
}

@media (max-width: 400px) {
  .med-panel-top .med-logo-text {
    display: none;
  }
  .med-panel-tools .med-top-balance b {
    font-size: 0.68rem;
  }
  .med-panel-tools {
    gap: 0;
  }
}

/* Landing top: tik Prisijungti (guest) arba user avatar — be archyvo / WA / varpelio */
.med-home-tools {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  justify-self: end;
  flex-wrap: nowrap;
}
.med-home-tools-clean {
  gap: 0;
}
.med-home-tools .med-login-pill {
  margin-left: 2px;
  white-space: nowrap;
}
.med-landing-hero .med-home-tools .med-icon-soft,
.med-landing-hero .med-home-tools .med-bylos-btn,
.med-landing-hero .med-home-tools .med-top-balance,
.med-landing-hero .med-home-tools .med-wallet-btn,
.med-landing-hero .med-home-tools .med-bell,
.med-landing-hero .med-home-tools .med-wa-top {
  display: none !important;
}
.med-landing-hero .med-home-tools .med-login-pill {
  min-height: 34px;
  padding: 0 14px;
  font-size: 0.78rem;
}
.med-landing-hero .med-home-tools #btnHomeAuth.med-avatar-nav {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-decoration: none;
}
@media (min-width: 821px) {
  .med-landing-hero .med-nav-3 {
    grid-template-columns: 44px 1fr auto;
  }
  .med-landing-hero .med-home-tools .med-login-pill {
    min-height: 38px;
    padding: 0 16px;
    font-size: 0.82rem;
  }
}

.med-msg-row.system {
  display: flex;
  justify-content: center;
  padding: 4px 8px;
}
.med-bubble.system.med-sys-info {
  max-width: min(92%, 420px);
  background: #f3f5fb;
  border: 1px solid #e2e6f0;
  color: #4b5568;
  font-size: 0.84rem;
  line-height: 1.45;
  text-align: left;
  box-shadow: none;
}
.med-bubble.system.med-sys-info .meta {
  margin-bottom: 6px;
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #8b92a8;
}
.med-bubble.system.med-sys-info p {
  margin: 0 0 8px;
}
.med-bubble.system.med-sys-info p:last-child { margin-bottom: 0; }
.med-bubble.system.med-sys-info a {
  color: #1A325C;
  font-weight: 700;
  text-decoration: none;
}
.med-bubble.system.med-sys-info a:hover { text-decoration: underline; }
.med-bubble.system.med-sys-info b { color: #2a3144; font-weight: 750; }


.med-atst-price {
  margin: 0 0 14px;
  padding: 10px 12px;
  border-radius: 12px;
  background: linear-gradient(135deg, #eef2f8, #f7f3ec);
  border: 1px solid #e4e8f6;
  color: #1A325C;
  font-size: 0.9rem;
  font-weight: 650;
}
.med-atst-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.med-atst-row {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 14px;
  padding-right: 4.75rem;
  border-radius: 14px;
  background: #f7f8fc;
  border: 1px solid #e8eaf1;
  position: relative;
}
.med-atst-tariff {
  position: absolute;
  top: 10px;
  right: 10px;
  display: grid;
  justify-items: end;
  gap: 1px;
  padding: 5px 9px;
  border-radius: 10px;
  background: #1A325C;
  color: #fff;
  line-height: 1.15;
  box-shadow: 0 2px 8px rgba(26, 50, 92, 0.18);
  z-index: 1;
}
.med-atst-tariff b {
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.01em;
}
.med-atst-tariff small {
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.62rem;
  font-weight: 650;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.med-atst-row.is-review .med-atst-tariff {
  background: #0f766e;
}
.med-atst-row .med-atst-tariff.is-lawyer,
.med-atst-row[data-mode="lawyer"] .med-atst-tariff {
  background: #7c3aed;
}
.med-atst-row strong {
  font-size: 0.92rem;
  color: #1c2233;
}
.med-atst-row small {
  color: #8b92a8;
  font-size: 0.75rem;
  font-weight: 600;
}
.med-atst-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  align-self: flex-start;
  margin-top: 4px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 750;
}
.med-atst-badge.is-pending {
  background: #fff7e8;
  color: #9a6700;
  border: 1px solid #f0e0b8;
}
.med-atst-badge.is-sent {
  background: #eefaf3;
  color: #26754a;
  border: 1px solid #dceee4;
}
.med-atst-badge.is-failed {
  background: #fef2f2;
  color: #b91c1c;
  border: 1px solid #fecaca;
}

/* —— Account / profile / wallet —— */
.med-account-main {
  flex: 1 1 auto;
  overflow: auto;
  padding: 10px 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
  max-width: none;
  margin: 0;
  box-sizing: border-box;
}
.med-account-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
.med-account-tile {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 20px 18px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(30,35,60,0.07);
  box-shadow: 0 8px 22px rgba(40,45,80,0.05);
  text-decoration: none;
  color: inherit;
}
.med-account-tile:hover { border-color: #c7d2fe; }
.med-account-ico {
  width: 48px; height: 48px; border-radius: 14px;
  display: grid; place-items: center;
  background: #eef2f8; color: #1A325C; margin-bottom: 4px;
}
.med-account-tile strong { font-size: 1.1rem; font-weight: 800; }
.med-account-tile small { color: var(--muted); font-size: 0.86rem; line-height: 1.4; }
.med-check {
  display: flex; align-items: center; gap: 10px;
  font-size: 0.9rem; font-weight: 600; color: #374151;
}
.med-check input { width: 18px; height: 18px; }
.med-account-links {
  display: flex; justify-content: space-between; align-items: center; gap: 12px;
  padding: 4px 2px 8px;
}
.med-account-links a, .med-link-btn {
  color: #1A325C; font-weight: 700; text-decoration: none;
  border: 0; background: transparent; cursor: pointer; font: inherit;
}
.med-wallet-hero {
  padding: 22px 18px;
  border-radius: 18px;
  background: linear-gradient(145deg, #eef2f8, #f7f3ec);
  border: 1px solid #e4e8f6;
  display: flex; flex-direction: column; gap: 8px; align-items: flex-start;
}
.med-wallet-big {
  font-size: 2.2rem; font-weight: 800; letter-spacing: -0.03em; color: #1A325C;
}
.med-wallet-hero .med-btn-grad { margin-top: 8px; max-width: 280px; }
.med-wallet-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  max-width: 280px;
  margin-top: 8px;
}
.med-wallet-actions .med-btn-grad,
.med-wallet-actions .med-btn-outline {
  margin-top: 0;
  max-width: none;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
}
.med-tx-list { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; }
.med-tx-row {
  display: flex; justify-content: space-between; gap: 12px; align-items: center;
  padding: 12px; border-radius: 12px; background: #f7f8fc;
}
.med-tx-row b { display: block; font-size: 0.9rem; }
.med-tx-row small { color: var(--muted); font-size: 0.72rem; }
.med-tx-row .is-plus { color: #15803d; }
.med-tx-row .is-minus { color: #b91c1c; }
@media (min-width: 821px) {
  .med-account-grid { grid-template-columns: 1fr 1fr; }
  .med-account-main { padding: 20px 40px 28px; width: 100%; max-width: none; }
}


/* —— Mediatorius landing · law precision polish v1 —— */
.med-landing-hero {
  --law-navy: #1A325C;
  --law-navy-2: #203f66;
  --law-blue: #315f91;
  --law-gold: #B39464;
  --law-gold-soft: #e9ddc7;
  --law-ivory: #f7f4ee;
  --law-paper: #fbfaf7;
  --law-line: #dfe4eb;
  background: #e8edf3;
}
html:has(body.med-landing-hero),
body.med-landing-hero {
  overflow-x: hidden;
  max-width: 100vw;
}
.med-landing-hero .med-phone-light {
  background: var(--law-paper);
  overflow: hidden;
  border-radius: 0;
  box-shadow: none;
  width: 100%;
  max-width: 100%;
}
.med-landing-hero.med-landing,
.med-landing.med-landing-hero {
  padding: 0;
  place-items: stretch;
  background: var(--law-paper);
  overflow-x: hidden;
  max-width: 100vw;
}
.med-landing-hero .med-phone {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  border-radius: 0;
  box-shadow: none;
  min-height: 100dvh;
}
.med-landing-hero .med-hero-block {
  background:
    radial-gradient(circle at 75% 22%, rgba(229, 221, 205, 0.62), transparent 32%),
    linear-gradient(135deg, #fbfaf7 0%, #f4f1eb 48%, #edf1f5 100%);
}
.med-landing-hero .med-hero-picture { display: contents; }
.med-landing-hero .med-hero-img {
  opacity: 0.52;
  filter: invert(1) grayscale(1) contrast(1.08) brightness(0.98);
}
.med-landing-hero .med-hero-shade {
  background:
    linear-gradient(90deg, #fbfaf7 0%, rgba(251,250,247,0.94) 31%, rgba(251,250,247,0.55) 50%, transparent 73%),
    linear-gradient(180deg, rgba(251,250,247,0.25) 0%, transparent 24%, transparent 76%, #fbfaf7 100%);
}
.med-landing-hero .med-logo-text strong,
.med-landing-hero .med-hero-copy h1,
.med-landing-hero .med-output-head h2,
.med-landing-hero .med-how-modern h2 {
  color: var(--law-navy);
}
.med-landing-hero .med-hero-copy h1,
.med-landing-hero .med-output-head h2,
.med-landing-hero .med-how-modern h2 {
  font-family: "Libre Baskerville", Georgia, serif;
  letter-spacing: -0.035em;
}
.med-landing-hero .med-grad-text {
  background: linear-gradient(110deg, var(--law-navy-2), var(--law-blue) 58%, var(--law-gold));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}
.med-landing-hero .med-logo-text small {
  color: #657184;
  letter-spacing: 0.13em;
}
.med-landing-hero .med-hero-badge {
  background: rgba(255, 250, 240, 0.92);
  border-color: #d8c59f;
  color: #765a2d;
}
.med-landing-hero .med-btn-grad,
.med-landing-hero .med-login-pill {
  background: linear-gradient(135deg, var(--law-navy) 0%, var(--law-blue) 100%);
  box-shadow: 0 12px 28px rgba(18, 36, 63, 0.22);
}
.med-landing-hero .med-btn-grad:hover,
.med-landing-hero .med-login-pill:hover {
  filter: brightness(1.04);
  transform: translateY(-1px);
}
.med-landing-hero .med-btn-ghost {
  border-color: #d6dde7;
  color: var(--law-navy);
  background: rgba(255,255,255,0.82);
}
.med-landing-hero .med-btn-ghost:hover {
  border-color: #b8c3d1;
  background: #fff;
}
.med-landing-hero .med-top-balance,
.med-landing-hero .med-icon-soft {
  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(18,36,63,0.08);
}
.med-landing-hero .med-wa-top,
.med-landing-hero .med-bell {
  display: none !important;
}
.med-hero-note {
  margin: -2px 0 0;
  color: #657184;
  font-size: 0.73rem;
  line-height: 1.45;
}
.med-landing-hero .med-trust-bar {
  border-color: rgba(173,134,72,0.18);
  box-shadow: 0 12px 34px rgba(18,36,63,0.07);
}
.med-landing-hero .med-trust-ico {
  color: var(--law-navy-2);
  background: #eef2f6;
  border: 1px solid #dfe6ee;
}
.med-landing-hero .med-trust-item b { color: var(--law-navy); }
.med-landing-hero .med-home-sheet {
  background: transparent;
  border: 0;
}
/* Vienas turinio bėgis: hero + trust + sheet + foot */
@media (min-width: 821px) {
  .med-landing-hero {
    --med-rail: 40px;
  }
  .med-landing-hero .med-hero-block {
    padding-left: var(--med-rail);
    padding-right: var(--med-rail);
  }
  .med-landing-hero .med-trust-bar,
  .med-landing-hero .med-home-sheet,
  .med-landing-hero .med-home-foot,
  .med-landing-hero .med-home-foot-modern {
    margin-left: var(--med-rail) !important;
    margin-right: var(--med-rail) !important;
    max-width: none !important;
    width: auto;
    box-sizing: border-box;
  }
  .med-landing-hero .med-output-panel,
  .med-landing-hero .med-how-modern,
  .med-landing-hero .med-balance-strip {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
  }
}
@media (min-width: 821px) and (max-width: 1100px) {
  .med-landing-hero { --med-rail: 24px; }
}
.med-landing-hero .med-balance-strip {
  background: linear-gradient(135deg, #edf2f7 0%, #f7f1e6 100%);
  border-color: #dce3ea;
}
.med-landing-hero .med-balance-strip .med-btn-outline {
  color: var(--law-navy);
  border-color: #b9c5d3;
}

.med-output-panel {
  padding: 24px 20px 20px;
  border-radius: 18px;
  background: linear-gradient(145deg, #f9fafb 0%, #f5f1e8 100%);
  border: 1px solid rgba(18,36,63,0.08);
  box-shadow: 0 12px 30px rgba(18,36,63,0.055);
}
.med-output-head {
  max-width: 680px;
  margin: 0 auto 18px;
  text-align: center;
}
.med-output-kicker {
  display: inline-block;
  margin-bottom: 8px;
  color: #83642f;
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}
.med-output-head h2 {
  margin: 0;
  font-size: 1.22rem;
  line-height: 1.25;
}
.med-output-head p {
  margin: 8px auto 0;
  max-width: 58ch;
  color: #667184;
  font-size: 0.82rem;
  line-height: 1.5;
}
.med-output-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}
.med-output-grid article {
  position: relative;
  min-height: 116px;
  padding: 16px 15px 14px;
  border: 1px solid #e2e6eb;
  border-radius: 13px;
  background: rgba(255,255,255,0.86);
}
.med-output-grid article > span {
  display: block;
  margin-bottom: 14px;
  color: #a07a3e;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 0.72rem;
  font-weight: 700;
}
.med-output-grid article > b {
  display: block;
  color: var(--law-navy);
  font-size: 0.84rem;
  line-height: 1.25;
}
.med-output-grid article > small {
  display: block;
  margin-top: 6px;
  color: #697487;
  font-size: 0.73rem;
  line-height: 1.42;
}
.med-landing-hero .med-how-modern {
  border-color: rgba(18,36,63,0.07);
  box-shadow: 0 10px 28px rgba(18,36,63,0.045);
}
.med-landing-hero .med-step-num {
  background: linear-gradient(135deg, var(--law-navy), var(--law-blue));
}
.med-landing-hero .med-step-ico {
  color: var(--law-navy-2);
  background: #f8fafc;
}
.med-boundary-note {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 12px;
  align-items: start;
  padding: 16px 18px;
  border-left: 3px solid var(--law-gold);
  border-radius: 10px 16px 16px 10px;
  background: #fbf7ef;
  color: #344157;
}
.med-boundary-mark {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid #dac69f;
  border-radius: 50%;
  color: #805f29;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 1rem;
}
.med-boundary-note b {
  display: block;
  color: var(--law-navy);
  font-size: 0.88rem;
}
.med-boundary-note p {
  margin: 5px 0 0;
  color: #667184;
  font-size: 0.76rem;
  line-height: 1.52;
}
.med-landing-hero .med-info-bar {
  background: linear-gradient(135deg, #10213b 0%, #1d395d 100%);
  box-shadow: 0 16px 38px rgba(16,33,59,0.24);
}
.med-landing-hero .med-info-hi { color: #e4c994; }
.med-landing-hero .med-home-foot-modern {
  color: #6e7889;
}
.med-landing-hero .med-home-foot-modern .med-tagline {
  color: var(--law-navy);
}
.med-landing-hero a:focus-visible,
.med-landing-hero button:focus-visible {
  outline: 3px solid rgba(173,134,72,0.45);
  outline-offset: 3px;
}

@media (min-width: 821px) {
  .med-landing-hero .med-hero-block {
    min-height: clamp(540px, 64dvh, 700px);
  }
  .med-landing-hero .med-hero-img {
    top: 0;
    right: 0;
    bottom: 0;
    left: auto;
    width: 55%;
    max-width: 55%;
    height: 100%;
    min-height: 0;
    opacity: 0.6;
    object-position: 68% 16%;
  }
  .med-landing-hero .med-hero-shade {
    background:
      linear-gradient(90deg, #fbfaf7 0%, #fbfaf7 34%, rgba(251,250,247,0.85) 46%, rgba(251,250,247,0.22) 58%, transparent 70%),
      linear-gradient(180deg, #fbfaf7 0%, transparent 10%, transparent 74%, rgba(251,250,247,0.7) 90%, #fbfaf7 100%);
  }
  .med-landing-hero .med-hero-desk {
    max-width: min(580px, 50%);
    padding-top: 10px;
  }
  .med-landing-hero .med-hero-desk h1 {
    max-width: min(18ch, 100%);
    font-size: clamp(2.2rem, 3.4vw, 3.1rem);
    line-height: 1.14;
    overflow-wrap: break-word;
  }
  .med-output-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .med-output-grid article {
    min-height: 150px;
  }
}

@media (max-width: 820px) {
  .med-landing-hero .med-hero-block { min-height: 46dvh; }
  .med-landing-hero .med-hero-copy { max-width: 86%; }
  .med-landing-hero .med-hero-copy h1 {
    font-size: clamp(1.75rem, 8vw, 2.28rem);
    line-height: 1.18;
  }
  .med-landing-hero .med-home-sheet { padding-top: 12px; }
  .med-output-panel { padding: 20px 14px 14px; }
  .med-output-grid { grid-template-columns: 1fr 1fr; }
  .med-output-grid article:last-child { grid-column: 1 / -1; }
  .med-boundary-note { grid-template-columns: 32px 1fr; padding: 14px; }
  .med-boundary-mark { width: 30px; height: 30px; }
}

@media (max-width: 430px) {
  .med-output-grid { grid-template-columns: 1fr; }
  .med-output-grid article:last-child { grid-column: auto; }
  .med-landing-hero .med-hero-img {
    right: -16%;
    opacity: 0.42;
  }
}


/* —— Mediatorius about · text and business polish v1 —— */
.med-about-page {
  --about-navy: #1A325C;
  --about-navy-2: #244d7a;
  --about-gold: #B39464;
  --about-paper: #f8f7f3;
  --about-line: #dde3eb;
}
.med-about-page .med-about-main {
  background: linear-gradient(180deg, #f5f7fa 0%, #f7f6f2 100%);
}
.med-about-page .med-about-inner {
  max-width: none;
  width: 100%;
}
.med-about-page .med-about-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 12%, rgba(173,134,72,0.16), transparent 30%),
    linear-gradient(145deg, #f8fafc 0%, #edf2f7 58%, #f7f2e8 100%);
  border-color: rgba(23,54,95,0.10);
  box-shadow: 0 12px 30px rgba(23,54,95,0.06);
}
.med-about-page .med-about-badge {
  color: var(--about-navy);
  box-shadow: 0 6px 18px rgba(23,54,95,0.10);
}
.med-about-kicker {
  display: block;
  margin: 0 0 5px;
  color: #8b6a34;
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}
.med-about-page .med-about-hero h1,
.med-about-page .med-about-card h2 {
  color: var(--about-navy);
}
.med-about-page .med-about-card {
  border-color: rgba(23,54,95,0.08);
  box-shadow: 0 8px 24px rgba(23,54,95,0.045);
}
.med-about-page .med-about-tags li {
  background: #edf2f7;
  color: #214a77;
  border: 1px solid #dfe6ee;
}
.med-about-page .med-about-list li {
  grid-template-columns: 30px minmax(0, 1fr);
  column-gap: 11px;
  row-gap: 2px;
}
.med-about-page .med-about-list li::before {
  grid-column: 1;
  grid-row: 1 / span 2;
  background: linear-gradient(135deg, var(--about-navy), var(--about-navy-2));
}
.med-about-page .med-about-list b,
.med-about-page .med-about-list span {
  grid-column: 2;
  min-width: 0;
}
.med-about-page .med-about-list b {
  margin: 1px 0 1px;
}
.med-about-page .med-about-note {
  border-left: 3px solid var(--about-gold);
  background: #faf6ee;
  color: #645a4d !important;
}

.med-business-card {
  position: relative;
  overflow: hidden;
  padding: 20px 18px 18px;
  color: #fff;
  background:
    radial-gradient(circle at 92% 4%, rgba(218,190,139,0.24), transparent 28%),
    linear-gradient(145deg, #10243f 0%, #1d3d65 100%) !important;
  border-color: rgba(255,255,255,0.08) !important;
  box-shadow: 0 18px 42px rgba(16,36,63,0.22) !important;
}
.med-business-card h2 {
  color: #fff !important;
  margin-bottom: 9px;
  font-size: 1.18rem;
}
.med-business-card > p {
  color: #d9e2ee !important;
  max-width: 62ch;
}
.med-business-eyebrow {
  display: inline-block;
  margin-bottom: 8px;
  color: #e6c98f;
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}
.med-business-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 15px 0 12px;
}
.med-business-grid article {
  padding: 12px 13px;
  border: 1px solid rgba(255,255,255,0.11);
  border-radius: 12px;
  background: rgba(255,255,255,0.055);
}
.med-business-grid b {
  display: block;
  color: #fff;
  font-size: 0.84rem;
  line-height: 1.3;
}
.med-business-grid span {
  display: block;
  margin-top: 5px;
  color: #cbd7e5;
  font-size: 0.76rem;
  line-height: 1.45;
}
.med-business-boundary {
  margin: 0 0 14px;
  padding: 12px 13px;
  border-left: 3px solid #d7b879;
  border-radius: 10px;
  background: rgba(255,255,255,0.075);
}
.med-business-boundary b {
  display: block;
  color: #f1d9a9;
  font-size: 0.78rem;
}
.med-business-boundary p {
  margin: 5px 0 0 !important;
  color: #d8e1ec !important;
  font-size: 0.75rem !important;
  line-height: 1.5 !important;
}
.med-btn-business {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px 16px;
  border-radius: 999px;
  color: #132a48;
  background: linear-gradient(135deg, #f6e8c9 0%, #d8b677 100%);
  box-shadow: 0 10px 24px rgba(0,0,0,0.18);
  text-decoration: none;
  text-align: center;
  font-size: 0.86rem;
  font-weight: 800;
}
.med-btn-business:hover {
  filter: brightness(1.04);
  transform: translateY(-1px);
}
.med-about-page a:focus-visible,
.med-about-page button:focus-visible {
  outline: 3px solid rgba(173,134,72,0.45);
  outline-offset: 3px;
}

@media (min-width: 821px) {
  .med-about-page {
    padding: 0;
    place-items: stretch;
    min-height: 100dvh;
    overflow: hidden;
    background: #fff;
  }
  .med-about-page .med-shell-card,
  .med-about-page .med-app-shell {
    max-width: none !important;
    width: 100%;
    height: 100dvh;
    min-height: 100dvh;
    border-radius: 0;
    border: 0;
    box-shadow: none;
  }
  .med-about-page .med-about-main {
    padding: 20px 40px 28px;
  }
  .med-about-page .med-about-inner {
    max-width: none;
    width: 100%;
  }
  .med-about-page .med-about-hero p { max-width: 62ch; }
  .med-business-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .med-business-grid article:last-child { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
  .med-about-page .med-about-hero { padding-top: 15px; }
  .med-about-page .med-about-list span {
    font-size: 0.82rem;
    line-height: 1.45;
  }
  .med-business-card { padding: 18px 14px 15px !important; }
}


/* —— Account / Bylos · full-bleed desktop —— */
@media (min-width: 821px) {
  .med-account-page,
  .med-bylos-page {
    padding: 0;
    place-items: stretch;
    min-height: 100dvh;
    overflow: hidden;
    background: #fff;
  }
  .med-account-page .med-shell-card,
  .med-account-page .med-app-shell,
  .med-bylos-page .med-shell-card,
  .med-bylos-page .med-app-shell {
    max-width: none !important;
    width: 100%;
    height: 100dvh;
    min-height: 100dvh;
    border-radius: 0;
    border: 0;
    box-shadow: none;
  }
  .med-account-page .med-account-main,
  .med-bylos-page .med-account-main {
    padding: 20px 40px 28px;
    width: 100%;
    max-width: none;
  }
}

/* —— Mediatorius inbox · law workspace polish v2 —— */
.med-inbox-page {
  --chat-navy: #1A325C;
  --chat-navy-2: #234d78;
  --chat-gold: #B39464;
  --chat-gold-soft: #f5ecdc;
  --chat-paper: #fbfaf7;
  --chat-soft: #f3f6f9;
  --chat-line: #dfe5ec;
  --chat-muted: #6b7687;
  background:
    radial-gradient(circle at 84% 0%, rgba(173,134,72,0.10), transparent 28%),
    #edf1f5;
  color: #17243a;
}
.med-inbox-page .med-shell-card {
  max-width: none;
  width: 100%;
  min-height: min(920px, calc(100dvh - 24px));
  border: 1px solid rgba(20,43,73,0.08);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(20,43,73,0.12);
}
.med-inbox-page .med-panel-top,
.med-inbox-page .med-panel-top-inbox {
  min-height: 68px;
  padding: 12px 18px 8px;
  border-bottom: 0;
  background: rgba(255,255,255,0.96);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}
.med-inbox-page .med-panel-left {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  justify-self: start;
}
.med-inbox-page .med-panel-center {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  justify-self: center;
}
.med-inbox-page .med-panel-tools {
  justify-self: end;
}
.med-inbox-page .med-panel-center .med-inbox-new,
.med-inbox-page .med-panel-center .med-inbox-archive {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  color: #1A325C;
  background: #f3f6f9;
  border: 1px solid #e4e9ef;
}
.med-inbox-page .med-panel-center .med-inbox-new:hover,
.med-inbox-page .med-panel-center .med-inbox-archive:hover {
  background: #e8eef6;
}
.med-inbox-page .med-panel-center .med-inbox-archive.is-on {
  background: #1A325C;
  border-color: #1A325C;
  color: #fff;
}
.med-inbox-page .med-icon-dark {
  width: 38px;
  height: 38px;
  border-radius: 11px;
  color: var(--chat-navy);
}
.med-inbox-page .med-icon-dark:hover { background: #f1f4f7; }
.med-inbox-page .med-logo-mark svg { width: 31px; height: 31px; }
.med-inbox-page .med-logo-text strong {
  color: var(--chat-navy);
  font-size: 0.94rem;
  letter-spacing: -0.02em;
}
.med-inbox-page .med-logo-text small {
  color: #7a8494;
  font-size: 0.52rem;
  letter-spacing: 0.13em;
}
.med-inbox-page .med-panel-tools { gap: 6px; }
.med-inbox-page .med-inbox-new,
.med-inbox-page .med-inbox-archive {
  display: grid;
  place-items: center;
  color: #657184;
}
.med-inbox-page button.med-top-balance {
  cursor: pointer;
  border: 1px solid #e4e8ee;
  background: #f8fafc;
}
.med-inbox-page button.med-top-balance:hover {
  border-color: #c5d0dc;
}

.med-inbox-page .med-top-balance {
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid #e4e8ee;
  border-radius: 999px;
  background: #f8fafc;
  color: var(--chat-navy);
  box-shadow: none;
}
.med-inbox-page .med-icon-soft {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: #657184;
}
.med-inbox-page .med-icon-soft:hover { background: #f1f4f7; color: var(--chat-navy); }
.med-inbox-page .med-avatar-nav {
  width: 34px;
  height: 34px;
  background: linear-gradient(145deg, var(--chat-navy), var(--chat-navy-2));
  box-shadow: 0 7px 16px rgba(20,43,73,0.20);
}

.med-inbox-page .med-pills,
.med-inbox-page .med-pills-desk {
  display: none !important;
}
.med-inbox-page .med-pills button {
  min-height: 38px;
  padding: 8px 12px;
  border-radius: 10px;
  color: #6c7788;
  font-size: 0.8rem;
  font-weight: 700;
}
.med-inbox-page .med-pills button.active {
  color: #fff;
  background: linear-gradient(135deg, var(--chat-navy), var(--chat-navy-2));
  box-shadow: 0 8px 18px rgba(20,43,73,0.18);
}

.med-inbox-page .med-inbox-split {
  gap: 10px;
  padding: 0 12px 8px;
  background: #fff;
}
.med-inbox-page .med-sidebar {
  border: 1px solid var(--chat-line);
  border-radius: 18px;
  background: #f8fafc;
  overflow: hidden;
}
.med-inbox-page .med-sidebar-head {
  min-height: 58px;
  padding: 12px 13px;
  border-color: var(--chat-line);
}
.med-inbox-page .med-sidebar-head h2 { color: var(--chat-navy); }
.med-inbox-page .med-new-chip {
  background: linear-gradient(135deg, var(--chat-navy), var(--chat-navy-2));
  box-shadow: none;
}
.med-inbox-page .med-thread-item {
  border-radius: 12px;
  color: #233249;
}
.med-inbox-page .med-thread-item:hover { background: #eef2f6; }
.med-inbox-page .med-thread-item.active {
  border-color: #cfd9e5;
  background: #eaf0f6;
}
.med-inbox-page .med-badge-pending { color: #8a692f; }

.med-inbox-page .med-inbox-split .med-thread-panel.med-card-frame {
  margin: 0;
  border: 1px solid var(--chat-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(20,43,73,0.065);
}

.med-protocol-id {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(100px, 150px) minmax(118px, 148px);
  gap: 8px;
  padding: 8px 15px 10px;
  border-bottom: 1px solid var(--chat-line, #e5e9ef);
  background: #fafbfd;
}
.med-protocol-id label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  margin: 0;
}
.med-protocol-id label > span {
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #8b92a8;
}
.med-protocol-id label > span em {
  color: #b91c1c;
  font-style: normal;
  font-weight: 900;
}
.med-protocol-id input {
  width: 100%;
  min-height: 38px;
  border: 1px solid #e0e4ec;
  border-radius: 11px;
  background: #fff;
  padding: 0 11px;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 650;
  color: #1c2233;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.med-protocol-id input::placeholder {
  color: #a3aab8;
  font-weight: 500;
}
.med-protocol-id input:focus {
  border-color: #1A325C;
  box-shadow: 0 0 0 3px rgba(26, 50, 92, 0.12);
}
.med-protocol-id input:invalid:not(:placeholder-shown),
.med-protocol-id input.is-required-empty {
  border-color: #f0a8a8;
  box-shadow: 0 0 0 2px rgba(185, 28, 28, 0.08);
}
.med-protocol-date-field input {
  font-variant-numeric: tabular-nums;
  padding-right: 8px;
}
.med-protocol-nr-field input {
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.02em;
}
.med-thread-item .t-title {
  display: flex;
  flex-direction: column;
  gap: 2px;
  align-items: flex-start;
}
.med-thread-item .t-case {
  font-size: 0.72rem;
  font-weight: 700;
  color: #1A325C;
  letter-spacing: 0.02em;
}
@media (max-width: 820px) {
  .med-protocol-id {
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    padding: 7px 10px 8px;
  }
  .med-protocol-title-field {
    grid-column: 1 / -1;
  }
  .med-protocol-id input { min-height: 36px; font-size: 0.84rem; }
}

.med-inbox-page .med-lawyer-row {
  min-height: 68px;
  padding: 11px 15px;
  border-bottom: 1px solid var(--chat-line);
  background: linear-gradient(90deg, #fff 0%, #fbfaf7 100%);
}
.med-inbox-page .med-lawyer-chip { justify-self: start; }
.med-inbox-page .med-lawyer-chip strong {
  color: var(--chat-navy);
  font-size: 0.86rem;
  letter-spacing: 0.015em;
}
.med-inbox-page .med-lawyer-chip span {
  margin-top: 2px;
  color: #798496;
  font-size: 0.68rem;
}
.med-inbox-page .med-avatar-tq {
  color: #fff;
  background: linear-gradient(145deg, var(--chat-navy), var(--chat-navy-2));
  box-shadow: 0 8px 20px rgba(20,43,73,0.20);
}
.med-inbox-page .med-active-pill {
  padding: 6px 10px;
  border: 1px solid #dceee4;
  background: #eefaf3;
  color: #26754a;
  font-size: 0.68rem;
}
.med-inbox-page .med-online {
  background: #31b66a;
  box-shadow: 0 0 0 3px #dff5e8;
}

.med-inbox-page .med-messages {
  min-height: 0;
  padding: 20px 18px 16px;
  gap: 14px;
  background:
    linear-gradient(rgba(255,255,255,0.86), rgba(255,255,255,0.86)),
    radial-gradient(circle at 30% 10%, rgba(173,134,72,0.07), transparent 34%),
    #f8fafc;
}
.med-inbox-page .med-day {
  margin: 0 auto 2px;
  padding: 5px 10px;
  border: 1px solid #e3e8ee;
  border-radius: 999px;
  color: #7b8595;
  background: rgba(255,255,255,0.90);
  font-size: 0.66rem;
  font-weight: 700;
  cursor: default;
}

.med-empty-protocol {
  width: min(100%, 610px);
  margin: auto;
  padding: 22px 20px 18px;
  border: 1px solid rgba(20,43,73,0.10);
  border-radius: 20px;
  background: rgba(255,255,255,0.94);
  box-shadow: 0 18px 44px rgba(20,43,73,0.09);
  text-align: center;
}
.med-empty-mark {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  margin: 0 auto 10px;
  border: 1px solid #d7c39b;
  border-radius: 15px;
  color: #87662f;
  background: #fbf6ec;
}
.med-empty-kicker {
  display: block;
  color: #87662f;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}
.med-empty-protocol h2 {
  margin: 7px 0 7px;
  color: var(--chat-navy);
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(1.22rem, 3vw, 1.55rem);
  line-height: 1.25;
  letter-spacing: -0.025em;
}
.med-empty-protocol > p {
  max-width: 50ch;
  margin: 0 auto;
  color: #677386;
  font-size: 0.82rem;
  line-height: 1.5;
}
.med-prompt-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 16px;
}
.med-prompt-grid button {
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid #dfe5ec;
  border-radius: 11px;
  color: #31415a;
  background: #f8fafc;
  font: inherit;
  font-size: 0.73rem;
  font-weight: 700;
  cursor: pointer;
  transition: transform .14s ease, border-color .14s ease, background .14s ease;
}
.med-prompt-grid button:hover {
  transform: translateY(-1px);
  border-color: #bcc9d7;
  background: #fff;
}
.med-protocol-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
  margin-top: 14px;
}
.med-protocol-legend span {
  padding: 4px 8px;
  border-radius: 999px;
  color: #6f7989;
  background: #f2f4f7;
  font-size: 0.62rem;
  font-weight: 700;
}
.med-protocol-legend span::before {
  content: '✓';
  margin-right: 4px;
  color: #9a7539;
}

.med-inbox-page .med-msg-row { gap: 9px; }
.med-inbox-page .med-msg-row .med-bubble {
  max-width: min(88%, 760px);
}
.med-inbox-page .med-avatar-sm {
  width: 30px;
  height: 30px;
  border-radius: 10px;
  font-size: 0.5rem;
}
.med-inbox-page .med-bubble {
  padding: 13px 15px;
  border-radius: 15px;
  color: #26354b;
  font-size: 0.87rem;
  line-height: 1.62;
}
.med-inbox-page .med-bubble.user {
  border: 1px solid #d9e2ec;
  border-bottom-right-radius: 5px;
  background: #edf3f8;
}
.med-inbox-page .med-bubble.bot {
  border: 1px solid #dfe5ec;
  border-left: 3px solid var(--chat-gold);
  border-bottom-left-radius: 5px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(20,43,73,0.06);
  white-space: normal;
}
.med-inbox-page .med-bubble.bot.is-html .med-bubble-body {
  white-space: normal;
}
.med-inbox-page .med-bubble.bot .med-bubble-body ol,
.med-inbox-page .med-bubble.bot .med-bubble-body ul {
  margin: 0.45em 0 0.85em;
  padding-left: 1.4em;
}
.med-inbox-page .med-bubble.bot .med-bubble-body li {
  margin: 0.32em 0;
  line-height: 1.55;
}
.med-inbox-page .med-bubble.bot .med-bubble-body p {
  margin: 0 0 0.75em;
}
.med-inbox-page .med-bubble.bot .med-bubble-body p:last-child {
  margin-bottom: 0;
}
.med-teiseta-sig {
  margin-top: 1rem;
  padding-top: 0.85rem;
  border-top: 1px solid #e6ebf2;
  color: #4a5568;
  font-size: 0.84em;
  line-height: 1.55;
}
.med-teiseta-sig p {
  margin: 0 0 0.65em;
}
.med-teiseta-sig p:last-child {
  margin-bottom: 0;
}
.med-teiseta-sig strong {
  color: #243554;
  font-weight: 700;
}
.med-teiseta-sig em {
  display: block;
  font-style: italic;
  color: #6a7588;
  font-size: 0.95em;
}
.med-inbox-page .med-bubble .meta {
  margin-bottom: 7px;
  color: #7a8596;
  font-size: 0.64rem;
  letter-spacing: 0.025em;
}
.med-inbox-page .med-bubble.bot .meta { color: #7c6033; }
.med-inbox-page .med-bubble.system {
  max-width: min(92%, 620px);
  border: 1px solid #e3e7ed;
  background: #f6f7f9;
  color: #687386;
}
.med-inbox-page .med-typing .dots {
  border-color: #dfe5ec;
  box-shadow: 0 6px 18px rgba(20,43,73,0.05);
}
.med-inbox-page .med-typing .dots i { background: #9a7539; }

.med-inbox-page .med-composer-frame {
  margin: 0;
  padding: 10px 12px 8px;
  border: 0;
  border-top: 1px solid var(--chat-line);
  border-radius: 0;
  background: #fff;
  box-shadow: 0 -10px 26px rgba(20,43,73,0.045);
}
.med-composer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 3px 7px;
  color: var(--chat-navy);
  font-size: 0.69rem;
  font-weight: 800;
}
.med-composer-head small {
  color: #7b8594;
  font-size: 0.62rem;
  font-weight: 650;
}
.med-composer-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 28px;
  padding: 0 10px;
  border: 1px solid #d7dee7;
  border-radius: 999px;
  background: #f7f9fb;
  color: #1A325C;
  font: inherit;
  font-size: 0.92rem;
  font-weight: 800;
  cursor: pointer;
  line-height: 1;
}
.med-composer-toggle:hover {
  background: #eef3f8;
  border-color: #c5d0dc;
}
.med-composer-toggle.is-open {
  background: #1A325C;
  border-color: #1A325C;
  color: #fff;
}
.med-context-hidden-summary > summary.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.med-context-hidden-summary:not([open]) {
  border: 0;
  background: transparent;
  margin: 0;
  min-height: 0;
}
.med-context-hidden-summary:not([open]) .med-context-body {
  display: none;
}
.med-context-hidden-summary[open] {
  margin: 0 0 8px;
}
.med-intake-hidden-summary > summary.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.med-intake-hidden-summary:not([open]) {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  margin: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
}
.med-intake-hidden-summary:not([open]) .med-intake-body {
  display: none;
}
.med-intake-hidden-summary[open] {
  margin: 0 0 8px;
}
.med-composer-toggle #payModeLabel {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: -0.04em;
}
.med-inbox-page .med-context-layer {
  margin: 0 0 8px;
  border-color: #dde4ec;
  border-radius: 12px;
  background: #fbfaf7;
}
.med-inbox-page .med-context-layer > summary {
  min-height: 38px;
  padding: 7px 10px;
  color: #34445b;
  font-size: 0.72rem;
}
.med-inbox-page .med-context-symbol {
  width: 23px;
  height: 23px;
  border-color: #d6bd8d;
  color: #896831;
  background: #fff8eb;
}
.med-inbox-page .med-context-layer > summary small {
  color: #7d8796;
  border-color: #e3e7ec;
  background: #fff;
}
.med-inbox-page .med-context-body {
  border-top-color: #e5e9ee;
  background: #f8fafc;
}
.med-inbox-page .med-composer-row {
  grid-template-columns: 38px minmax(0, 1fr) 46px;
  gap: 6px;
  align-items: end;
  min-height: 54px;
  padding: 4px;
  border: 1px solid #dce3eb;
  border-radius: 16px;
  background: #f8fafc;
}
.med-inbox-page .med-attach {
  width: 38px;
  height: 44px;
  color: #7d8795;
}
.med-inbox-page .med-attach:disabled { opacity: 0.58; }
.med-inbox-page .med-composer-frame .med-textarea {
  min-height: 44px;
  max-height: 150px;
  padding: 11px 7px 9px;
  color: #25354c;
  background: transparent;
  font-size: 0.86rem;
  line-height: 1.45;
}
.med-inbox-page .med-composer-frame .med-textarea::placeholder { color: #8a94a4; }
.med-inbox-page .med-composer-frame .med-textarea:focus { background: transparent; }
.med-inbox-page .med-send-fab {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: linear-gradient(145deg, var(--chat-navy), var(--chat-navy-2));
  box-shadow: 0 9px 20px rgba(20,43,73,0.24);
}
.med-inbox-page .med-send-fab:hover { filter: brightness(1.06); }
.med-inbox-page .med-cost-note {
  margin: 7px 4px 0;
  color: #7b8594;
  font-size: 0.64rem;
}

.med-inbox-page .med-tabbar-line {
  min-height: 66px;
  border-top-color: var(--chat-line);
  background: rgba(255,255,255,0.98);
}
.med-inbox-page .med-tabbar-line a {
  color: #8a94a4;
  border-radius: 10px;
  font-size: 0.6rem;
}
.med-inbox-page .med-tabbar-line a.active {
  color: var(--chat-navy-2);
  background: #eef3f7;
}
.med-inbox-page .med-tabbar-line svg { width: 20px; height: 20px; }
.med-inbox-page a:focus-visible,
.med-inbox-page button:focus-visible,
.med-inbox-page textarea:focus-visible,
.med-inbox-page summary:focus-visible {
  outline: 3px solid rgba(173,134,72,0.42);
  outline-offset: 2px;
}

@media (min-width: 821px) {
  .med-inbox-page {
    padding: 0;
    place-items: stretch;
    min-height: 100dvh;
    overflow: hidden;
    background: #fff;
  }
  .med-inbox-page .med-shell-card,
  .med-inbox-page .med-app-shell {
    max-width: none !important;
    width: 100%;
    height: 100dvh;
    min-height: 100dvh;
    border-radius: 0;
    border: 0;
    box-shadow: none;
  }
  .med-inbox-page .med-inbox-split { grid-template-columns: 280px minmax(0, 1fr); }
  .med-inbox-page .med-inbox-new,
  .med-inbox-page .med-inbox-archive {
    display: grid;
  }
  .med-inbox-page .med-prompt-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .med-inbox-page .med-empty-protocol { padding: 28px 26px 22px; }
}

@media (max-width: 820px) {
  .med-inbox-page {
    height: 100dvh;
    min-height: 100dvh;
    padding: 0;
    overflow: hidden;
    background: #f1f4f7;
  }
  .med-inbox-page .med-shell-card {
    width: 100%;
    height: 100dvh;
    min-height: 100dvh;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .med-inbox-page .med-panel-top,
  .med-inbox-page .med-panel-top-inbox {
    min-height: 56px;
    padding: 6px 10px 4px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }
  .med-inbox-page .med-panel-left .med-logo { gap: 6px; }
  .med-inbox-page .med-logo-mark svg { width: 27px; height: 27px; }
  .med-inbox-page .med-logo-text strong { font-size: 0.78rem; }
  .med-inbox-page .med-logo-text small { display: none; }
  .med-inbox-page .med-panel-tools .med-wa-top,
  .med-inbox-page .med-panel-tools .med-bell { display: none !important; }
  .med-inbox-page .med-panel-tools .med-wallet-btn { display: none !important; }
  .med-inbox-page .med-top-balance { min-height: 29px; padding: 0 8px; }
  .med-inbox-page .med-avatar-nav { width: 31px; height: 31px; }
  .med-inbox-page .med-panel-center {
    gap: 8px;
  }
  .med-inbox-page .med-panel-center .med-inbox-new,
  .med-inbox-page .med-panel-center .med-inbox-archive {
    display: grid !important;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    color: #1A325C;
  }
  .med-inbox-page .med-pills,
  .med-inbox-page .med-pills-desk {
    display: none !important;
  }
  .med-inbox-page .med-inbox-split {
    min-height: 0;
    padding: 0 7px 6px;
  }
  .med-inbox-page .med-inbox-split .med-thread-panel.med-card-frame {
    min-height: 0;
    border-radius: 18px;
  }
  .med-inbox-page .med-lawyer-row {
    min-height: 60px;
    padding: 8px 11px;
  }
  .med-inbox-page .med-avatar-tq { width: 38px; height: 38px; border-radius: 12px; }
  .med-inbox-page .med-lawyer-chip { gap: 9px; }
  .med-inbox-page .med-lawyer-chip strong { font-size: 0.75rem; }
  .med-inbox-page .med-lawyer-chip span { font-size: 0.61rem; }
  .med-inbox-page .med-active-pill { padding: 5px 8px; font-size: 0.61rem; }
  .med-inbox-page .med-messages {
    padding: 13px 11px 12px;
  }
  .med-empty-protocol {
    width: 100%;
    padding: 18px 13px 14px;
    border-radius: 17px;
    box-shadow: 0 12px 30px rgba(20,43,73,0.08);
  }
  .med-empty-mark { width: 42px; height: 42px; border-radius: 13px; }
  .med-empty-protocol h2 { font-size: 1.18rem; }
  .med-empty-protocol > p { font-size: 0.76rem; }
  .med-prompt-grid { gap: 6px; margin-top: 13px; }
  .med-prompt-grid button { min-height: 39px; padding: 7px 8px; font-size: 0.67rem; }
  .med-protocol-legend { margin-top: 11px; }
  .med-protocol-legend span { font-size: 0.57rem; padding: 3px 6px; }
  .med-inbox-page .med-msg-row .med-bubble { max-width: 92%; }
  .med-inbox-page .med-bubble { font-size: 0.82rem; padding: 11px 12px; }
  .med-inbox-page .med-composer-frame { padding: 8px 8px 6px; }
  .med-composer-head { margin-bottom: 6px; }
  .med-inbox-page .med-context-layer { margin-bottom: 6px; }
  .med-inbox-page .med-context-layer > summary small { display: none; }
  .med-inbox-page .med-context-hidden-summary:not([open]) { margin: 0; }
  .med-inbox-page .med-context-body { max-height: 44dvh; }
  .med-inbox-page .med-intake-body { max-height: min(52dvh, 560px); }
  .med-intake-grid-person { grid-template-columns: 1fr; }
  .med-intake-questions label {
    grid-template-columns: 1fr;
    gap: 4px;
    align-items: stretch;
  }
  .med-composer-head { margin-bottom: 4px; }
  .med-inbox-page .med-composer-row {
    grid-template-columns: 34px minmax(0, 1fr) 44px;
    min-height: 50px;
    border-radius: 15px;
  }
  .med-inbox-page .med-attach { width: 34px; height: 42px; }
  .med-inbox-page .med-send-fab { width: 44px; height: 44px; border-radius: 13px; }
  .med-inbox-page .med-composer-frame .med-textarea { font-size: 0.82rem; }
  .med-inbox-page .med-tabbar-line {
    min-height: 60px;
    padding-top: 5px;
    padding-bottom: calc(5px + env(safe-area-inset-bottom));
  }
}

@media (max-width: 430px) {
  .med-inbox-page .med-pills { grid-template-columns: 1.2fr .8fr .8fr; }
  .med-prompt-grid { grid-template-columns: 1fr; }
  .med-protocol-legend span:nth-child(n+4) { display: none; }
  .med-inbox-page .med-lawyer-chip span { max-width: 190px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}


.med-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.med-field-row{grid-template-columns:1fr}}

.med-field select{
  width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(148,163,184,.35);
  background:rgba(15,23,42,.55);color:inherit;font:inherit;
}


/* —— Mediatorius guided intake · situation profile v1 —— */
.med-intake-panel {
  margin: 0 0 8px;
  border: 1px solid #ccd7e3;
  border-radius: 14px;
  background: #fff;
  color: #21334c;
  overflow: hidden;
}
.med-intake-panel > summary {
  min-height: 44px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  padding: 8px 10px;
  list-style: none;
  cursor: pointer;
  user-select: none;
  background: linear-gradient(90deg, #f7f9fb 0%, #fbf8f1 100%);
}
.med-intake-panel > summary::-webkit-details-marker { display: none; }
.med-intake-panel > summary::after {
  content: '⌄';
  grid-column: 4;
  color: #6f7b8c;
  font-size: 0.86rem;
  transition: transform .15s ease;
}
.med-intake-panel[open] > summary::after { transform: rotate(180deg); }
.med-intake-symbol {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border: 1px solid #d7bf91;
  border-radius: 9px;
  color: #85632c;
  background: #fff8eb;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 0.82rem;
  font-weight: 700;
}
.med-intake-title {
  min-width: 0;
  display: grid;
  gap: 1px;
}
.med-intake-title b {
  color: #1A325C;
  font-size: 0.75rem;
  line-height: 1.2;
}
.med-intake-title small {
  overflow: hidden;
  color: #778294;
  font-size: 0.62rem;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.med-intake-progress {
  min-width: 38px;
  padding: 4px 7px;
  border: 1px solid #dce3eb;
  border-radius: 999px;
  color: #6f7a8a;
  background: #fff;
  font-size: 0.62rem;
  font-weight: 800;
  text-align: center;
}
.med-intake-progress.is-complete {
  border-color: #cfe8d9;
  color: #1f7547;
  background: #effaf3;
}
.med-intake-body {
  max-height: min(58dvh, 640px);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 12px;
  border-top: 1px solid #e2e7ed;
  background: #f7f8fb;
  scrollbar-width: thin;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.med-intake-section {
  margin: 0;
  padding: 0;
  border: 0;
}
.med-intake-section-title {
  margin: 0 0 7px;
  padding: 0;
  color: #6d7690;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.med-intake-body .med-context-pressure {
  margin: 0;
  padding: 10px 11px;
  border: 1px solid #e1e6ec;
  border-radius: 12px;
  background: #fff;
}
.med-intake-body .med-context-pressure label {
  font-size: 0.68rem;
}
.med-intake-body .med-context-pressure output {
  min-width: 2.4em;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.med-composer-head-copy {
  cursor: pointer;
  user-select: none;
}
.med-composer-head-copy:hover span {
  color: #1a325c;
}
.med-intake-body .med-context-consent {
  margin: 0;
  padding: 10px 11px;
  border: 1px solid #e1e6ec;
  border-radius: 12px;
  background: #fff;
  align-items: flex-start;
  display: flex;
  gap: 10px;
  cursor: pointer;
  position: relative;
  z-index: 2;
  pointer-events: auto;
}
.med-intake-body .med-context-consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  min-width: 18px;
  margin-top: 2px;
  flex-shrink: 0;
  cursor: pointer;
  accent-color: #1a325c;
  pointer-events: auto;
}
.med-intake-body .med-context-consent span {
  line-height: 1.4;
  font-size: 0.72rem;
  color: #334155;
  pointer-events: none;
}
.med-intake-body .med-intake-privacy {
  margin: 0;
  padding: 0 2px;
  color: #8a93a8;
  font-size: 0.64rem;
  line-height: 1.4;
}
.med-intake-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.med-intake-grid-person {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 0.85fr);
}
.med-intake-field,
.med-intake-questions label,
.med-intake-extras label {
  min-width: 0;
  display: grid;
  gap: 5px;
  color: #415169;
  font-size: 0.67rem;
  font-weight: 750;
}
.med-intake-field > span,
.med-intake-questions label > span,
.med-intake-extras label > span {
  line-height: 1.3;
}
.med-intake-field > span i {
  width: 18px;
  height: 18px;
  display: inline-grid;
  place-items: center;
  margin-right: 4px;
  border-radius: 6px;
  color: #fff;
  background: #244d78;
  font-style: normal;
  font-size: 0.58rem;
}
.med-intake-panel input,
.med-intake-panel select {
  width: 100%;
  min-height: 39px;
  border: 1px solid #cfd8e3;
  border-radius: 10px;
  color: #203149;
  background: #fff;
  padding: 8px 9px;
  font: inherit;
  font-size: 0.75rem;
  line-height: 1.25;
}
.med-intake-panel input::placeholder { color: #9aa3b0; }
.med-intake-panel input:focus,
.med-intake-panel select:focus {
  outline: 2px solid rgba(36,77,120,0.15);
  outline-offset: 0;
  border-color: #6f8bab;
}
.med-intake-questions {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 11px;
  border: 1px solid #e1e6ec;
  border-radius: 12px;
  background: #fff;
}
.med-intake-questions label {
  grid-template-columns: minmax(160px, .9fr) minmax(0, 1.3fr);
  align-items: center;
  gap: 10px;
}
.med-intake-questions label > span {
  color: #2d405a;
  font-size: 0.69rem;
}
.med-intake-extras {
  display: grid;
  grid-template-columns: .8fr .9fr 1.3fr;
  gap: 8px;
  margin-top: 9px;
}
.med-intake-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 10px;
}
.med-intake-summary span {
  max-width: 100%;
  overflow: hidden;
  padding: 4px 8px;
  border: 1px solid #e1e5eb;
  border-radius: 999px;
  color: #7d8796;
  background: #fff;
  font-size: 0.61rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.med-intake-summary span.is-ready {
  border-color: #d8c49c;
  color: #77592a;
  background: #fff9ee;
}
.med-intake-privacy {
  margin: 8px 1px 0;
  color: #7a8595;
  font-size: 0.61rem;
  line-height: 1.42;
}
.med-intake-privacy::before {
  content: '🔒';
  margin-right: 5px;
  font-size: 0.62rem;
}

@media (max-width: 820px) {
  .med-intake-panel { border-radius: 12px; }
  .med-intake-panel > summary {
    min-height: 42px;
    grid-template-columns: 26px minmax(0, 1fr) auto;
    gap: 7px;
    padding: 7px 9px;
  }
  .med-intake-panel > summary::after { display: none; }
  .med-intake-title small { max-width: 230px; }
  .med-intake-body {
    max-height: 46dvh;
    padding: 10px;
  }
  .med-intake-grid { grid-template-columns: 1fr; gap: 7px; }
  .med-intake-questions { padding: 9px; margin-top: 9px; }
  .med-intake-questions label {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .med-intake-extras { grid-template-columns: 1fr; gap: 7px; }
  .med-intake-panel input,
  .med-intake-panel select { min-height: 38px; font-size: 0.72rem; }
}

@media (max-width: 430px) {
  .med-intake-title small { max-width: 185px; }
  .med-intake-progress { min-width: 35px; padding-inline: 6px; }
  .med-intake-body { max-height: 44dvh; }
}


/* Bylos */
.med-byla-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.med-byla-item{
  display:block;padding:14px 16px;border-radius:14px;border:1px solid rgba(148,163,184,.28);
  background:rgba(255,255,255,.72);text-decoration:none;color:inherit;cursor:pointer;text-align:left;width:100%;
  font:inherit;
}
.med-byla-item strong{display:block;font-size:1.02rem}
.med-byla-item small{display:block;margin-top:4px;color:#64748b;line-height:1.4}
.med-byla-files{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-direction:column;gap:8px}
.med-byla-files li{
  display:flex;justify-content:space-between;gap:10px;align-items:center;
  padding:10px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.25);background:rgba(248,250,252,.9);
}
.med-byla-files a{color:#6d28d9;font-weight:600;text-decoration:none}
.med-byla-readme{
  white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.5;
  padding:12px;border-radius:12px;background:#0f172a;color:#e2e8f0;max-height:220px;overflow:auto;margin:10px 0 16px;
}
.med-byla-detail-head{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:8px}
.med-field textarea{
  width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(148,163,184,.35);
  background:rgba(15,23,42,.04);color:inherit;font:inherit;resize:vertical;min-height:96px;
}
.med-account-grid{display:grid;grid-template-columns:1fr;gap:12px}
@media (min-width:640px){
  .med-account-grid{grid-template-columns:1fr 1fr}
  .med-account-grid .med-account-tile:nth-child(3){grid-column:auto}
}


/* —— Mediatorius inbox · compact protocol and two closed tabs v1 —— */
.med-inbox-page .med-empty-protocol-compact {
  width: min(100%, 560px);
  padding: 24px 22px 22px;
}
.med-empty-lockup {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 auto 12px;
  text-align: left;
}
.med-empty-lockup .med-empty-mark {
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  margin: 0;
  border-radius: 14px;
}
.med-empty-lockup > span:last-child {
  display: grid;
  gap: 2px;
}
.med-empty-lockup b {
  color: #765827;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.25;
}
.med-empty-lockup small {
  color: #788394;
  font-size: 0.65rem;
  line-height: 1.25;
}
.med-inbox-page .med-empty-protocol-compact h2 {
  margin-top: 0;
}
.med-inbox-page .med-empty-protocol-compact > p {
  max-width: 54ch;
}
.med-inbox-page .med-empty-protocol-compact > p strong {
  color: #203d61;
  font-weight: 750;
}

.med-inbox-page .med-intake-panel,
.med-inbox-page .med-context-layer {
  margin-bottom: 7px;
  border-color: #d8e0e8;
  border-radius: 12px;
  background: #fff;
}
.med-inbox-page .med-intake-panel > summary,
.med-inbox-page .med-context-layer > summary {
  min-height: 40px;
  padding: 7px 10px;
  background: linear-gradient(90deg, #fbfcfd 0%, #fbf8f2 100%);
}
.med-inbox-page .med-intake-panel:not([open]) > summary:hover,
.med-inbox-page .med-context-layer:not([open]) > summary:hover {
  background: #f7f9fb;
}
.med-inbox-page .med-intake-title b,
.med-inbox-page .med-context-layer > summary > span:nth-child(2) {
  color: #213d60;
  font-size: 0.73rem;
  font-weight: 800;
}
.med-inbox-page .med-intake-title small {
  color: #7b8595;
  font-size: 0.61rem;
}
.med-inbox-page .med-intake-symbol,
.med-inbox-page .med-context-symbol {
  border-color: #d7bf91;
  color: #825f27;
  background: #fff8eb;
}
.med-inbox-page .med-context-layer > summary small {
  color: #7b8595;
  background: #fff;
}
.med-inbox-page .med-context-body > p:first-child {
  margin-bottom: 12px;
  padding: 10px 11px;
  border-left: 3px solid #d1b376;
  border-radius: 8px;
  background: #fffaf1;
  color: #596679;
}

@media (max-width: 820px) {
  .med-inbox-page .med-empty-protocol-compact {
    width: 100%;
    padding: 20px 15px 18px;
  }
  .med-empty-lockup {
    gap: 8px;
    margin-bottom: 10px;
  }
  .med-empty-lockup .med-empty-mark {
    width: 44px;
    height: 44px;
    border-radius: 13px;
  }
  .med-empty-lockup b { font-size: 0.64rem; }
  .med-empty-lockup small { font-size: 0.6rem; }
  .med-inbox-page .med-empty-protocol-compact > p {
    font-size: 0.74rem;
  }
  .med-inbox-page .med-intake-panel > summary,
  .med-inbox-page .med-context-layer > summary {
    min-height: 39px;
  }
}

.med-byla-note{
  margin:8px 0 18px;padding:16px 18px;border-radius:16px;
  background:linear-gradient(135deg,rgba(26,50,92,.08),rgba(179,148,100,.10));
  border:1px solid rgba(26,50,92,.16);
}
.med-byla-note strong{display:block;margin-bottom:6px;font-size:1rem}
.med-byla-note p{margin:0 0 12px;color:#475569;line-height:1.5;font-size:.95rem}

.med-protocol-profile-line {
  margin: 0 16px 8px;
  font-size: 0.72rem;
  color: var(--muted);
  line-height: 1.35;
}


.med-composer-head-copy {
  min-width: 0;
}
.med-composer-head-copy > span {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.med-composer-head-copy > span > small {
  color: #7b8594;
  font-size: 0.62rem;
  font-weight: 650;
}
.med-inbox-page .med-attach:not(:disabled) {
  color: var(--chat-navy);
  background: #eef4fb;
  border-radius: 12px;
}

.med-atst-badge.is-review {
  background: #fff4e6;
  color: #9a5b00;
  border: 1px solid #f0d8a8;
}
.med-atst-row.is-review {
  border-color: #f0d8a8;
  background: #fffaf2;
}
.med-atst-draft-card {
  max-width: 640px;
  width: min(640px, 100%);
  max-height: min(92vh, 900px);
  overflow-y: auto;
  padding-bottom: 1.25rem;
}
.med-atst-draft-preview {
  margin: 10px 0 14px;
  padding: 12px 14px;
  border-radius: 12px;
  background: #f7f8fc;
  border: 1px solid #e8eaf1;
  font-size: 0.9rem;
  line-height: 1.5;
  max-height: 220px;
  overflow: auto;
}
.med-atst-draft-preview.is-editor {
  margin: 0;
  min-height: 120px;
  max-height: min(32vh, 260px);
  background: #fff;
  border: 1px solid rgba(26, 50, 92, 0.18);
  color: #1c2233;
  outline: none;
  white-space: normal;
  word-break: break-word;
}
.med-atst-draft-preview.is-editor.is-editable {
  cursor: text;
  box-shadow: inset 0 0 0 1px rgba(26, 50, 92, 0.06);
}
.med-atst-draft-preview.is-editor.is-editable:focus {
  border-color: rgba(26, 50, 92, 0.45);
  box-shadow: 0 0 0 3px rgba(26, 50, 92, 0.12);
}
.med-atst-draft-preview.is-editor:not(.is-editable) {
  background: #f7f8fc;
  cursor: default;
}
.med-atst-draft-preview.is-editor p { margin: 0 0 0.75em; }
.med-atst-draft-preview.is-editor p:last-child { margin-bottom: 0; }
.med-atst-draft-actions {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}
.med-atst-decision-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin: 0.85rem 0 0.35rem;
}
.med-atst-decision-actions .med-btn-grad,
.med-atst-decision-actions .med-btn-danger {
  flex: 1 1 10rem;
}
.med-atst-decision-stack {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  margin: 0.85rem 0 0.25rem;
}
.med-atst-decision-stack .med-btn-grad.med-btn-block {
  margin-top: 0.15rem;
  margin-bottom: 0.35rem;
}
.med-atst-decision-stack .med-atst-comment-field {
  margin: 0.15rem 0 0;
}
.med-atst-decision-stack .med-atst-comment-field textarea {
  min-height: 2.6rem;
  max-height: 4.5rem;
  resize: vertical;
  font-size: 0.88rem;
  line-height: 1.35;
  padding: 0.55rem 0.7rem;
}
.med-atst-decision-stack .med-btn-danger.med-btn-block {
  margin-top: 0.15rem;
}
.med-btn-danger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.7rem 1.1rem;
  border: 1px solid #b91c1c;
  border-radius: 999px;
  background: #fff;
  color: #b91c1c;
  font-weight: 750;
  font-size: 0.92rem;
  cursor: pointer;
}
.med-btn-danger:hover {
  background: #fef2f2;
}
.med-btn-danger:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.med-atst-badge.is-rejected {
  background: #fef2f2;
  color: #b91c1c;
  border: 1px solid #fecaca;
}
.med-atst-reject-note {
  margin: 0.35rem 0 0.75rem;
  padding: 0.75rem 0.9rem;
  border-radius: 10px;
  background: #fef2f2;
  border: 1px solid #fecaca;
  color: #7f1d1d;
  font-size: 0.88rem;
  line-height: 1.4;
  white-space: pre-wrap;
}
.med-ops-page .med-ops-stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 10px;
  margin: 14px 0;
}
.med-ops-stat {
  padding: 12px;
  border-radius: 12px;
  background: #f7f8fc;
  border: 1px solid #e8eaf1;
}
.med-ops-stat b {
  display: block;
  font-size: 1.4rem;
  color: #1A325C;
}
.med-ops-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.med-ops-row {
  padding: 12px 14px;
  border-radius: 12px;
  background: #f7f8fc;
  border: 1px solid #e8eaf1;
  font-size: 0.85rem;
}


/* —— Mediatorius about · operational audiences polish v1 —— */
.med-section-eyebrow {
  display: inline-block;
  margin: 0 0 7px;
  color: #8b6a34;
  font-size: 0.66rem;
  font-weight: 800;
  letter-spacing: 0.13em;
}
.med-operating-card > p {
  max-width: 78ch;
}
.med-flow-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  margin-top: 16px;
  padding: 11px 12px;
  border: 1px solid #dce4ed;
  border-radius: 14px;
  background: linear-gradient(135deg, #f6f9fc 0%, #faf7ef 100%);
}
.med-flow-strip span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid #dbe3ec;
  border-radius: 999px;
  color: #1d4774;
  background: rgba(255,255,255,0.86);
  font-size: 0.73rem;
  font-weight: 700;
  line-height: 1.2;
}
.med-flow-strip i {
  color: #9a7a47;
  font-style: normal;
  font-weight: 800;
}
.med-process-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 9px;
  margin-top: 14px;
}
.med-process-grid article {
  padding: 12px 13px;
  border: 1px solid #e1e7ee;
  border-radius: 13px;
  background: #fbfcfd;
}
.med-process-grid b {
  display: block;
  color: #1a325c;
  font-size: 0.84rem;
  line-height: 1.35;
}
.med-process-grid span {
  display: block;
  margin-top: 4px;
  color: #607087;
  font-size: 0.78rem;
  line-height: 1.48;
}
.med-audience-section > h2 {
  max-width: 26ch;
}
.med-audience-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 11px;
  margin-top: 15px;
}
.med-audience-card {
  position: relative;
  min-width: 0;
  padding: 15px 14px 14px;
  border: 1px solid #dde5ee;
  border-radius: 15px;
  background:
    radial-gradient(circle at 94% 0%, rgba(179,148,100,0.12), transparent 25%),
    linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);
  box-shadow: 0 7px 18px rgba(26,50,92,0.035);
}
.med-audience-label {
  display: inline-block;
  margin-bottom: 6px;
  color: #8a6a37;
  font-size: 0.63rem;
  font-weight: 800;
  letter-spacing: 0.12em;
}
.med-audience-card h3 {
  margin: 0 0 7px;
  color: #1a325c;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 0.98rem;
  line-height: 1.3;
}
.med-audience-card p {
  margin: 0 0 9px !important;
  color: #55667d !important;
  font-size: 0.79rem !important;
  line-height: 1.5 !important;
}
.med-audience-card ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.med-audience-card li {
  position: relative;
  margin: 0 0 6px;
  padding-left: 16px;
  color: #334b68;
  font-size: 0.75rem;
  line-height: 1.44;
}
.med-audience-card li:last-child { margin-bottom: 0; }
.med-audience-card li::before {
  content: "";
  position: absolute;
  left: 1px;
  top: 0.55em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1a325c, #b39464);
}
.med-about-page .med-about-list li {
  align-items: start;
}
.med-business-grid article {
  min-width: 0;
}

@media (min-width: 700px) {
  .med-process-grid,
  .med-audience-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .med-process-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .med-audience-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .med-flow-strip {
    gap: 6px;
    padding: 10px;
  }
  .med-flow-strip i { display: none; }
  .med-flow-strip span {
    flex: 1 1 calc(50% - 6px);
    justify-content: center;
    text-align: center;
  }
  .med-audience-card,
  .med-process-grid article {
    padding: 12px;
  }
}

/* —— Ops dashboard shell —— */
.med-ops-page {
  background:
    radial-gradient(1200px 500px at 10% -10%, #e8eef8 0%, transparent 55%),
    linear-gradient(180deg, #eef1f7 0%, #f6f7fb 40%, #f3f4f8 100%);
}
.med-ops-shell {
  display: grid;
  grid-template-columns: 260px 1fr;
  min-height: 100vh;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}
.med-ops-shell:not(.is-authed) {
  grid-template-columns: 1fr;
}
.med-ops-shell:not(.is-authed) .med-ops-sidebar,
.med-ops-shell:not(.is-authed) #opsMenuBtn,
.med-ops-shell:not(.is-authed) .med-ops-top-actions {
  display: none;
}
.med-ops-sidebar {
  position: sticky;
  top: 0;
  align-self: start;
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 12px;
  background: #121a2b;
  color: #e8edf7;
  border-right: 1px solid #1e2a40;
  z-index: 40;
}
.med-ops-side-brand {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 8px 10px 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.med-ops-side-brand strong {
  display: block;
  font-size: 0.95rem;
  letter-spacing: .01em;
}
.med-ops-side-brand small {
  display: block;
  color: #9aa8c2;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: .06em;
}
.med-ops-nav {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
  overflow: auto;
  padding: 6px 0;
}
.med-ops-nav-btn {
  appearance: none;
  border: 0;
  background: transparent;
  color: #c9d3e7;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 11px 12px;
  border-radius: 12px;
  font: inherit;
  font-weight: 650;
  font-size: 0.9rem;
  cursor: pointer;
}
.med-ops-nav-btn:hover { background: rgba(255,255,255,.06); color: #fff; }
.med-ops-nav-btn.is-active {
  background: linear-gradient(135deg, #1A325C, #243f70);
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(179,148,100,.35);
}
.med-ops-nav-btn i {
  min-width: 1.5rem;
  text-align: center;
  font-style: normal;
  font-size: 0.75rem;
  font-weight: 800;
  color: #B39464;
}
.med-ops-side-foot {
  padding: 12px 10px 4px;
  border-top: 1px solid rgba(255,255,255,.08);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.med-ops-side-foot p {
  margin: 0;
  color: #9aa8c2;
  font-size: 0.78rem;
  font-weight: 650;
}
.med-ops-side-logout {
  appearance: none;
  border: 1px solid rgba(255,255,255,.12);
  background: transparent;
  color: #e8edf7;
  border-radius: 10px;
  padding: 8px 10px;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}
.med-ops-side-logout:hover { background: rgba(255,255,255,.06); }
.med-ops-backdrop {
  display: none;
}
.med-ops-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.med-ops-top {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(243,244,248,.92);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid #e4e8f1;
}
.med-ops-top-copy {
  flex: 1;
  min-width: 0;
}
.med-ops-top-copy strong {
  display: block;
  font-size: 1.05rem;
  color: #1A325C;
}
.med-ops-top-copy small {
  color: #7b8499;
  font-weight: 600;
}
.med-ops-top-actions { display: flex; gap: 8px; }
.med-ops-content {
  padding: 16px 18px 28px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.med-ops-page .med-ops-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.med-ops-page .med-ops-stat {
  padding: 14px 14px 12px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #e6eaf2;
  box-shadow: 0 8px 24px rgba(26,50,92,.04);
}
.med-ops-page .med-ops-stat b {
  display: block;
  font-size: 1.45rem;
  line-height: 1.1;
  color: #1A325C;
  margin-bottom: 4px;
}
.med-ops-grid-2 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
  margin-bottom: 12px;
  min-width: 0;
}
.med-ops-card {
  background: #fff;
  border: 1px solid #e6eaf2;
  border-radius: 16px;
  padding: 14px 16px;
  box-shadow: 0 10px 28px rgba(26,50,92,.04);
}
.med-ops-card h3 {
  margin: 0 0 10px;
  font-size: 0.95rem;
  color: #1A325C;
}
.med-ops-kv {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.med-ops-kv li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
  border-bottom: 1px solid #eef1f6;
  font-size: 0.88rem;
}
.med-ops-kv li span { color: #6d7690; font-weight: 600; }
.med-ops-kv li b { color: #1A325C; }
.med-ops-table-wrap {
  overflow: auto;
  border: 1px solid #e6eaf2;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(26,50,92,.04);
}
.med-ops-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 720px;
}
.med-ops-table th,
.med-ops-table td {
  padding: 11px 12px;
  text-align: left;
  border-bottom: 1px solid #eef1f6;
  vertical-align: top;
  font-size: 0.84rem;
}
.med-ops-table th {
  background: #f7f8fc;
  color: #5d6782;
  font-weight: 750;
  position: sticky;
  top: 0;
}
.med-ops-table tr:last-child td { border-bottom: 0; }
.med-ops-table code {
  font-size: 0.78rem;
  background: #f3f5fa;
  padding: 2px 6px;
  border-radius: 6px;
}
.med-ops-note { margin: 0 0 10px; }
.med-ops-panel .med-ops-row {
  margin-bottom: 8px;
}
.med-ops-panel .ops-review-btn {
  margin-top: 6px;
}

@media (max-width: 1100px) {
  .med-ops-page .med-ops-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .med-ops-grid-2 { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .med-ops-shell,
  .med-ops-shell.is-authed {
    grid-template-columns: 1fr;
  }
  .med-ops-sidebar {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    width: min(86vw, 300px);
    transform: translateX(-105%);
    transition: transform .22s ease;
    box-shadow: 18px 0 40px rgba(0,0,0,.25);
  }
  .med-ops-shell.is-menu-open .med-ops-sidebar {
    transform: translateX(0);
  }
  .med-ops-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(12, 18, 32, .45);
    z-index: 35;
  }
  .med-ops-backdrop[hidden] { display: none !important; }
}

/* —— Ops 8789 ping badge —— */
.med-ops-slot-badge {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border-radius: 12px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  margin-bottom: 4px;
}
.med-ops-slot-badge strong {
  display: block;
  font-size: 0.82rem;
  color: #fff;
}
.med-ops-slot-badge small {
  display: block;
  color: #9aa8c2;
  font-size: 0.68rem;
  font-weight: 650;
}
.med-ops-slot-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #6b7280;
  box-shadow: 0 0 0 3px rgba(107,114,128,.25);
  flex: 0 0 auto;
}
.med-ops-slot-dot.is-active,
.med-ops-slot-dot.is-ok {
  background: #22c55e;
  box-shadow: 0 0 0 3px rgba(34,197,94,.25);
}
.med-ops-slot-dot.is-busy {
  background: #f59e0b;
  box-shadow: 0 0 0 3px rgba(245,158,11,.28);
}
.med-ops-slot-dot.is-degraded,
.med-ops-slot-dot.is-sync_stale {
  background: #f97316;
  box-shadow: 0 0 0 3px rgba(249,115,22,.28);
}
.med-ops-slot-dot.is-offline,
.med-ops-slot-dot.is-unreachable,
.med-ops-slot-dot.is-disabled,
.med-ops-slot-dot.is-inactive {
  background: #ef4444;
  box-shadow: 0 0 0 3px rgba(239,68,68,.25);
}
.med-ops-slot-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e4e8f1;
  font-size: 0.78rem;
  font-weight: 750;
  color: #1A325C;
}
.med-ops-slot-card {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
  padding: 14px 16px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid #e6eaf2;
  box-shadow: 0 10px 28px rgba(26,50,92,.04);
}
.med-ops-slot-card .med-ops-slot-dot {
  width: 14px;
  height: 14px;
}
.med-ops-slot-card strong {
  display: block;
  color: #1A325C;
  font-size: 0.98rem;
}
.med-ops-slot-card small {
  color: #6d7690;
  font-weight: 600;
}
.med-ops-slot-pill {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: .04em;
  background: #eefaf3;
  color: #166534;
  border: 1px solid #ccebd8;
}
.med-ops-slot-pill.is-busy { background: #fff7e8; color: #9a6700; border-color: #f0e0b8; }
.med-ops-slot-pill.is-degraded,
.med-ops-slot-pill.is-sync_stale { background: #fff4ed; color: #c2410c; border-color: #ffd7bf; }
.med-ops-slot-pill.is-offline,
.med-ops-slot-pill.is-unreachable,
.med-ops-slot-pill.is-disabled,
.med-ops-slot-pill.is-inactive { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }
.med-ops-pre {
  margin: 0;
  padding: 10px 12px;
  border-radius: 12px;
  background: #f7f8fc;
  border: 1px solid #e8eaf1;
  overflow: auto;
  font-size: 0.75rem;
  line-height: 1.45;
  max-height: 320px;
}
.med-ops-ol {
  margin: 0;
  padding-left: 1.2rem;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 0.88rem;
  color: #1c2233;
}

/* ===== Ops CRM premium panel ===== */
.med-ops-crm.med-ops-page {
  --ops-ink: #0f1a2e;
  --ops-gold: #c9a46a;
  --ops-paper: #f6f4ef;
  --ops-line: #e4e0d6;
  font-family: "DM Sans", system-ui, sans-serif;
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(201,164,106,.14), transparent 55%),
    linear-gradient(180deg, #f3f1eb 0%, #ebe7df 100%);
}
.med-ops-crm .med-ops-sidebar {
  background: linear-gradient(185deg, #132038 0%, #0c1526 100%);
  border-right: 1px solid rgba(201,164,106,.18);
}
.med-ops-crm .med-ops-side-brand strong {
  font-family: "Instrument Serif", Georgia, serif;
  font-weight: 400;
  letter-spacing: .01em;
  font-size: 1.15rem;
}
.med-ops-crm .med-ops-side-brand small {
  color: rgba(201,164,106,.85);
  letter-spacing: .12em;
}
.med-ops-nav-group {
  margin: 14px 14px 6px;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.38);
}
.med-ops-crm .med-ops-top {
  background: rgba(246,244,239,.86);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--ops-line);
}
.med-ops-crm .med-ops-top-copy strong {
  font-family: "Instrument Serif", Georgia, serif;
  font-size: 1.45rem;
  font-weight: 400;
  color: var(--ops-ink);
}
.med-ops-eyebrow {
  margin: 0 0 6px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #8a7350;
}
.med-ops-login-card h1 {
  font-family: "Instrument Serif", Georgia, serif;
  font-weight: 400;
  font-size: 2rem;
}
.med-ops-crm .med-ops-stat {
  background: #fffdf9;
  border: 1px solid var(--ops-line);
  border-radius: 16px;
  box-shadow: 0 1px 0 rgba(15,26,46,.04);
}
.med-ops-crm .med-ops-stat span {
  display: block;
  margin-top: 4px;
  color: #6d6558;
  font-size: .78rem;
  font-weight: 600;
}
.med-ops-crm .med-ops-card {
  background: #fffdf9;
  border: 1px solid var(--ops-line);
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(15,26,46,.04);
}
.med-ops-crm-bar {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 14px;
  padding: 14px 16px;
  background: #fffdf9;
  border: 1px solid var(--ops-line);
  border-radius: 18px;
}
.med-ops-crm-search {
  display: flex;
  gap: 8px;
}
.med-ops-crm-search input {
  flex: 1;
  min-width: 0;
  border: 1px solid var(--ops-line);
  background: #faf8f3;
  border-radius: 12px;
  padding: 11px 14px;
  font: inherit;
  color: var(--ops-ink);
}
.med-ops-crm-search input:focus {
  outline: 2px solid rgba(201,164,106,.35);
  border-color: #c9a46a;
}
.med-ops-crm-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.med-ops-chip {
  border: 1px solid var(--ops-line);
  background: #faf8f3;
  color: #4a4450;
  border-radius: 999px;
  padding: 7px 12px;
  font: inherit;
  font-size: .82rem;
  font-weight: 600;
  cursor: pointer;
}
.med-ops-chip.is-on {
  background: var(--ops-ink);
  border-color: var(--ops-ink);
  color: #f6f4ef;
}
.med-ops-crm-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}
.med-ops-sort {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: #6d6558;
  font-size: .84rem;
  font-weight: 600;
}
.med-ops-sort select {
  border: 1px solid var(--ops-line);
  border-radius: 10px;
  background: #fff;
  padding: 7px 10px;
  font: inherit;
}
.med-ops-crm-total {
  color: #6d6558;
  font-size: .84rem;
}
.med-ops-crm-total b { color: var(--ops-ink); }
.med-ops-pager { display: flex; gap: 8px; }
.med-ops-page-btn {
  border: 1px solid var(--ops-line);
  background: #fff;
  border-radius: 10px;
  padding: 7px 12px;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.med-ops-page-btn:disabled { opacity: .4; cursor: default; }
.med-ops-table-crm tr.is-clickable { cursor: pointer; }
.med-ops-table-crm tr.is-clickable:hover td { background: #f8f3e9; }
.med-ops-pill {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .02em;
  border: 1px solid transparent;
}
.med-ops-pill.is-ok { background: #eef7f0; color: #1f6b3a; border-color: #cfe6d6; }
.med-ops-pill.is-warn { background: #fff7e8; color: #8a5a00; border-color: #f0e0b8; }
.med-ops-pill.is-bad { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }
.med-ops-pill.is-neutral { background: #f3f1eb; color: #5b564c; border-color: #e4e0d6; }
.med-ops-link-btn {
  border: 0;
  background: none;
  color: #1a4f8a;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.med-ops-empty {
  padding: 28px 18px;
  text-align: center;
  color: #6d6558;
  background: #fffdf9;
  border: 1px dashed var(--ops-line);
  border-radius: 16px;
}
.med-ops-row-btn {
  width: 100%;
  text-align: left;
  border: 0;
  background: transparent;
  cursor: pointer;
  font: inherit;
}
.med-ops-drawer[hidden] { display: none !important; }
.med-ops-drawer {
  position: fixed;
  inset: 0;
  z-index: 80;
}
.med-ops-drawer-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15,26,46,.42);
}
.med-ops-drawer-panel {
  position: absolute;
  top: 0;
  right: 0;
  width: min(560px, 100%);
  height: 100%;
  background: #fffdf9;
  border-left: 1px solid var(--ops-line);
  box-shadow: -20px 0 60px rgba(15,26,46,.18);
  display: flex;
  flex-direction: column;
  animation: medOpsDrawerIn .22s ease;
}
@keyframes medOpsDrawerIn {
  from { transform: translateX(18px); opacity: .6; }
  to { transform: none; opacity: 1; }
}
.med-ops-drawer-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 20px 14px;
  border-bottom: 1px solid var(--ops-line);
}
.med-ops-drawer-head h2 {
  margin: 0;
  font-family: "Instrument Serif", Georgia, serif;
  font-weight: 400;
  font-size: 1.55rem;
  color: var(--ops-ink);
}
.med-ops-drawer-body {
  overflow: auto;
  padding: 16px 20px 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.med-ops-card-hero {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border-radius: 16px;
  background: linear-gradient(135deg, #132038, #1d3358);
  color: #f6f4ef;
}
.med-ops-avatar {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(201,164,106,.22);
  color: #c9a46a;
  font-weight: 700;
  font-size: 1.1rem;
}
.med-ops-card-balance {
  text-align: right;
}
.med-ops-card-balance b {
  display: block;
  font-size: 1.15rem;
  color: #c9a46a;
}
.med-ops-card-balance span {
  font-size: .72rem;
  opacity: .75;
}
.med-ops-mini-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(84px, 1fr));
  gap: 8px;
}
.med-ops-mini-stats > div {
  padding: 10px;
  border-radius: 12px;
  background: #faf8f3;
  border: 1px solid var(--ops-line);
  text-align: center;
}
.med-ops-mini-stats b { display: block; color: var(--ops-ink); font-size: 1.05rem; }
.med-ops-mini-stats span { font-size: .68rem; color: #6d6558; text-transform: uppercase; letter-spacing: .04em; }
.med-ops-drawer-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
@media (min-width: 720px) {
  .med-ops-drawer-grid { grid-template-columns: .9fr 1.1fr; }
}
.med-ops-drawer-sec h3,
.med-ops-drawer-grid h3 {
  margin: 0 0 8px;
  font-size: .92rem;
  color: var(--ops-ink);
}
.med-ops-timeline {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 340px;
  overflow: auto;
}
.med-ops-tl-item {
  display: grid;
  grid-template-columns: 72px 1fr auto;
  gap: 8px;
  align-items: start;
  padding: 8px 10px;
  border-radius: 12px;
  background: #faf8f3;
  border: 1px solid var(--ops-line);
}
.med-ops-tl-type {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #8a7350;
}
.med-ops-tl-item strong { display: block; font-size: .86rem; color: var(--ops-ink); }
.med-ops-tl-item small { color: #6d6558; }
.med-ops-tl-item time { font-size: .72rem; color: #8a8490; white-space: nowrap; }
.med-ops-msg {
  padding: 10px 12px;
  border-radius: 12px;
  background: #faf8f3;
  border: 1px solid var(--ops-line);
  margin-bottom: 8px;
}
.med-ops-msg p { margin: 6px 0 0; white-space: pre-wrap; color: #2b3344; font-size: .88rem; }

/* Company / root Euro account */
.med-ops-fin-company {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 16px 24px;
  align-items: end;
  background:
    linear-gradient(135deg, rgba(201,164,106,.18), rgba(15,26,46,.06) 55%, #fffdf9),
    #fffdf9;
  border: 1px solid var(--ops-line, #e4e0d6);
  border-radius: 20px;
  padding: 22px 24px 18px;
  margin-bottom: 16px;
  box-shadow: 0 1px 0 rgba(15,26,46,.04);
}
.med-ops-fin-company-label {
  display: block;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #8a7350;
  margin-bottom: 6px;
}
.med-ops-fin-company-main b {
  display: block;
  font-family: "Instrument Serif", Georgia, serif;
  font-size: clamp(2.1rem, 4vw, 2.8rem);
  font-weight: 400;
  color: #0f1a2e;
  line-height: 1.05;
}
.med-ops-fin-company-main small {
  display: block;
  margin-top: 8px;
  color: #6d6558;
  font-size: .86rem;
}
.med-ops-fin-company-meta {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 14px;
}
.med-ops-fin-company-meta li {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.med-ops-fin-company-meta span {
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #8a7350;
}
.med-ops-fin-company-meta b {
  font-size: 1.05rem;
  color: #0f1a2e;
}
.med-ops-fin-company-note {
  grid-column: 1 / -1;
  margin: 0;
  padding-top: 4px;
  border-top: 1px dashed rgba(15,26,46,.12);
  color: #6d6558;
  font-size: .84rem;
}
@media (max-width: 900px) {
  .med-ops-fin-company { grid-template-columns: 1fr; }
}

/* Finance dashboard */
.med-ops-fin-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}
.med-ops-fin-kpi {
  background: #fffdf9;
  border: 1px solid var(--ops-line, #e4e0d6);
  border-radius: 16px;
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  box-shadow: 0 1px 0 rgba(15,26,46,.04);
}
.med-ops-fin-kpi span {
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #8a7350;
}
.med-ops-fin-kpi b {
  font-family: "Instrument Serif", Georgia, serif;
  font-size: 1.55rem;
  font-weight: 400;
  color: #0f1a2e;
  line-height: 1.1;
}
.med-ops-fin-kpi small { color: #6d6558; font-size: .78rem; }
.med-ops-subh {
  margin: 14px 0 8px;
  font-size: .84rem;
  color: #0f1a2e;
}
@media (max-width: 1100px) {
  .med-ops-fin-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .med-ops-fin-kpis { grid-template-columns: 1fr; }
}


/* —— Mediatorius about · visual hero with operational image v1 —— */
.med-about-page .med-about-hero {
  position: relative;
  isolation: isolate;
  min-height: 420px;
  display: flex;
  align-items: center;
  overflow: hidden;
  padding: 0;
  border: 1px solid rgba(26, 50, 92, 0.11);
  border-radius: 24px;
  background: #eef2f7;
  box-shadow: 0 20px 52px rgba(26, 50, 92, 0.10);
}
.med-about-hero-media {
  position: absolute;
  inset: 0;
  z-index: -2;
  display: block;
  overflow: hidden;
}
.med-about-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg,
      rgba(247, 249, 252, 0.99) 0%,
      rgba(247, 249, 252, 0.97) 30%,
      rgba(247, 249, 252, 0.79) 43%,
      rgba(247, 249, 252, 0.20) 62%,
      rgba(247, 249, 252, 0.02) 78%),
    linear-gradient(180deg, rgba(255,255,255,0.05), rgba(26,50,92,0.06));
  pointer-events: none;
}
.med-about-hero-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 52%;
  transform: scale(1.01);
}
.med-about-hero-copy {
  position: relative;
  z-index: 1;
  width: min(56%, 720px);
  padding: clamp(30px, 4.4vw, 64px);
  box-sizing: border-box;
}
.med-about-page .med-about-hero .med-about-badge {
  width: 46px;
  height: 46px;
  margin-bottom: 14px;
  border: 1px solid rgba(26,50,92,0.08);
  background: rgba(255,255,255,0.90);
  box-shadow: 0 10px 24px rgba(26,50,92,0.12);
  backdrop-filter: blur(8px);
}
.med-about-page .med-about-hero .med-about-kicker {
  display: block;
  max-width: 54ch;
  margin-bottom: 9px;
  color: #8a6730;
  font-size: clamp(0.66rem, 0.72vw, 0.78rem);
  letter-spacing: 0.13em;
  text-shadow: 0 1px 0 rgba(255,255,255,0.65);
}
.med-about-page .med-about-hero h1 {
  margin: 0 0 12px;
  color: #17345f;
  font-size: clamp(2.05rem, 3.2vw, 3.75rem);
  line-height: 1.02;
  letter-spacing: -0.045em;
}
.med-about-page .med-about-hero p {
  max-width: 60ch;
  margin: 0;
  color: #53657c;
  font-size: clamp(0.95rem, 1.05vw, 1.15rem);
  line-height: 1.58;
}
.med-about-hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
}
.med-hero-primary,
.med-hero-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 18px;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 800;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.med-hero-primary {
  color: #fff;
  background: linear-gradient(135deg, #18355f 0%, #285b8f 100%);
  box-shadow: 0 11px 24px rgba(26,50,92,0.20);
}
.med-hero-secondary {
  color: #1c416e;
  border: 1px solid rgba(26,50,92,0.18);
  background: rgba(255,255,255,0.78);
  backdrop-filter: blur(7px);
}
.med-hero-primary:hover,
.med-hero-secondary:hover {
  transform: translateY(-1px);
}
.med-hero-primary:focus-visible,
.med-hero-secondary:focus-visible {
  outline: 3px solid rgba(42, 91, 143, 0.24);
  outline-offset: 3px;
}

@media (max-width: 980px) {
  .med-about-page .med-about-hero {
    min-height: 380px;
  }
  .med-about-hero-copy {
    width: min(62%, 620px);
    padding: 30px;
  }
  .med-about-hero-media::after {
    background: linear-gradient(90deg,
      rgba(247,249,252,0.99) 0%,
      rgba(247,249,252,0.94) 39%,
      rgba(247,249,252,0.60) 58%,
      rgba(247,249,252,0.05) 82%);
  }
}

@media (max-width: 720px) {
  .med-about-page .med-about-hero {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-height: 0;
    border-radius: 20px;
    background: #f7f9fc;
  }
  .med-about-hero-media {
    position: relative;
    inset: auto;
    z-index: 0;
    order: 0;
    width: 100%;
    height: clamp(190px, 54vw, 260px);
    background: #edeff3;
  }
  .med-about-hero-media::after {
    background:
      linear-gradient(180deg, rgba(247,249,252,0.03) 52%, rgba(247,249,252,0.96) 100%),
      linear-gradient(90deg, rgba(247,249,252,0.35), rgba(247,249,252,0.02));
  }
  .med-about-hero-media img {
    object-position: 68% 50%;
    transform: none;
  }
  .med-about-hero-copy {
    order: 1;
    width: 100%;
    margin-top: -24px;
    padding: 0 18px 22px;
  }
  .med-about-page .med-about-hero .med-about-badge {
    width: 42px;
    height: 42px;
    margin-bottom: 12px;
  }
  .med-about-page .med-about-hero h1 {
    font-size: clamp(1.8rem, 8vw, 2.45rem);
  }
  .med-about-page .med-about-hero p {
    font-size: 0.94rem;
    line-height: 1.55;
  }
  .med-about-hero-actions {
    margin-top: 18px;
  }
}

@media (max-width: 430px) {
  .med-about-hero-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .med-hero-primary,
  .med-hero-secondary {
    width: 100%;
    box-sizing: border-box;
  }
}

/* Business lead questionnaire */
.med-lead-page .med-lead-card h1 {
  margin: 6px 0 8px;
  font-size: 1.55rem;
  color: #1A325C;
}
.med-lead-page .med-panel-top {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  grid-template-columns: none !important;
  padding: 12px 14px 8px;
  gap: 12px;
  position: relative;
}
.med-lead-page .med-panel-top .med-logo {
  flex: 1 1 auto;
  min-width: 0;
}
.med-lead-page .med-lead-close {
  flex: 0 0 auto;
  margin-left: auto;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  text-decoration: none;
  font-size: 1.85rem;
  font-weight: 400;
  line-height: 1;
  color: #5b647a;
  background: #eef0f5;
  border: 1px solid #e0e4ee;
  box-sizing: border-box;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.med-lead-page .med-lead-close:hover {
  background: #e4e7ef;
  color: #1A325C;
  border-color: #cfd5e2;
}
.med-lead-page .med-lead-close:focus-visible {
  outline: 2px solid #1A325C;
  outline-offset: 2px;
}
@media (max-width: 820px) {
  .med-lead-page .med-panel-top {
    padding: 10px 10px 6px;
  }
  .med-lead-page .med-lead-close {
    width: 42px;
    height: 42px;
    font-size: 1.75rem;
    border-radius: 11px;
  }
}
.med-lead-form { display: flex; flex-direction: column; gap: 12px; margin-top: 16px; }
.med-lead-form .med-field-hint {
  display: block;
  margin-top: 6px;
  font-size: 0.78rem;
  color: #6d7690;
  line-height: 1.35;
  font-weight: 500;
}
.med-lead-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.med-lead-fieldset {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #e4e8f0;
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.med-lead-fieldset legend {
  padding: 0 6px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #6d7690;
}
.med-check {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: .92rem;
  color: #1c2233;
  cursor: pointer;
}
.med-check input { margin-top: 3px; }
.med-check-consent { margin-top: 4px; font-weight: 600; }
.med-lead-error {
  margin: 0;
  padding: 10px 12px;
  border-radius: 12px;
  background: #fef2f2;
  color: #b91c1c;
  border: 1px solid #fecaca;
  font-size: .88rem;
}
.med-lead-note { margin: 0; font-size: .8rem; }
.med-lead-success h2 { margin: 0 0 8px; color: #1A325C; }
.med-lead-success { display: flex; flex-direction: column; gap: 10px; }
.med-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}
.med-lead-form select {
  width: 100%;
  border: 1px solid #d9dee8;
  border-radius: 12px;
  padding: 11px 12px;
  font: inherit;
  background: #fff;
}
@media (max-width: 640px) {
  .med-lead-grid { grid-template-columns: 1fr; }
}

/* Header euro + bylos links */
a.med-top-balance {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}
a.med-bylos-btn {
  text-decoration: none;
  color: inherit;
}

/* Ops CRM · Prenumerata varnelės */
.med-ops-sub-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  margin: 0 0 14px;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(15, 26, 46, 0.04);
  border: 1px solid rgba(26, 50, 92, 0.08);
  font-size: 0.82rem;
  color: #3a4a66;
}
.med-ops-sub-summary > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.med-ops-pref {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  white-space: nowrap;
}
.med-ops-pref b { font-weight: 700; }
.med-ops-pref.is-on {
  background: rgba(34, 140, 90, 0.12);
  color: #1a6b45;
  border: 1px solid rgba(34, 140, 90, 0.22);
}
.med-ops-pref.is-off {
  background: rgba(160, 50, 50, 0.08);
  color: #8a3030;
  border: 1px solid rgba(160, 50, 50, 0.18);
}

/* Ops · Email Center */
.med-ops-email { display: grid; gap: 18px; }
.med-ops-email-head {
  display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px;
  padding: 12px 14px; border-radius: 14px;
  background: rgba(15,26,46,.04); border: 1px solid rgba(26,50,92,.08);
}
.med-ops-email-head strong { display:block; font-family: "Instrument Serif", serif; font-size: 1.35rem; color:#1a325c; }
.med-ops-email-head small { color:#5b6b86; }
.med-ops-email-kpis { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.med-ops-email-kpis span {
  display:inline-flex; gap:6px; align-items:center;
  padding:6px 10px; border-radius:999px; background:#fff; border:1px solid #e4e9f2; font-size:.8rem;
}
.med-ops-email-account {
  border:1px solid rgba(26,50,92,.1); border-radius:16px; background:#fff; padding:14px 14px 10px;
  box-shadow: 0 8px 28px rgba(15,26,46,.04);
}
.med-ops-email-account-head {
  display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:10px;
}
.med-ops-email-account-head strong { font-size:1.05rem; color:#1a325c; display:block; }
.med-ops-email-account-head code { font-size:.82rem; color:#2f4d7a; }
.med-ops-email-account-head small { display:block; color:#6a7a94; margin-top:2px; }
.med-ops-email-account-stats { display:flex; gap:8px; align-items:flex-start; }
.med-ops-email-cols {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  min-width: 0;
}
.med-ops-email-cols section {
  min-width: 0;
  max-width: 100%;
}
.med-ops-email-cols .med-ops-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.med-ops-email-cols h3 {
  margin: 0 0 8px; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; color:#6a7a94;
}
.med-ops-mail-dir {
  display:inline-flex; align-items:center; padding:3px 8px; border-radius:999px;
  font-size:.7rem; font-weight:700; letter-spacing:.04em;
}
.med-ops-mail-dir.is-in { background:rgba(34,140,90,.12); color:#1a6b45; }
.med-ops-mail-dir.is-out { background:rgba(40,90,180,.12); color:#1f4f9a; }
.med-ops-mail-dir.is-sys { background:rgba(120,120,120,.1); color:#555; }
.med-ops-email-warn { color:#8a3030; font-size:.85rem; margin:0 0 8px; }
.med-ops-email-timeline { margin-top:12px; border-top:1px solid #edf0f6; padding-top:8px; }
.med-ops-email-timeline summary {
  cursor:pointer; font-weight:600; color:#1a325c; font-size:.9rem; margin-bottom:8px;
}
.med-ops-mail-table td strong { font-weight:600; color:#243554; }

/* Ops · Taimeriai (slot 8789) */
.med-ops-timers { display: grid; gap: 16px; min-width: 0; }
.med-ops-tmr-head {
  display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; align-items: flex-start;
}
.med-ops-tmr-form textarea { min-height: 96px; resize: vertical; }
.med-ops-tmr-form-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.med-ops-tmr-table td small { display: block; color: #6a7a94; margin-top: 4px; }
.med-ops-tmr-actions { white-space: nowrap; font-size: .82rem; }
.med-ops-tmr-err { color: #8a3030; }
.med-ops-tmr-hint { margin: 22px 0 0; font-size: .82rem; }
.med-ops-link-btn.is-danger { color: #8a3030; }
.med-field-check { display: flex; align-items: center; gap: 10px; }
.med-field-check input[type="checkbox"] { width: 18px; height: 18px; margin-top: 22px; }


/* Marketing lists: stacked full-width (no side-by-side overflow) */
.med-ops-mkt-lists {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-bottom: 12px;
  min-width: 0;
}
.med-ops-mkt-lists .med-ops-card,
.med-ops-mkt-lists .med-ops-table-wrap {
  min-width: 0;
  max-width: 100%;
}
.med-ops-mkt-lists .med-ops-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.med-ops-panel,
.med-ops-content,
#opsPanel {
  min-width: 0;
  max-width: 100%;
  overflow-x: hidden;
}
.med-ops-grid-2 {
  min-width: 0;
}
.med-ops-grid-2 > * {
  min-width: 0;
}

/* Marketing transfer form */
.med-ops-mkt-form .med-field { display:flex; flex-direction:column; gap:6px; margin-bottom:12px; }
.med-ops-mkt-form .med-field span { font-size:.72rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:#8a7350; }
.med-ops-mkt-form input, .med-ops-mkt-form select {
  border:1px solid var(--ops-line,#e4e0d6); border-radius:12px; padding:10px 12px;
  font: inherit; background:#fff; color:#0f1a2e;
}
.med-ops-mkt-form .med-btn-dark { margin-top:4px; }

/* Atstovavimas ops draft editor */
.med-atst-mail-meta{display:grid;gap:.75rem;margin:0 0 1rem}
@media(min-width:720px){.med-atst-mail-meta{grid-template-columns:repeat(3,minmax(0,1fr))}}
.med-atst-draft-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}
.med-atst-draft-actions .med-btn-grad,.med-atst-draft-actions .med-btn-dark{flex:1 1 12rem}
.med-ops-table td.med-ops-emails{font-size:.82rem;line-height:1.35}
.med-ops-table td.med-ops-emails small{display:block;color:var(--med-muted,#6b7280)}

/* Atstovavimo režimo pasirinkimas */
.med-atst-mode-fieldset{border:1px solid rgba(26,50,92,.14);border-radius:12px;padding:1rem;margin:0 0 1.1rem;display:grid;gap:.75rem}
.med-atst-mode-fieldset legend{padding:0 .35rem;font-weight:700;color:#1A325C}
.med-atst-mode-option{display:flex;gap:.75rem;align-items:flex-start;padding:.65rem .75rem;border-radius:10px;background:rgba(26,50,92,.04);cursor:pointer}
.med-atst-mode-option:has(input:checked){background:rgba(26,50,92,.1);outline:1px solid rgba(26,50,92,.25)}
.med-atst-mode-option input{margin-top:.25rem}
.med-atst-mode-option span{display:grid;gap:.2rem}
.med-atst-mode-option small{color:#5b6475;line-height:1.35}
.med-atst-id-line{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92rem;color:#1A325C;font-weight:700;margin:.35rem 0 .85rem}
.med-atst-thread{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(26,50,92,.12)}
.med-atst-thread h3{margin:0 0 .75rem;font-size:1rem;color:#1A325C}
.med-atst-msg{border:1px solid rgba(26,50,92,.12);border-radius:10px;padding:.75rem .9rem;margin:0 0 .65rem;background:#f8f9fc}
.med-atst-msg.is-out{background:rgba(26,50,92,.05)}
.med-atst-msg.is-in{background:#fff;border-color:rgba(22,163,74,.28)}
.med-atst-msg strong{display:block;font-size:.85rem;color:#1A325C}
.med-atst-msg small{display:block;color:#64748b;margin:.15rem 0 .45rem}
.med-atst-msg p{margin:0;white-space:pre-wrap;line-height:1.45;font-size:.92rem;color:#334155}
.med-atst-row .med-atst-id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700;color:#1A325C}

/* Inbound correlation is not identity or legal evidence. */

.med-atst-msg-trust {
  display: block;
  width: fit-content;
  margin: 7px 0 2px;
  padding: 5px 8px;
  border: 1px solid #ded8c8;
  border-radius: 8px;
  background: #f7f5ef;
  color: #625b4d;
  font-size: .72rem;
  font-weight: 700;
  line-height: 1.35;
}
.med-atst-msg-trust.is-warn {
  border-color: #efc9a1;
  background: #fff7e8;
  color: #8a4b08;
}



/* —— Landing hero · legal event management center polish v2 —— */
.med-landing-hero .med-hero-desk .med-lead strong {
  color: var(--law-navy);
  font-weight: 800;
}
.med-landing-hero .med-hero-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 1px 0 2px;
}
.med-landing-hero .med-hero-flow span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid rgba(26,50,92,0.10);
  border-radius: 999px;
  color: #294d76;
  background: rgba(255,255,255,0.66);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.75);
  backdrop-filter: blur(7px);
  font-size: 0.69rem;
  font-weight: 750;
  line-height: 1;
}
.med-landing-hero .med-hero-flow i {
  color: #9b7741;
  font-style: normal;
  font-size: 0.78rem;
  font-weight: 800;
}
.med-landing-hero .med-hero-mobile-kicker {
  display: block;
  margin-bottom: 9px;
  color: #7b5e30;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.11em;
}

@media (min-width: 821px) {
  .med-landing-hero .med-hero-block {
    min-height: clamp(570px, 66dvh, 720px);
  }
  .med-landing-hero .med-hero-desk {
    max-width: min(650px, 53%);
    padding-top: clamp(32px, 5vh, 58px);
    gap: 13px;
  }
  .med-landing-hero .med-hero-desk h1 {
    max-width: min(21ch, 100%);
    margin: 0;
    font-size: clamp(2.35rem, 3.55vw, 3.35rem);
    line-height: 1.10;
    letter-spacing: -0.043em;
    text-wrap: balance;
  }
  .med-landing-hero .med-hero-desk .med-lead {
    max-width: 51ch !important;
    font-size: clamp(0.98rem, 1.05vw, 1.08rem) !important;
    line-height: 1.58 !important;
  }
  .med-landing-hero .med-hero-badge {
    padding: 8px 13px;
    background: rgba(255,250,240,0.83);
    box-shadow: 0 8px 22px rgba(99,73,31,0.06);
    backdrop-filter: blur(8px);
  }
  .med-landing-hero .med-hero-ctas {
    margin-top: 6px;
  }
  .med-landing-hero .med-btn-ask,
  .med-landing-hero .med-btn-ghost {
    min-height: 50px;
  }
  .med-landing-hero .med-btn-ask {
    padding-inline: 24px;
    box-shadow: 0 12px 30px rgba(18,36,63,0.20);
  }
  .med-landing-hero .med-hero-note {
    max-width: 62ch;
    margin-top: 0;
    font-size: 0.70rem;
    color: #6b7584;
  }
  .med-landing-hero .med-trust-bar {
    margin-top: -6px;
    padding: 16px 20px;
    border-radius: 20px;
    background: rgba(255,255,255,0.90);
    backdrop-filter: blur(12px);
  }
  .med-landing-hero .med-trust-item small {
    max-width: 29ch;
  }
}

@media (min-width: 821px) and (max-width: 1100px) {
  .med-landing-hero .med-hero-desk {
    max-width: min(540px, 58%);
    padding-top: 26px;
  }
  .med-landing-hero .med-hero-desk h1 {
    max-width: 17ch;
    font-size: clamp(2.05rem, 3.4vw, 2.65rem);
  }
  .med-landing-hero .med-hero-flow span {
    padding-inline: 8px;
    font-size: 0.65rem;
  }
}

@media (max-width: 820px) {
  .med-landing-hero .med-hero-copy.med-m-only {
    max-width: 90%;
  }
  .med-landing-hero .med-hero-copy.med-m-only h1 {
    max-width: 15ch;
    margin-bottom: 10px;
    text-wrap: balance;
  }
  .med-landing-hero .med-hero-copy.med-m-only .med-lead {
    max-width: 36ch;
  }
}


/* —— Landing · Verslo paketas / legal event operations v1 —— */
.med-landing-hero .med-home-business {
  position: relative;
  overflow: hidden;
  margin: 22px 0;
  padding: clamp(22px, 3.2vw, 38px);
  border: 1px solid rgba(26,50,92,0.13);
  border-radius: 24px;
  color: #eef5ff;
  background:
    radial-gradient(circle at 92% 5%, rgba(184,148,91,0.21), transparent 28%),
    radial-gradient(circle at 5% 100%, rgba(56,104,158,0.20), transparent 34%),
    linear-gradient(145deg, #142e53 0%, #1d416d 58%, #17345b 100%);
  box-shadow: 0 22px 52px rgba(19,43,76,0.17);
}
.med-home-business::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: -95px;
  top: -115px;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 50%;
  box-shadow: 0 0 0 34px rgba(255,255,255,0.018), 0 0 0 70px rgba(255,255,255,0.012);
  pointer-events: none;
}
.med-home-business-head {
  position: relative;
  z-index: 1;
  max-width: 840px;
}
.med-home-business-kicker,
.med-home-specialist-kicker {
  display: inline-block;
  color: #e4c994;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.13em;
}
.med-home-business-head h2 {
  margin: 7px 0 10px;
  max-width: 25ch;
  color: #fff;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(1.55rem, 2.5vw, 2.35rem);
  line-height: 1.18;
  letter-spacing: -0.025em;
}
.med-home-business-head p {
  margin: 0;
  max-width: 78ch;
  color: #dbe6f3;
  font-size: 0.92rem;
  line-height: 1.62;
}
.med-home-business-head strong { color: #fff; }
.med-home-business-flow {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  margin: 20px 0;
  padding: 10px 12px;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 15px;
  background: rgba(255,255,255,0.055);
}
.med-home-business-flow span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 999px;
  color: #f4f7fb;
  background: rgba(255,255,255,0.055);
  font-size: 0.70rem;
  font-weight: 700;
  line-height: 1.15;
}
.med-home-business-flow i {
  color: #d5b67e;
  font-style: normal;
  font-weight: 800;
}
.med-home-business-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.med-home-business-grid article {
  min-width: 0;
  padding: 15px 14px;
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 15px;
  background: rgba(255,255,255,0.055);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
}
.med-home-business-num {
  display: block;
  margin-bottom: 8px;
  color: #d7b97f;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.10em;
}
.med-home-business-grid b {
  display: block;
  color: #fff;
  font-size: 0.86rem;
  line-height: 1.34;
}
.med-home-business-grid small {
  display: block;
  margin-top: 5px;
  color: #cbd9e9;
  font-size: 0.75rem;
  line-height: 1.48;
}
.med-home-specialist-card {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 15px;
  margin-top: 12px;
  padding: 18px;
  border: 1px solid rgba(228,201,148,0.25);
  border-radius: 17px;
  background: linear-gradient(135deg, rgba(228,201,148,0.10), rgba(255,255,255,0.055));
}
.med-home-specialist-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(228,201,148,0.30);
  border-radius: 15px;
  color: #f0d7a8;
  background: rgba(7,25,49,0.22);
}
.med-home-specialist-card h3 {
  margin: 4px 0 7px;
  color: #fff;
  font-size: 1rem;
  line-height: 1.35;
}
.med-home-specialist-card p {
  margin: 0;
  color: #dbe5f1;
  font-size: 0.80rem;
  line-height: 1.55;
}
.med-home-specialist-card p + p { margin-top: 7px; }
.med-home-specialist-card .med-home-specialist-price {
  color: #c9d6e5;
  font-size: 0.73rem;
}
.med-home-business-actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 17px;
}
.med-home-business-primary,
.med-home-business-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 17px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 800;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.med-home-business-primary {
  color: #17345b;
  background: #f3e3c2;
  box-shadow: 0 9px 22px rgba(4,20,39,0.18);
}
.med-home-business-secondary {
  color: #fff;
  border: 1px solid rgba(255,255,255,0.20);
  background: rgba(255,255,255,0.07);
}
.med-home-business-primary:hover,
.med-home-business-secondary:hover { transform: translateY(-1px); }
.med-home-business-primary:focus-visible,
.med-home-business-secondary:focus-visible {
  outline: 3px solid rgba(228,201,148,0.30);
  outline-offset: 3px;
}
.med-home-business-boundary {
  position: relative;
  z-index: 1;
  margin: 13px 0 0;
  padding-top: 11px;
  border-top: 1px solid rgba(255,255,255,0.09);
  color: #bfcddd;
  font-size: 0.70rem;
  line-height: 1.5;
}

@media (max-width: 980px) {
  .med-home-business-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .med-landing-hero .med-home-business {
    margin: 16px 0;
    padding: 18px 14px;
    border-radius: 19px;
  }
  .med-home-business-grid { grid-template-columns: 1fr; }
  .med-home-business-flow i { display: none; }
  .med-home-business-flow span {
    flex: 1 1 calc(50% - 7px);
    justify-content: center;
    text-align: center;
  }
  .med-home-specialist-card {
    grid-template-columns: 1fr;
    padding: 15px;
  }
  .med-home-specialist-icon { width: 46px; height: 46px; }
  .med-home-business-actions { display: grid; grid-template-columns: 1fr; }
  .med-home-business-primary,
  .med-home-business-secondary { width: 100%; box-sizing: border-box; }
}


/* —— Landing · private person legal event center v1 —— */
.med-landing-hero .med-home-private {
  position: relative;
  overflow: hidden;
  margin: 22px 0;
  padding: clamp(22px, 3.2vw, 38px);
  border: 1px solid rgba(26,50,92,0.12);
  border-radius: 24px;
  background:
    radial-gradient(circle at 94% 3%, rgba(187,151,93,0.15), transparent 26%),
    radial-gradient(circle at 3% 98%, rgba(55,101,151,0.10), transparent 31%),
    linear-gradient(145deg, #fbfcfe 0%, #f5f8fb 58%, #faf6ee 100%);
  box-shadow: 0 18px 44px rgba(25,50,90,0.08);
}
.med-home-private::before {
  content: "";
  position: absolute;
  right: -90px;
  top: -115px;
  width: 260px;
  height: 260px;
  border: 1px solid rgba(26,50,92,0.06);
  border-radius: 50%;
  box-shadow: 0 0 0 36px rgba(26,50,92,0.018), 0 0 0 72px rgba(184,148,91,0.014);
  pointer-events: none;
}
.med-home-private-head {
  position: relative;
  z-index: 1;
  max-width: 880px;
}
.med-home-private-kicker,
.med-home-private-dialogue-kicker,
.med-home-private-specialist-kicker {
  display: inline-block;
  color: #88672f;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.13em;
}
.med-home-private-head h2 {
  margin: 7px 0 10px;
  max-width: 28ch;
  color: #193761;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(1.55rem, 2.45vw, 2.3rem);
  line-height: 1.18;
  letter-spacing: -0.025em;
}
.med-home-private-head p {
  margin: 0;
  max-width: 80ch;
  color: #53667f;
  font-size: 0.92rem;
  line-height: 1.62;
}
.med-home-private-head strong { color: #18355f; }
.med-home-private-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 20px;
}
.med-home-private-grid article {
  min-width: 0;
  padding: 15px 14px;
  border: 1px solid rgba(26,50,92,0.10);
  border-radius: 15px;
  background: rgba(255,255,255,0.78);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.95);
}
.med-home-private-num {
  display: block;
  margin-bottom: 8px;
  color: #9a7740;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.10em;
}
.med-home-private-grid b {
  display: block;
  color: #17365f;
  font-size: 0.86rem;
  line-height: 1.34;
}
.med-home-private-grid small {
  display: block;
  margin-top: 5px;
  color: #627289;
  font-size: 0.75rem;
  line-height: 1.48;
}
.med-home-private-dialogue {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 15px;
  margin-top: 12px;
  padding: 18px;
  border: 1px solid rgba(30,70,116,0.12);
  border-radius: 17px;
  background: linear-gradient(135deg, rgba(232,241,249,0.88), rgba(255,255,255,0.72));
}
.med-home-private-dialogue-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(30,70,116,0.13);
  border-radius: 15px;
  color: #24517d;
  background: rgba(255,255,255,0.74);
}
.med-home-private-dialogue h3,
.med-home-private-specialist h3 {
  margin: 4px 0 7px;
  color: #18355f;
  font-size: 1rem;
  line-height: 1.35;
}
.med-home-private-dialogue p,
.med-home-private-specialist p {
  margin: 0;
  color: #586a82;
  font-size: 0.80rem;
  line-height: 1.55;
}
.med-home-private-dialogue p + p { margin-top: 7px; }
.med-home-private-dialogue-note {
  color: #6d7888 !important;
  font-size: 0.72rem !important;
}
.med-home-private-specialist {
  position: relative;
  z-index: 1;
  margin-top: 12px;
  padding: 17px 18px;
  border: 1px solid rgba(188,150,89,0.22);
  border-radius: 17px;
  background: linear-gradient(135deg, rgba(249,242,228,0.90), rgba(255,255,255,0.76));
}
.med-home-private-actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 17px;
}
.med-home-private-primary,
.med-home-private-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 17px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 800;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.med-home-private-primary {
  color: #fff;
  background: linear-gradient(135deg, #18355f, #2d5f91);
  box-shadow: 0 10px 24px rgba(24,53,95,0.18);
}
.med-home-private-secondary {
  color: #1d4772;
  border: 1px solid rgba(26,50,92,0.16);
  background: rgba(255,255,255,0.78);
}
.med-home-private-primary:hover,
.med-home-private-secondary:hover { transform: translateY(-1px); }
.med-home-private-primary:focus-visible,
.med-home-private-secondary:focus-visible {
  outline: 3px solid rgba(42,91,143,0.22);
  outline-offset: 3px;
}

/* Business package intentionally closes the homepage after the private-person section. */
.med-landing-hero .med-home-private + .med-home-business {
  margin-top: 14px;
  margin-bottom: 4px;
}

@media (max-width: 980px) {
  .med-home-private-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .med-landing-hero .med-home-private {
    margin: 16px 0;
    padding: 18px 14px;
    border-radius: 19px;
  }
  .med-home-private-grid { grid-template-columns: 1fr; }
  .med-home-private-dialogue {
    grid-template-columns: 1fr;
    padding: 15px;
  }
  .med-home-private-dialogue-icon { width: 46px; height: 46px; }
  .med-home-private-specialist { padding: 15px; }
  .med-home-private-actions { display: grid; grid-template-columns: 1fr; }
  .med-home-private-primary,
  .med-home-private-secondary { width: 100%; box-sizing: border-box; }
}
