/*
 * MyGuy Forgejo UI - persistent custom override.
 * Loaded by Forgejo from GITEA_CUSTOM/public/assets/css/custom.css.
 */
:root {
  --myguy-slate-950: #111820;
  --myguy-slate-900: #16212c;
  --myguy-slate-850: #1a2734;
  --myguy-slate-800: #203040;
  --myguy-slate-700: #2a3a4a;
  --myguy-border: #33485a;
  --myguy-border-subtle: #273a4a;
  --myguy-text: #e7eef5;
  --myguy-muted: #9dafc0;
  --myguy-cyan: #35bdf2;
  --myguy-cyan-hover: #63cef6;
  --myguy-blue: #3186d9;

  --color-primary: var(--myguy-cyan);
  --color-primary-dark-1: #259dce;
  --color-primary-dark-2: #1b7fa9;
  --color-primary-light-1: #70d4f6;
  --color-primary-light-2: #a1e4fb;
  --color-body: var(--myguy-slate-950);
  --color-box-body: var(--myguy-slate-900);
  --color-box-header: var(--myguy-slate-850);
  --color-nav-bg: #101820;
  --color-card: var(--myguy-slate-900);
  --color-secondary: var(--myguy-slate-800);
  --color-light: #1b2936;
  --color-hover: #223444;
  --color-text: var(--myguy-text);
  --color-text-dark: var(--myguy-muted);
  --color-text-light: #778b9e;
  --color-grey: var(--myguy-muted);
  --color-divider: var(--myguy-border-subtle);
  --color-input-background: #121e29;
  --color-input-border: #3b5265;
  --color-markup-table-row: #182632;
}

html[data-theme="forgejo-auto"],
html[data-theme="forgejo-dark"] {
  --color-body: var(--myguy-slate-950);
  --color-box-body: var(--myguy-slate-900);
  --color-box-header: var(--myguy-slate-850);
  --color-nav-bg: #101820;
  --color-card: var(--myguy-slate-900);
  --color-secondary: var(--myguy-slate-800);
  --color-light: #1b2936;
  --color-hover: #223444;
  --color-text: var(--myguy-text);
  --color-text-dark: var(--myguy-muted);
  --color-text-light: #778b9e;
  --color-divider: var(--myguy-border-subtle);
  --color-input-background: #121e29;
  --color-input-border: #3b5265;
}

body,
.full.height {
  background: var(--myguy-slate-950);
}

#navbar {
  min-height: 52px;
  background: #101820;
  border-bottom: 1px solid var(--myguy-border-subtle);
  box-shadow: none;
}

#navbar .item,
#navbar .item svg {
  color: #c8d5e0;
}

#navbar .item:hover,
#navbar .item.active {
  color: #ffffff;
  background: #1a2a37;
}

#navbar .navbar-brand {
  font-weight: 700;
  letter-spacing: .025em;
}

#navbar .navbar-brand img {
  max-height: 27px;
}

.page-content {
  padding-top: 20px;
  padding-bottom: 28px;
}

.ui.container {
  max-width: 1280px;
}

.ui.segment,
.ui.segments,
.ui.attached.segment,
.repository .header-wrapper,
.repository .repo-header,
.dashboard .issue.header {
  background: var(--myguy-slate-900);
  border-color: var(--myguy-border-subtle);
  border-radius: 3px;
  box-shadow: none;
}

.ui.segment > .ui.header,
.ui.top.attached.header {
  background: var(--myguy-slate-850);
  border-color: var(--myguy-border-subtle);
  color: var(--myguy-text);
}

.ui.cards > .card,
.ui.card,
.repository.file.list #repo-files-table,
.dashboard .repo-list,
.user.profile .ui.card {
  background: var(--myguy-slate-900);
  border: 1px solid var(--myguy-border-subtle);
  border-radius: 3px;
  box-shadow: none;
}

.ui.cards > .card:hover,
.ui.card:hover {
  border-color: #42627a;
  box-shadow: inset 3px 0 0 var(--myguy-cyan);
  transform: none;
}

.ui.cards > .card > .content,
.ui.card > .content {
  border-color: var(--myguy-border-subtle);
}

.ui.cards > .card .header,
.ui.card .header,
.repository .repo-title {
  color: var(--myguy-text);
}

.ui.cards > .card .meta,
.ui.card .meta,
.muted,
.text.grey {
  color: var(--myguy-muted) !important;
}

