/* Shared OVM portal shell and visual components, extracted from the existing portal. */
body {
  font-size:14px;
  line-height:1.5;
}

a {
  text-underline-offset:3px;
}

h1,h2,h3,p {
  margin-top:0;
}

h1 {
  font-family:var(--ovm-display);
  font-size:56px;
  line-height:1.05;
  letter-spacing:-.7px;
  margin:0 0 12px;
}

h2 {
  font-size:20px;
  line-height:1.25;
  margin:0 0 14px;
}

h3 {
  font-size:16px;
  margin:0 0 8px;
}

p {
  margin-bottom:14px;
}

small {
  font-size:12px;
}

.icon {
  width:19px;
  height:19px;
  flex-shrink:0;
}

.layout {
  min-height:100vh;
  display:grid;
  grid-template-columns:228px minmax(0,1fr);
}

.sidebar {
  position:sticky;
  top:0;
  height:100vh;
  display:flex;
  flex-direction:column;
  background:#fff;
  border-right:1px solid var(--ovm-line);
  padding:30px 17px 20px;
}

.brand {
  display:flex;
  align-items:center;
  gap:12px;
  padding:0 12px 40px;
  text-decoration:none;
  color:var(--ovm-ink);
  font-size:23px;
  font-weight:600;
  line-height:1.1;
}

.brand-subtitle {
  display:block;
  font-size:11px;
  font-weight:400;
  color:var(--ovm-muted);
  margin-top:4px;
}

.nav-label {
  font-size:10px;
  letter-spacing:1.1px;
  color:var(--ovm-muted);
  padding:0 12px;
  margin-bottom:12px;
}

.sidebar nav {
  display:grid;
  gap:7px;
}

.sidebar nav a {
  display:flex;
  align-items:center;
  gap:12px;
  min-height:46px;
  padding:11px 13px;
  border-radius:8px;
  text-decoration:none;
  color:var(--ovm-muted);
  font-weight:600;
  font-size:13px;
}

.sidebar nav a:hover {
  background:var(--ovm-tint);
  color:var(--ovm-accent);
}

.sidebar nav a[aria-current] {
  background:var(--ovm-accent);
  color:#fff;
  box-shadow:0 4px 10px #334c9b17;
}

.sidebar-note {
  border-left:2px solid #e9d783;
  margin:32px 12px 0;
  padding-left:12px;
}

.sidebar-note .eyebrow {
  font-size:10px;
  letter-spacing:1px;
}

.sidebar-note p {
  font-size:12px;
  color:var(--ovm-muted);
  margin:6px 0 0;
}

.account {
  margin-top:auto;
  padding:24px 8px 0;
}

.account-identity {
  display:flex;
  gap:10px;
  align-items:center;
}

.account-identity>div {
  min-width:0;
}

.account strong {
  font-size:12px;
  display:block;
}

.account small {
  font-size:10px;
  display:block;
  color:var(--ovm-muted);
  overflow-wrap:anywhere;
}

.account-menu {
  font-size:11px;
  margin-top:14px;
}

.account-menu summary {
  cursor:pointer;
  color:var(--ovm-muted);
  padding:6px 0;
}

.account-menu a {
  display:block;
  margin:10px 0;
}

.account-menu button {
  width:100%;
  margin-top:6px;
}

.avatar {
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  background:var(--ovm-tint);
  color:var(--ovm-accent);
  font-size:14px;
  font-weight:600;
  flex-shrink:0;
}

.avatar.small {
  width:33px;
  height:33px;
  border-radius:9px;
  font-size:12px;
}

.avatar.organization {
  width:64px;
  height:64px;
  border-radius:15px;
  background:#f0df96;
  font-family:var(--ovm-display);
  font-size:28px;
  color:var(--ovm-ink);
}

.main-shell {
  min-width:0;
  display:flex;
  flex-direction:column;
}

