.ofse-home,
.ofse-virtual-page {
  --ofse-bg: #000000;
  --ofse-text: #ffffff;
  --ofse-muted: #aaaaaa;
  --ofse-link: #ffc107;
  color: var(--ofse-text);
  font-size: 13px;
  line-height: 1.4;
}

.ofse-home *,
.ofse-virtual-page * {
  box-sizing: border-box;
}

.ofse-home a,
.ofse-virtual-page a {
  color: var(--ofse-link);
  text-decoration: none;
}

.ofse-home a:hover,
.ofse-virtual-page a:hover {
  text-decoration: underline;
}

.ofse-compact-home,
.ofse-article-shell {
  display: grid;
  gap: 14px;
}

.ofse-topbar,
.ofse-brand-bar,
.ofse-home-columns,
.ofse-section-head,
.ofse-topic-row,
.ofse-topic-panel,
.ofse-breadcrumb,
.ofse-search-form,
.ofse-inline-box,
.ofse-form-grid {
  display: flex;
  align-items: center;
}

.ofse-topbar,
.ofse-brand-bar,
.ofse-section,
.ofse-topic-panel,
.ofse-inline-box,
.ofse-form,
.ofse-content-section {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  padding: 8px 0;
}

.ofse-topbar {
  justify-content: space-between;
  gap: 12px;
}

.ofse-topbar-logo a {
  color: #ffffff;
  font-weight: 700;
}

.ofse-topbar-search {
  flex: 1;
  max-width: 460px;
}

.ofse-topbar-auth {
  display: flex;
  gap: 10px;
  white-space: nowrap;
}

.ofse-search-form {
  gap: 6px;
  width: 100%;
}

.ofse-search-form input,
.ofse-form input,
.ofse-form textarea,
.ofse-form select {
  width: 100%;
  background: #000000;
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0;
  padding: 8px;
  font-size: 13px;
}

.ofse-search-form button,
.ofse-button {
  background: transparent;
  color: #ffc107;
  border: 1px solid rgba(255, 193, 7, 0.35);
  border-radius: 0;
  padding: 8px 10px;
  font-size: 12px;
  cursor: pointer;
}

.ofse-brand-bar {
  gap: 10px;
  flex-wrap: wrap;
  align-items: flex-start;
}

.ofse-home-columns {
  gap: 18px;
  align-items: flex-start;
}

.ofse-primary-column {
  flex: 1 1 auto;
  min-width: 0;
}

.ofse-sidebar-column {
  width: 290px;
  flex: 0 0 290px;
}

.ofse-section-head {
  justify-content: space-between;
  margin-bottom: 6px;
}

.ofse-section-head h2,
.ofse-page-header h1,
.ofse-content-section h2 {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
}

.ofse-page-header p,
.ofse-content-section p,
.ofse-topic-panel p {
  margin: 6px 0;
  color: var(--ofse-text);
}

.ofse-breadcrumb {
  gap: 6px;
  flex-wrap: wrap;
  color: var(--ofse-muted);
  font-size: 12px;
}

.ofse-breadcrumb a,
.ofse-topic-row-meta,
.ofse-empty {
  color: var(--ofse-muted);
}

.ofse-topic-rows,
.ofse-compact-links,
.ofse-simple-list,
.ofse-link-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ofse-topic-row {
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  padding: 5px 0;
  border-bottom: 1px dotted rgba(255, 255, 255, 0.08);
}

.ofse-topic-row:last-child {
  border-bottom: 0;
}

.ofse-topic-row-title {
  flex: 1;
  min-width: 0;
}

.ofse-topic-row-meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 12px;
  white-space: nowrap;
}

.ofse-compact-links li,
.ofse-simple-list li,
.ofse-link-list li {
  padding: 3px 0;
}

.ofse-form {
  display: grid;
  gap: 8px;
}

.ofse-form-grid {
  gap: 8px;
  align-items: stretch;
}

.ofse-form-grid > * {
  flex: 1 1 0;
}

@media (max-width: 960px) {
  .ofse-home-columns {
    display: block;
  }

  .ofse-sidebar-column {
    width: auto;
    margin-top: 12px;
  }

  .ofse-topbar {
    flex-wrap: wrap;
  }

  .ofse-topbar-search {
    max-width: none;
    width: 100%;
  }

  .ofse-topic-row {
    display: block;
  }

  .ofse-topic-row-meta {
    margin-top: 4px;
  }

  .ofse-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