.dashboard .repo-list .item {
  padding: 14px 16px;
  border-color: var(--myguy-border-subtle);
}

.dashboard .repo-list .item:hover {
  background: #1c2b38;
}

.ui.button,
.ui.primary.button {
  border-radius: 3px;
  box-shadow: none;
  font-weight: 600;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.ui.primary.button,
.ui.blue.button {
  background: var(--myguy-blue);
  color: #fff;
}

.ui.primary.button:hover,
.ui.blue.button:hover {
  background: #3b9bea;
}

.ui.button:not(.primary):not(.blue):not(.red):not(.green) {
  background: #253745;
  border: 1px solid #3a5366;
  color: #dce8f1;
}

.ui.button:not(.primary):not(.blue):not(.red):not(.green):hover {
  background: #304656;
  border-color: #527188;
}

.ui.input > input,
.ui.form input:not([type]),
.ui.form input[type="text"],
.ui.form input[type="email"],
.ui.form input[type="password"],
.ui.form input[type="number"],
.ui.form textarea,
.ui.form select {
  background: #121e29;
  border: 1px solid #3b5265;
  border-radius: 3px;
  color: var(--myguy-text);
}

.ui.input > input:focus,
.ui.form input:focus,
.ui.form textarea:focus,
.ui.form select:focus {
  border-color: var(--myguy-cyan);
  box-shadow: 0 0 0 1px var(--myguy-cyan);
}

.ui.tabular.menu,
.ui.secondary.pointing.menu {
  border-color: var(--myguy-border-subtle);
}

.ui.tabular.menu .item,
.ui.secondary.pointing.menu .item {
  border-radius: 0;
  color: var(--myguy-muted);
}

.ui.tabular.menu .active.item,
.ui.secondary.pointing.menu .active.item {
  background: var(--myguy-slate-900);
  border-color: var(--myguy-cyan);
  color: var(--myguy-text);
  font-weight: 600;
}

.ui.label,
.ui.basic.label {
  border-radius: 2px;
  box-shadow: none;
  font-weight: 600;
}

.ui.basic.label {
  background: #1b2c39 !important;
  border-color: #3c586c !important;
  color: #c8dbe8 !important;
}

.repository .header-wrapper {
  border-bottom: 1px solid var(--myguy-border-subtle);
}

.repository .header-wrapper .repo-title {
  font-weight: 650;
}

.repository .file.list .item,
.repository .file.list #repo-files-table tr {
  border-color: var(--myguy-border-subtle);
}

.repository .file.list .item:hover,
.repository .file.list #repo-files-table tr:hover {
  background: #1c2b38;
}

.contribution-graph .contribution-calendar .contrib-column {
  border-color: var(--myguy-border-subtle);
}

.contribution-graph .contribution-calendar .contrib-square {
  border-radius: 1px;
}

.contribution-graph .contribution-calendar .contrib-square[style*="background-color"] {
  outline: 1px solid rgba(53, 189, 242, .08);
  outline-offset: -1px;
}

.ui.table {
  background: var(--myguy-slate-900);
  border-color: var(--myguy-border-subtle);
  color: var(--myguy-text);
}

.ui.table thead th {
  background: var(--myguy-slate-850);
  color: #cddbe6;
}

.ui.table tr td,
.ui.table tr th {
  border-color: var(--myguy-border-subtle);
}

.ui.table tr:hover td {
  background: #1c2b38;
}

footer,
.page-footer {
  background: #101820;
  border-top: 1px solid var(--myguy-border-subtle);
  color: #8fa3b5;
}

footer a,
.page-footer a {
  color: #a9c7da;
}

footer a:hover,
.page-footer a:hover {
  color: var(--myguy-cyan-hover);
}

.ui.message {
  border-radius: 3px;
  box-shadow: none;
}

@media (max-width: 767.98px) {
  #navbar {
    min-height: 48px;
  }

  .page-content {
    padding-top: 12px;
    padding-bottom: 20px;
  }

  .ui.container {
    margin-left: .75rem !important;
    margin-right: .75rem !important;
  }

  .dashboard .repo-list .item {
    padding: 12px;
  }
}

/* MyGuy refinement pass: brand assets, theme control, and restrained motion. */
html {
  transition: background-color .18s ease, color .18s ease;
}

#navbar {
  padding-inline: 8px;
}

#navbar .item {
  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}

#navbar .item.active {
  box-shadow: inset 0 -2px 0 var(--myguy-cyan);
}