.topbar {
  min-height:65px;
  padding:16px 36px;
  border-bottom:1px solid var(--ovm-line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  font-size:12px;
  color:var(--ovm-muted);
  background:#ffffff70;
}

.separator {
  padding:0 12px;
  color:#a2aabd;
}

.topbar-end {
  display:flex;
  align-items:center;
  gap:7px;
}

.topbar-end .icon {
  width:15px;
  height:15px;
}

main {
  width:100%;
  max-width:1540px;
  min-width:0;
  padding:34px 36px 44px;
  margin:0 auto;
}

.app-footer {
  margin-top:auto;
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:20px 36px;
  color:var(--ovm-muted);
  font-size:11px;
  border-top:1px solid var(--ovm-line);
}

.page-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:26px;
}

.page-heading h1 {
  margin-bottom:9px;
}

.page-heading .intro {
  margin:0;
}

.eyebrow {
  font-size:11px;
  letter-spacing:1.1px;
  font-weight:600;
  color:var(--ovm-accent);
  margin:0 0 10px;
  text-transform:uppercase;
}

.intro {
  color:var(--ovm-muted);
  font-size:14px;
  max-width:650px;
  line-height:1.7;
  margin-bottom:24px;
}

.organization-heading {
  display:flex;
  align-items:center;
  gap:18px;
}

.organization-heading h1 {
  font-size:46px;
}

.heading-meta {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  color:var(--ovm-muted);
  font-size:12px;
}

.highlight {
  background:linear-gradient(transparent 64%,#ebd880 64%);
  padding:0 3px;
}

.metrics {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-bottom:26px;
}

.metric {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:20px 22px;
  background:#fff;
  border:1px solid var(--ovm-line);
  border-radius:12px;
  min-height:110px;
}

.metric:first-child {
  background:var(--ovm-accent);
  color:white;
  border-color:var(--ovm-accent);
}

.metric-label {
  display:block;
  font-size:12px;
  opacity:.8;
  margin-bottom:8px;
}

.metric-value {
  font-family:var(--ovm-display);
  font-size:38px;
  line-height:1;
  letter-spacing:-.4px;
  display:block;
}

.metric-value small {
  font-family:var(--ovm-sans);
  font-size:15px;
  color:var(--ovm-muted);
  font-weight:400;
}

.metric:first-child small {
  color:#ffffffb0;
}

.metric .metric-icon {
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:var(--ovm-tint);
  color:var(--ovm-accent);
}

.metric:first-child .metric-icon {
  background:#ffffff18;
  color:#fff;
}

.metric:nth-child(3) .metric-icon {
  background:#fbf4d5;
  color:#76622a;
}

.metric-note {
  font-size:11px;
  opacity:.8;
  display:block;
  margin-top:6px;
}

.panel {
  background:white;
  border:1px solid var(--ovm-line);
  border-radius:12px;
  overflow:hidden;
}

.panel-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:19px 22px;
  border-bottom:1px solid var(--ovm-line);
}

.panel-heading h2 {
  font-size:16px;
  margin:0;
}

.panel-heading .muted {
  font-size:12px;
}

.count {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:23px;
  padding:2px 7px;
  margin-left:7px;
  background:var(--ovm-tint);
  border-radius:5px;
  color:var(--ovm-accent);
  font-size:11px;
  font-family:var(--ovm-sans);
  vertical-align:middle;
}

.panel-body {
  padding:22px;
}

.panel-body>p:last-child {
  margin-bottom:0;
}

.toolbar {
  display:flex;
  align-items:center;
  gap:10px;
  padding:17px 22px;
  border-bottom:1px solid var(--ovm-line);
  flex-wrap:wrap;
}

.search-field {
  display:flex;
  align-items:center;
  gap:9px;
  border:1px solid var(--ovm-line);
  border-radius:7px;
  padding:0 12px;
  max-width:400px;
  flex:1;
  min-width:180px;
  background:#fbfcfe;
}

.search-field input {
  border:0!important;
  background:transparent!important;
  padding-left:0!important;
  min-height:38px!important;
  outline-offset:0;
}

.search-field .icon {
  color:var(--ovm-muted);
  width:16px;
}

.toolbar select {
  width:auto;
  min-width:150px;
}

.table-scroll {
  overflow-x:auto;
}

table {
  width:100%;
  border-collapse:collapse;
  text-align:left;
}

th {
  font-size:10px;
  letter-spacing:.7px;
  text-transform:uppercase;
  background:#f9fafe;
  color:var(--ovm-muted);
  font-weight:600;
}

td,th {
  padding:14px 22px;
  border-bottom:1px solid var(--ovm-line);
  vertical-align:middle;
}

td {
  font-size:13px;
}

tbody tr:last-child td {
  border-bottom:0;
}

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

tbody tr:hover {
  background:#fafbfe;
}

.organization-link {
  display:flex;
  align-items:center;
  gap:13px;
  text-decoration:none;
  color:var(--ovm-ink);
  font-weight:600;
}

.organization-link small {
  font-weight:400;
}

.organization-link:hover strong {
  color:var(--ovm-accent);
}

.table-action {
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  font-weight:600;
  white-space:nowrap;
}

.table-action .icon {
  width:15px;
}

.table-bottom {
  padding:13px 22px;
  background:#fbfcfe;
  color:var(--ovm-muted);
  font-size:11px;
}

.badge {
  font-size:10px;
  padding:4px 8px;
  font-weight:400;
  border-radius:5px;
}

.badge.active {
  color:#27684f;
  background:#e8f4ed;
}

.badge.paused {
  color:#8b642d;
  background:#fbf0d9;
}

.badge.neutral {
  color:#68738a;
  background:#f0f2f7;
}

.badge::before {
  width:4px;
  height:4px;
}

.badge.no-dot::before {
  display:none;
}

.button {
  min-height:39px;
  padding:9px 13px;
  font-size:12px;
  border-radius:7px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-decoration:none;
  font-weight:600;
}

.button .icon {
  width:16px;
  height:16px;
}

.button.primary {
  background:var(--ovm-accent);
  color:white;
  border:1px solid var(--ovm-accent);
}

.button.secondary {
  background:#fff;
  color:var(--ovm-ink);
  border:1px solid var(--ovm-control-border);
  box-shadow:0 1px 2px #182e5b08;
}

.button.compact {
  min-height:32px;
  padding:5px 10px;
  font-size:11px;
}

.button:hover {
  filter:brightness(.97);
}

.actions {
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}

.actions form {
  margin:0;
}

.back {
  display:inline-flex;
  align-items:center;
  gap:6px;
  text-decoration:none;
  font-size:12px;
  color:var(--ovm-muted);
  margin-bottom:20px;
}

.back .icon {
  width:14px;
  transform:rotate(180deg);
}

.anchor-tabs {
  display:flex;
  gap:24px;
  border-bottom:1px solid var(--ovm-line);
  margin-bottom:24px;
  overflow-x:auto;
}

.anchor-tabs a {
  padding:12px 0;
  color:var(--ovm-muted);
  text-decoration:none;
  font-size:13px;
  white-space:nowrap;
}

.anchor-tabs a:first-child {
  border-bottom:2px solid var(--ovm-accent);
  color:var(--ovm-accent);
  font-weight:600;
}

.content-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:22px;
  align-items:start;
}

.stack {
  display:grid;
  gap:20px;
}

.section {
  margin-top:24px;
  scroll-margin-top:20px;
}

.section-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
}

.section-heading h2 {
  margin:0;
}

.padded {
  padding:22px;
}

.empty {
  padding:30px 22px;
  color:var(--ovm-muted);
  font-size:13px;
}

.empty p {
  margin:7px 0 0;
}

.member {
  border-bottom:1px solid var(--ovm-line);
}

.member:last-child {
  border-bottom:0;
}

.member>summary {
  display:flex;
  align-items:center;
  gap:12px;
  padding:17px 20px;
  cursor:pointer;
  list-style:none;
}

.member>summary::-webkit-details-marker {
  display:none;
}