#navbar-logo {
  width: 146px;
  min-width: 146px;
  height: 52px;
  padding: 8px 12px !important;
  background: url("/assets/img/myguy-horizontal.svg") left center / 122px auto no-repeat;
}

#navbar-logo img {
  visibility: hidden;
  width: 0;
  height: 0;
}

.myguy-theme-toggle {
  gap: 7px;
  min-width: 76px;
  justify-content: center;
  border-left: 1px solid var(--myguy-border-subtle) !important;
  border-radius: 0 !important;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .025em;
}

.myguy-theme-toggle .myguy-theme-icon {
  color: var(--myguy-cyan);
  font-size: 15px;
  line-height: 1;
}

.ui.cards > .card,
.ui.card,
.dashboard .repo-list .item,
.ui.button,
.ui.tabular.menu .item,
.ui.secondary.pointing.menu .item {
  transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease;
}

.ui.dropdown .menu {
  transform: translateY(-3px);
  transform-origin: top center;
  transition: opacity .14s ease, transform .14s ease;
}

.ui.dropdown.active > .menu,
.ui.dropdown.visible > .menu {
  transform: translateY(0);
}

.ui.cards > .card:hover,
.ui.card:hover {
  box-shadow: inset 3px 0 0 var(--myguy-cyan), 0 6px 16px rgba(0, 0, 0, .12);
}

.ui.empty.message,
.empty.segment,
.ui.placeholder.segment {
  background: #13212d;
  border: 1px dashed #3d586b;
  border-radius: 3px;
  color: var(--myguy-muted);
}

.ui.menu .item {
  font-weight: 550;
}

.ui.menu .item > .label {
  margin-left: 6px;
}

.ui.secondary.menu .dropdown.item > .menu {
  border: 1px solid var(--myguy-border);
  border-radius: 3px;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .16);
}

.ui.secondary.menu .dropdown.item > .menu > .item:hover {
  background: #223444;
}

@media (prefers-reduced-motion: no-preference) {
  .page-content {
    animation: myguy-page-in .18s ease both;
  }
}

@keyframes myguy-page-in {
  from { opacity: 0; transform: translateY(3px); }
  to { opacity: 1; transform: translateY(0); }
}

html[data-myguy-theme="light"] {
  --myguy-slate-950: #edf3f7;
  --myguy-slate-900: #ffffff;
  --myguy-slate-850: #f3f7fa;
  --myguy-slate-800: #e5edf2;
  --myguy-slate-700: #d5e1e8;
  --myguy-border: #b5c6d2;
  --myguy-border-subtle: #d6e1e8;
  --myguy-text: #162431;
  --myguy-muted: #587083;
  --color-body: var(--myguy-slate-950);
  --color-box-body: var(--myguy-slate-900);
  --color-box-header: var(--myguy-slate-850);
  --color-nav-bg: #f8fbfd;
  --color-card: var(--myguy-slate-900);
  --color-secondary: var(--myguy-slate-800);
  --color-light: #eaf1f5;
  --color-hover: #dfeaf0;
  --color-text: var(--myguy-text);
  --color-text-dark: var(--myguy-muted);
  --color-text-light: #718899;
  --color-divider: var(--myguy-border-subtle);
  --color-input-background: #ffffff;
  --color-input-border: #9eb4c3;
}

html[data-myguy-theme="light"] body,
html[data-myguy-theme="light"] .full.height {
  background: var(--myguy-slate-950);
}

html[data-myguy-theme="light"] #navbar,
html[data-myguy-theme="light"] footer,
html[data-myguy-theme="light"] .page-footer {
  background: #f8fbfd;
}

html[data-myguy-theme="light"] #navbar .item,
html[data-myguy-theme="light"] #navbar .item svg {
  color: #365064;
}

html[data-myguy-theme="light"] #navbar .item:hover,
html[data-myguy-theme="light"] #navbar .item.active,
html[data-myguy-theme="light"] .dashboard .repo-list .item:hover,
html[data-myguy-theme="light"] .repository .file.list .item:hover,
html[data-myguy-theme="light"] .repository .file.list #repo-files-table tr:hover,
html[data-myguy-theme="light"] .ui.table tr:hover td {
  background: #e1edf3;
  color: #132230;
}

html[data-myguy-theme="light"] .ui.button:not(.primary):not(.blue):not(.red):not(.green) {
  background: #edf3f7;
  border-color: #aec1cd;
  color: #244055;
}