.member>summary:hover {
  background:#f8f9fd;
}

.member-identity {
  min-width:0;
  flex:1;
}

.member-identity strong {
  display:block;
  overflow-wrap:anywhere;
  font-size:13px;
}

.member-identity small {
  display:block;
  color:var(--ovm-muted);
  font-size:11px;
  margin-top:3px;
}

.member .disclosure {
  width:15px;
  transition:transform .15s;
}

.member[open] .disclosure {
  transform:rotate(90deg);
}

.member-body {
  padding:0 20px 20px;
  background:#fafbfe;
}

.member-role-form {
  display:flex;
  align-items:end;
  gap:12px;
  padding:16px 0;
  flex-wrap:wrap;
}

.member-role-form .role-field {
  flex:1;
  min-width:160px;
  max-width:220px;
}

.member-role-form label.checkbox {
  display:flex;
  align-items:center;
  gap:5px;
  min-height:38px;
  font-size:12px;
  font-weight:400;
  margin:0;
}

.member-service {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 0;
  border-top:1px solid var(--ovm-line);
  flex-wrap:wrap;
}

.member-service-title {
  font-size:12px;
  font-weight:600;
}

.member-service .muted {
  display:block;
  font-size:11px;
}

.allocation-form {
  display:flex;
  gap:7px;
  align-items:center;
  flex-wrap:wrap;
}

.allocation-form input[type=number] {
  width:100px;
  min-height:32px;
  padding:5px 9px;
}

.allocation-form label {
  font-size:11px;
  margin:0;
}

.service-mini {
  padding:19px 20px;
  border-bottom:1px solid var(--ovm-line);
}

.service-mini:last-child {
  border-bottom:0;
}

.service-name {
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:13px;
  font-size:13px;
  font-weight:600;
}

.service-name .icon {
  color:var(--ovm-accent);
}

.service-name .badge {
  margin-left:auto;
}

.usage-line {
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:8px;
  font-size:12px;
  color:var(--ovm-muted);
}

.usage-line strong {
  font-size:16px;
  color:var(--ovm-ink);
}

progress {
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  height:6px;
  border:0;
  border-radius:10px;
  overflow:hidden;
  background:#e9edf5;
  margin:11px 0 8px;
}

progress::-webkit-progress-bar {
  background:#e9edf5;
  border-radius:10px;
}

progress::-webkit-progress-value {
  background:var(--ovm-accent);
  border-radius:10px;
}

progress::-moz-progress-bar {
  background:var(--ovm-accent);
  border-radius:10px;
}

.service-mini .muted {
  font-size:11px;
  margin:7px 0 0;
}

.mode-form {
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid var(--ovm-line);
  display:flex;
  gap:7px;
  align-items:end;
}

.mode-form>div {
  flex:1;
  min-width:0;
}

.mode-form label {
  font-size:11px;
}

.mode-form select {
  font-size:11px;
  min-height:33px;
  padding:5px 7px;
}

.aside-note {
  padding:17px 20px;
  background:#faf4de;
  border:1px solid #e9deba;
  border-radius:10px;
  font-size:12px;
  color:#6b5c38;
}

.aside-note p {
  margin:5px 0 0;
}

.invite-panel {
  background:#f8f9fe;
}

.invite-panel .panel-heading {
  background:#f1f3fc;
}

.two-column {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}

.form-page {
  max-width:680px;
}

.form-page h1 {
  font-size:48px;
}

.form-page>form,.auth form {
  background:#fff;
  border:1px solid var(--ovm-line);
  border-radius:12px;
  padding:26px;
  margin-top:22px;
}

.form-page .intro {
  font-size:13px;
}

.form-page.section {
  padding:0;
}

.auth {
  max-width:440px;
  margin:24px auto;
}

.auth h1 {
  font-size:52px;
}

.auth>p {
  color:var(--ovm-muted);
  font-size:13px;
}

.form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:start;
}

form>p {
  margin:0 0 18px;
}

form label,.form-page>label {
  display:block;
  font-size:12px;
  font-weight:600;
  margin-bottom:6px;
}