html[data-myguy-theme="light"] .ui.button:not(.primary):not(.blue):not(.red):not(.green):hover {
  background: #e0ebf1;
  border-color: #819dad;
}

html[data-myguy-theme="light"] .ui.input > input,
html[data-myguy-theme="light"] .ui.form input:not([type]),
html[data-myguy-theme="light"] .ui.form input[type="text"],
html[data-myguy-theme="light"] .ui.form input[type="email"],
html[data-myguy-theme="light"] .ui.form input[type="password"],
html[data-myguy-theme="light"] .ui.form input[type="number"],
html[data-myguy-theme="light"] .ui.form textarea,
html[data-myguy-theme="light"] .ui.form select {
  background: #fff;
  border-color: #9eb4c3;
  color: #162431;
}

html[data-myguy-theme="light"] .ui.empty.message,
html[data-myguy-theme="light"] .empty.segment,
html[data-myguy-theme="light"] .ui.placeholder.segment {
  background: #f7fafc;
  border-color: #b8cbd6;
}

@media (max-width: 767.98px) {
  #navbar-logo {
    width: 48px;
    min-width: 48px;
    padding-inline: 8px !important;
    background-image: url("/assets/img/myguy-symbol.svg");
    background-size: 29px 29px;
    background-position: center;
  }

  .myguy-theme-toggle {
    min-width: 64px;
    padding-inline: 8px !important;
  }

  .myguy-theme-toggle .myguy-theme-label {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  html,
  #navbar .item,
  .ui.cards > .card,
  .ui.card,
  .dashboard .repo-list .item,
  .ui.button,
  .ui.tabular.menu .item,
  .ui.secondary.pointing.menu .item,
  .ui.dropdown .menu {
    animation: none !important;
    transition: none !important;
  }
}

/* White-label completion: shared public, login, dashboard, repository, and error surfaces. */
#navbar a[href*="forgejo.org"], .page-footer .left-links { display: none !important; }
.page-footer { min-height: 48px; padding: 10px 18px; }
.page-footer .right-links { width: 100%; justify-content: flex-end; gap: 14px; }
.myguy-footer-signature { color: var(--myguy-muted); font-size: 12px; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.myguy-home { min-height: calc(100vh - 100px); padding: 0 0 48px; background: linear-gradient(180deg, rgba(49, 134, 217, .07), transparent 240px), var(--myguy-slate-950); }
.myguy-home-shell { max-width: 1120px; margin: 0 auto; padding: 60px 24px 20px; }
.myguy-home-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr); gap: 56px; align-items: center; padding: 48px 0 52px; border-bottom: 1px solid var(--myguy-border-subtle); }
.myguy-home-brand { width: min(340px, 100%); height: auto; margin-bottom: 30px; }
.myguy-home-kicker { margin: 0 0 12px; color: var(--myguy-cyan); font-size: 12px; font-weight: 700; letter-spacing: .14em; }
.myguy-home h1 { max-width: 680px; margin: 0; color: var(--myguy-text); font-size: clamp(32px, 5vw, 52px); letter-spacing: -.035em; line-height: 1.06; }
.myguy-home-copy { max-width: 590px; margin: 20px 0 28px; color: var(--myguy-muted); font-size: 17px; line-height: 1.65; }
.myguy-home-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.myguy-home-panel { padding: 26px; background: #14212c; border: 1px solid var(--myguy-border); border-left: 3px solid var(--myguy-cyan); border-radius: 3px; }
.myguy-home-panel-label { margin: 0 0 10px; color: var(--myguy-cyan); font-size: 12px; font-weight: 700; letter-spacing: .1em; }
.myguy-home-panel p:last-child { margin-bottom: 0; color: var(--myguy-muted); line-height: 1.6; }
.myguy-home-features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; padding-top: 34px; }
.myguy-home-feature { padding: 20px 0; }
.myguy-home-feature h2 { margin: 0 0 9px; color: var(--myguy-text); font-size: 16px; }
.myguy-home-feature p { margin: 0; color: var(--myguy-muted); font-size: 14px; line-height: 1.55; }
.error-code + p + .divider, .error-code + p + .divider + br, .error-code + p + .divider + br + p { display: none; }
html[data-myguy-theme="light"] .myguy-home { background: linear-gradient(180deg, rgba(49, 134, 217, .08), transparent 240px), var(--myguy-slate-950); }
html[data-myguy-theme="light"] .myguy-home-panel { background: #f8fbfd; border-color: #b8cbd6; }
@media (max-width: 767.98px) { .myguy-home-shell { padding: 28px 18px 12px; } .myguy-home-hero { grid-template-columns: 1fr; gap: 28px; padding: 26px 0 30px; } .myguy-home-brand { width: min(260px, 100%); margin-bottom: 22px; } .myguy-home-copy { font-size: 16px; } .myguy-home-features { grid-template-columns: 1fr; gap: 0; padding-top: 18px; } .myguy-home-feature { padding: 16px 0; border-bottom: 1px solid var(--myguy-border-subtle); } .page-footer .right-links { justify-content: center; } }

/* Synapse Forge second pass: named themes and a shared workspace system. */
:root {
  --synapse-bg: #0d131a;
  --synapse-panel: #151f29;
  --synapse-raised: #1b2935;
  --synapse-border: #304454;
  --synapse-text: #e9f0f5;
  --synapse-muted: #9ab0bf;
  --synapse-accent: #32b8ee;
  --synapse-accent-strong: #168bbd;
  --synapse-hover: #203341;
  --synapse-input: #101a23;
  --synapse-empty: #14232e;
}

html[data-myguy-theme="synapse-dark"] {
  --synapse-bg: #0d131a; --synapse-panel: #151f29; --synapse-raised: #1b2935;
  --synapse-border: #304454; --synapse-text: #e9f0f5; --synapse-muted: #9ab0bf;
  --synapse-accent: #32b8ee; --synapse-accent-strong: #168bbd; --synapse-hover: #203341;
  --synapse-input: #101a23; --synapse-empty: #14232e;
}

html[data-myguy-theme="synapse-light"] {
  --synapse-bg: #e7edf0; --synapse-panel: #f6f8f7; --synapse-raised: #ffffff;
  --synapse-border: #bfd0d6; --synapse-text: #15242e; --synapse-muted: #526977;
  --synapse-accent: #087eae; --synapse-accent-strong: #05658d; --synapse-hover: #e0eaed;
  --synapse-input: #fcfdfc; --synapse-empty: #edf3f2;
}

html[data-myguy-theme="oled"] {
  --synapse-bg: #050708; --synapse-panel: #0a0e11; --synapse-raised: #10161a;
  --synapse-border: #263740; --synapse-text: #edf5f8; --synapse-muted: #91a8b6;
  --synapse-accent: #45c6f5; --synapse-accent-strong: #1b9bc9; --synapse-hover: #121d23;
  --synapse-input: #080c0f; --synapse-empty: #0a1216;
}

html[data-myguy-theme="graphite"] {
  --synapse-bg: #17191d; --synapse-panel: #202329; --synapse-raised: #292d34;
  --synapse-border: #454c56; --synapse-text: #f0f2f4; --synapse-muted: #afb5bd;
  --synapse-accent: #68bce3; --synapse-accent-strong: #3f94bd; --synapse-hover: #30353d;
  --synapse-input: #191c21; --synapse-empty: #22262c;
}

html[data-myguy-theme="midnight-blue"] {
  --synapse-bg: #081426; --synapse-panel: #0e2038; --synapse-raised: #142b48;
  --synapse-border: #294866; --synapse-text: #eaf3fb; --synapse-muted: #9db5ca;
  --synapse-accent: #4aaff5; --synapse-accent-strong: #207fca; --synapse-hover: #173451;
  --synapse-input: #0a1930; --synapse-empty: #102641;
}

html[data-myguy-theme^="synapse"],
html[data-myguy-theme="oled"],
html[data-myguy-theme="graphite"],
html[data-myguy-theme="midnight-blue"] {
  --color-body: var(--synapse-bg);
  --color-box-body: var(--synapse-panel);
  --color-box-header: var(--synapse-raised);
  --color-nav-bg: var(--synapse-panel);
  --color-card: var(--synapse-panel);
  --color-secondary: var(--synapse-raised);
  --color-light: var(--synapse-raised);
  --color-hover: var(--synapse-hover);
  --color-text: var(--synapse-text);
  --color-text-dark: var(--synapse-muted);
  --color-text-light: var(--synapse-muted);
  --color-divider: var(--synapse-border);
  --color-input-background: var(--synapse-input);
  --color-input-border: var(--synapse-border);
  --color-primary: var(--synapse-accent);
  --color-primary-dark-1: var(--synapse-accent-strong);
}

html[data-myguy-theme] body,
html[data-myguy-theme] .full.height,
html[data-myguy-theme] .page-content:not(.myguy-home) {
  background: var(--synapse-bg);
  color: var(--synapse-text);
}

#navbar {
  height: 58px;
  min-height: 58px;
  padding-inline: max(14px, calc((100vw - 1480px) / 2));
  background: var(--synapse-panel);
  border-bottom: 1px solid var(--synapse-border);
}