input:not([type=checkbox]):not([type=hidden]),select,textarea {
  width:100%;
  min-height:39px;
  padding:8px 11px;
  border:1px solid var(--ovm-control-border);
  border-radius:7px;
  background:#fff;
  font:inherit;
  color:var(--ovm-ink);
}

input[type=checkbox] {
  vertical-align:middle;
  margin-right:6px;
}

.helptext {
  display:block;
  font-size:11px;
  line-height:1.6;
  color:var(--ovm-muted);
  margin-top:5px;
}

.helptext ul {
  padding-left:16px;
}

.errorlist {
  color:#a33232;
  padding-left:17px;
  font-size:12px;
}

.message {
  background:#eaf1ff;
  border:1px solid #cbd9f6;
  border-radius:8px;
  padding:12px 16px;
  font-size:13px;
  margin-bottom:20px;
}

.message.error {
  background:#fff0ef;
  color:#8f2e2e;
  border-color:#efd1d1;
}

.messages .message:last-child {
  margin-bottom:22px;
}

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

.tool-card {
  background:#fff;
  border:1px solid var(--ovm-line);
  border-radius:13px;
  overflow:hidden;
}

.tool-card-heading {
  display:flex;
  gap:14px;
  align-items:center;
  padding:24px;
  border-bottom:1px solid var(--ovm-line);
}

.tool-symbol {
  width:47px;
  height:47px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:var(--ovm-tint);
  color:var(--ovm-accent);
}

.tool-symbol .icon {
  width:24px;
  height:24px;
}

.tool-card h2 {
  margin:0 0 4px;
}

.tool-card p {
  font-size:13px;
  color:var(--ovm-muted);
  margin:0;
}

.tool-card-body {
  padding:22px 24px;
}

.tool-card-body .usage-line {
  margin-top:12px;
}