#navbar-logo {
  width: 136px;
  min-width: 136px;
  height: 58px;
  background-size: 112px auto;
  background-position: left center;
}

#navbar .item {
  min-height: 58px;
  padding-inline: 13px;
  color: var(--synapse-muted);
}

#navbar .item:hover,
#navbar .item.active {
  background: transparent;
  color: var(--synapse-text);
}

#navbar .item.active {
  box-shadow: inset 0 -2px 0 var(--synapse-accent);
}

.myguy-theme-control {
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: 58px;
  margin-left: 4px;
  padding-left: 14px;
  border-left: 1px solid var(--synapse-border);
  color: var(--synapse-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.myguy-theme-control select {
  height: 30px;
  min-width: 124px;
  padding: 0 26px 0 9px;
  background: var(--synapse-input);
  border: 1px solid var(--synapse-border);
  border-radius: 2px;
  color: var(--synapse-text);
  font: inherit;
  letter-spacing: .02em;
  text-transform: none;
}

.myguy-theme-control select:focus {
  border-color: var(--synapse-accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--synapse-accent) 20%, transparent);
  outline: none;
}

.page-content:not(.myguy-home) {
  min-height: calc(100vh - 106px);
  padding-top: 28px;
  padding-bottom: 40px;
}

.page-content:not(.myguy-home) > .ui.container,
.dashboard .ui.container,
.repository .ui.container {
  max-width: 1280px;
}

.dashboard .repo-list,
.explore .repo-list,
.explore-repo-list,
.repository .repo-header,
.repository .header-wrapper,
.repository .file.list,
.repository .file.list #repo-files-table,
.repository .ui.segment,
.dashboard .ui.segment,
.user.profile .ui.segment,
.user.settings .ui.segment,
.notification .ui.segment,
.ui.form.segment {
  background: var(--synapse-panel);
  border: 1px solid var(--synapse-border);
  border-radius: 3px;
  box-shadow: none;
}

.dashboard .repo-list,
.explore .repo-list,
.explore-repo-list {
  overflow: hidden;
}

.dashboard .repo-list .item,
.explore .repo-list .item,
.explore-repo-list .item {
  position: relative;
  padding: 18px 20px;
  background: var(--synapse-panel);
  border-bottom: 1px solid var(--synapse-border);
}

.dashboard .repo-list .item:last-child,
.explore .repo-list .item:last-child,
.explore-repo-list .item:last-child {
  border-bottom: 0;
}

.dashboard .repo-list .item:hover,
.explore .repo-list .item:hover,
.explore-repo-list .item:hover {
  background: var(--synapse-hover);
  box-shadow: inset 3px 0 0 var(--synapse-accent);
}

.dashboard .repo-list .item .name,
.explore .repo-list .item .name,
.explore-repo-list .item .name {
  color: var(--synapse-text);
  font-weight: 700;
}

.repository .header-wrapper {
  margin-bottom: 14px;
  border-left: 3px solid var(--synapse-accent);
}

.repository .header-wrapper .repo-title,
.repository .repo-header .repo-title {
  color: var(--synapse-text);
  font-weight: 700;
}

.repository .repo-header,
.repository .header-wrapper,
.repository .file.list,
.repository .file.list #repo-files-table {
  box-shadow: none;
}

.repository .file.list #repo-files-table tr,
.repository .file.list .item {
  background: var(--synapse-panel);
  border-color: var(--synapse-border);
}

.repository .file.list #repo-files-table tr:hover,
.repository .file.list .item:hover {
  background: var(--synapse-hover);
}

.repository .repo-content,
.repository .markdown,
.repository .file-view {
  background: var(--synapse-panel);
  border-color: var(--synapse-border);
}

.ui.tabular.menu,
.ui.secondary.pointing.menu {
  margin-bottom: 16px;
  border-color: var(--synapse-border);
}