.tool-card-footer {
  padding:15px 24px;
  background:#fafbfe;
  border-top:1px solid var(--ovm-line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.workspace-card {
  display:flex;
  align-items:center;
  gap:15px;
  padding:24px;
  border:1px solid var(--ovm-line);
  border-radius:12px;
  background:#fff;
  text-decoration:none;
}

.workspace-card h2 {
  font-size:20px;
  margin:0 0 5px;
}

.workspace-card .icon {
  margin-left:auto;
}

.workspace-card:hover {
  border-color:var(--ovm-accent);
}

.workspace-card small {
  color:var(--ovm-muted);
}

.welcome-panel {
  border-left:3px solid #e4ce72;
  padding:15px 20px;
  background:#fbf7e9;
  border-radius:0 9px 9px 0;
  margin-top:24px;
  max-width:720px;
}

.welcome-panel p {
  font-size:12px;
  margin:4px 0 0;
  color:var(--ovm-muted);
}

.muted {
  color:var(--ovm-muted);
}

.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;
}

:focus-visible {
  outline:3px solid #8ca8e4;
  outline-offset:3px;
}

.skip-link {
  position:fixed;
  left:12px;
  top:-100px;
  z-index:5;
  padding:12px;
}

.skip-link:focus {
  top:12px;
}

@media(min-width:1550px) {
  main {
    padding:40px 48px;
  }
  .content-grid {
    grid-template-columns:minmax(0,1fr) 360px;
  }
}

@media(max-width:1100px) {
  .content-grid {
    grid-template-columns:minmax(0,1fr);
  }
  .aside-stack {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
  }
  .aside-note {
    grid-column:1/-1;
  }
  .layout {
    grid-template-columns:205px minmax(0,1fr);
  }
  main {
    padding:26px;
  }
  .topbar {
    padding:16px 26px;
  }
  .metric {
    padding:17px;
  }
  .metric .metric-icon {
    display:none;
  }
  .organization-heading h1 {
    font-size:40px;
  }
  .form-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:760px) {
  .layout {
    display:block;
  }
  .sidebar {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:16px 12px;
    position:static;
    height:auto;
    padding:18px 20px;
    border-right:0;
    border-bottom:1px solid var(--ovm-line);
  }
  .brand {
    grid-column:1;
    grid-row:1;
    padding:0;
    font-size:20px;
  }
  .brand img {
    width:42px;
  }
  .sidebar nav {
    grid-column:1/-1;
    grid-row:2;
    display:flex;
    gap:7px;
    flex-wrap:wrap;
  }
  .sidebar nav a {
    min-height:38px;
    padding:8px 11px;
    font-size:12px;
  }
  .nav-label,.sidebar-note {
    display:none;
  }
  .account {
    padding:0;
    position:static;
    grid-column:2;
    grid-row:1;
    display:flex;
    align-items:center;
    gap:8px;
    margin:0;
    min-width:0;
  }
  .account-identity>div,.account-menu {
    display:none;
  }
  .account-identity .avatar {
    width:33px;
    height:33px;
  }
  .topbar {
    min-height:48px;
    padding:12px 20px;
    font-size:11px;
  }
  .topbar-end {
    display:none;
  }
  main {
    padding:24px 20px 32px;
  }
  .page-heading {
    align-items:flex-start;
    flex-wrap:wrap;
    gap:17px;
  }
  h1 {
    font-size:46px;
  }
  .organization-heading h1 {
    font-size:36px;
  }
  .avatar.organization {
    width:52px;
    height:52px;
    font-size:25px;
  }
  .page-heading .actions {
    width:100%;
  }
  .metrics {
    gap:9px;
    margin-bottom:22px;
  }
  .metric {
    min-height:95px;
    padding:14px 12px;
    align-items:flex-start;
  }
  .metric-label {
    font-size:10px;
  }
  .metric-value {
    font-size:29px;
  }
  .metric-value small {
    font-size:11px;
  }
  .metric-note {
    font-size:10px;
  }
  .aside-stack,.two-column,.tool-grid {
    grid-template-columns:1fr;
  }
  .panel-heading {
    padding:16px;
  }
  .toolbar {
    padding:14px;
  }
  .toolbar select {
    min-width:130px;
    flex:1;
  }
  .toolbar .search-field {
    max-width:none;
    flex-basis:100%;
  }
  td,th {
    padding:14px 16px;
  }
  .organization-table .seat-column {
    display:none;
  }
  .organization-link {
    gap:10px;
  }
  .organization-link .avatar {
    width:34px;
    height:34px;
    font-size:12px;
  }
  .organization-table .table-action {
    font-size:0;
    gap:0;
  }
  .organization-table .table-action .icon {
    width:18px;
  }
  .member>summary {
    padding:14px;
    gap:9px;
  }
  .member-identity strong {
    font-size:12px;
  }
  .member>summary>.badge {
    font-size:9px;
  }
  .member-body {
    padding:0 14px 16px;
  }
  .member-role-form {
    gap:10px;
  }
  .anchor-tabs {
    gap:22px;
  }
  .anchor-tabs a {
    font-size:12px;
  }
  .app-footer {
    padding:18px 20px;
  }
  .app-footer span:last-child {
    display:none;
  }
  .form-page>form,.auth form {
    padding:20px;
  }
  .form-page h1 {
    font-size:40px;
  }
  .tool-card-heading {
    padding:20px;
  }
  .tool-card-body {
    padding:18px 20px;
  }
  .tool-card-footer {
    padding:14px 20px;
  }
}

@media(max-width:760px) {
  .account-menu {
    display:block;
    margin-top:5px;
    text-align:right;
    position:relative;
  }
  .account-menu summary {
    padding:4px 0;
    font-size:10px;
  }
  .account-menu[open] {
    background:white;
    padding:7px 12px;
    border:1px solid var(--ovm-line);
    border-radius:8px;
    box-shadow:0 8px 25px #182e5b15;
    z-index:20;
    min-width:170px;
  }
  .account-menu[open] a {
    text-align:left;
  }
  .account-menu[open] form {
    margin:0;
  }
}