.ui.tabular.menu .item,
.ui.secondary.pointing.menu .item {
  color: var(--synapse-muted);
  font-weight: 650;
}

.ui.tabular.menu .active.item,
.ui.secondary.pointing.menu .active.item {
  background: var(--synapse-panel);
  border-color: var(--synapse-accent);
  color: var(--synapse-text);
}

.ui.form .field > label,
.ui.form .inline.field > label {
  margin-bottom: 7px;
  color: var(--synapse-text);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
}

.ui.form input:not([type]),
.ui.form input[type="text"],
.ui.form input[type="email"],
.ui.form input[type="password"],
.ui.form input[type="number"],
.ui.form textarea,
.ui.form select,
.ui.input > input {
  min-height: 40px;
  background: var(--synapse-input);
  border-color: var(--synapse-border);
  color: var(--synapse-text);
}

.ui.form textarea { min-height: 110px; }

.ui.form input:focus,
.ui.form textarea:focus,
.ui.form select:focus,
.ui.input > input:focus {
  border-color: var(--synapse-accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--synapse-accent) 18%, transparent);
}

.ui.button,
.ui.primary.button {
  min-height: 36px;
  border-radius: 2px;
  font-weight: 700;
}

.ui.primary.button,
.ui.blue.button {
  background: var(--synapse-accent-strong);
}

.ui.primary.button:hover,
.ui.blue.button:hover {
  background: var(--synapse-accent);
}

.ui.button:not(.primary):not(.blue):not(.red):not(.green) {
  background: var(--synapse-raised);
  border-color: var(--synapse-border);
  color: var(--synapse-text);
}

.ui.table,
.ui.table thead th,
.ui.table tr td,
.ui.table tr th {
  background: var(--synapse-panel);
  border-color: var(--synapse-border);
  color: var(--synapse-text);
}

.ui.table thead th {
  background: var(--synapse-raised);
  font-size: 12px;
  letter-spacing: .025em;
}

.ui.table tr:hover td {
  background: var(--synapse-hover);
}

.ui.empty.message,
.empty.segment,
.ui.placeholder.segment,
.ui.message {
  background: var(--synapse-empty);
  border-color: var(--synapse-border);
  color: var(--synapse-muted);
  border-radius: 3px;
  box-shadow: none;
}

.page-footer {
  min-height: 54px;
  padding: 12px max(18px, calc((100vw - 1480px) / 2));
  background: var(--synapse-panel);
  border-top-color: var(--synapse-border);
}

.page-footer .right-links {
  justify-content: space-between;
}

.myguy-footer-signature {
  color: var(--synapse-muted);
  font-size: 11px;
  letter-spacing: .12em;
}

@media (max-width: 767.98px) {
  #navbar { height: 50px; min-height: 50px; padding-inline: 8px; }
  #navbar .item { min-height: 50px; }
  #navbar-logo { width: 46px; min-width: 46px; height: 50px; background-size: 28px; }
  .myguy-theme-control { min-height: 50px; margin-left: 0; padding-left: 7px; border-left: 0; }
  .myguy-theme-control span { display: none; }
  .myguy-theme-control select { width: 42px; min-width: 42px; padding-inline: 3px; color: transparent; }
  .myguy-theme-control select option { color: #111; }
  .page-content:not(.myguy-home) { padding-top: 16px; padding-bottom: 24px; }
  .dashboard .repo-list .item, .explore .repo-list .item, .explore-repo-list .item { padding: 15px; }
  .page-footer .right-links { justify-content: center; }
}

/* Ensure the branded landing surface follows every named Synapse theme. */
html[data-myguy-theme] .myguy-home {
  background: linear-gradient(180deg, color-mix(in srgb, var(--synapse-accent) 9%, transparent), transparent 240px), var(--synapse-bg);
  color: var(--synapse-text);
}

html[data-myguy-theme] .myguy-home-panel {
  background: var(--synapse-panel);
  border-color: var(--synapse-border);
}

html[data-myguy-theme] .myguy-home h1,
html[data-myguy-theme] .myguy-home-feature h2 {
  color: var(--synapse-text);
}

html[data-myguy-theme] .myguy-home-copy,
html[data-myguy-theme] .myguy-home-panel p:last-child,
html[data-myguy-theme] .myguy-home-feature p {
  color: var(--synapse-muted);
}

html[data-myguy-theme] .myguy-home-kicker,
html[data-myguy-theme] .myguy-home-panel-label {
  color: var(--synapse-accent);
}
