
.marble-card,
[class^="marble-card-"],
[class*=" marble-card-"] {
  border: 1px solid var(--mc-border);
  border-radius: var(--mc-radius-lg);
  background: var(--mc-surface);
}

[class$="__grid"],
.marble-dashboard-grid,
.marble-grid-view__items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr));
  gap: var(--mc-space-5);
}

.marble-dashboard,
.marble-dashboard-section,
.marble-news,
.marble-projects,
.marble-documents,
.marble-services,
.marble-organization,
.marble-departments,
.marble-statistics,
.marble-events,
.marble-contacts,
.marble-faq {
  padding-block: var(--mc-space-6);
}

.marble-dashboard-widget,
.marble-statistic-widget,
.marble-chart-card,
.marble-system-status,
.marble-favorites,
.marble-recent-activity,
.marble-notifications-widget {
  min-width: 0;
  padding: var(--mc-space-5);
  border: 1px solid var(--mc-border);
  border-radius: var(--mc-radius-lg);
  background: var(--mc-surface);
  box-shadow: 0 .125rem .4rem rgba(11, 39, 72, .06);
}

[class$="__eyebrow"] {
  margin-bottom: var(--mc-space-2);
  color: var(--mc-blue-700);
  font-size: .8125rem;
  font-weight: 750;
  letter-spacing: .06em;
  text-transform: uppercase;
}

[class$="__description"],
[class$="__meta"] { color: var(--mc-muted); }

[class$="__actions"] {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--mc-space-3);
}

.marble-badge,
.marble-tag,
.marble-chip,
[class$="__badge"],
[class$="__status"] {
  display: inline-flex;
  min-height: 1.6rem;
  align-items: center;
  gap: .3rem;
  padding: .2rem .55rem;
  border-radius: 999px;
  color: var(--mc-blue-900);
  background: var(--mc-blue-100);
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.2;
}

.marble-avatar,
[class$="__avatar"] {
  display: inline-grid;
  width: 2.75rem;
  height: 2.75rem;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  object-fit: cover;
  overflow: hidden;
}

.mc-toolbar,
[class^="marble-toolbar"],
[class*=" marble-toolbar"] {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--mc-space-3);
}

.mc-dropdown { position: relative; }
.mc-dropdown__panel {
  position: absolute;
  z-index: 30;
  top: calc(100% + .35rem);
  left: 0;
  min-width: 13rem;
  padding: .4rem;
  border: 1px solid var(--mc-border);
  border-radius: var(--mc-radius);
  background: #fff;
  box-shadow: var(--mc-shadow);
}
.mc-dropdown:not(.is-open) .mc-dropdown__panel { display: none; }
.mc-dropdown--position-right .mc-dropdown__panel { right: 0; left: auto; }

.mc-tabs { overflow-x: auto; }
.mc-tabs__list { display: flex; gap: .2rem; margin: 0; padding: 0; border-bottom: 1px solid var(--mc-border); list-style: none; }
.mc-tab__link { display: flex; min-height: 2.75rem; align-items: center; gap: .4rem; padding: .65rem .9rem; color: var(--mc-muted); text-decoration: none; white-space: nowrap; }
.mc-tab.is-active .mc-tab__link, .mc-tab__link[aria-selected="true"] { color: var(--mc-blue-900); box-shadow: inset 0 -.1875rem var(--mc-blue-700); font-weight: 700; }

.marble-dialog,
.marble-drawer {
  position: fixed;
  z-index: 100;
  inset: 0;
  display: grid;
  place-items: center;
  padding: var(--mc-space-4);
}
.marble-dialog__overlay,
.marble-drawer__overlay { position: absolute; inset: 0; background: rgba(5, 20, 36, .68); }
.marble-dialog__window,
.marble-drawer__panel {
  position: relative;
  width: min(100%, 42rem);
  max-height: min(90vh, 48rem);
  overflow: auto;
  border-radius: var(--mc-radius-lg);
  background: #fff;
  box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, .3);
}
.marble-dialog__header, .marble-dialog__body, .marble-dialog__footer,
.marble-drawer__header, .marble-drawer__body, .marble-drawer__footer { padding: var(--mc-space-5); }
.marble-dialog__body, .marble-dialog__footer,
.marble-drawer__body, .marble-drawer__footer { border-top: 1px solid var(--mc-border); }

.marble-empty,
.marble-empty-state {
  display: grid;
  min-height: 14rem;
  place-items: center;
  padding: var(--mc-space-7);
  border: 1px dashed #aab4c0;
  border-radius: var(--mc-radius-lg);
  color: var(--mc-muted);
  text-align: center;
}

.marble-spinner {
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  border: .1875rem solid var(--mc-blue-100);
  border-top-color: var(--mc-blue-700);
  border-radius: 50%;
  animation: marble-spin .75s linear infinite;
}
@keyframes marble-spin { to { transform: rotate(1turn); } }

.marble-timeline-view__items,
.marble-activity-view__items { padding-left: var(--mc-space-5); border-left: .125rem solid var(--mc-border); }
.marble-timeline-view__item,
.marble-activity-view__item { position: relative; margin-bottom: var(--mc-space-5); }
.marble-timeline-view__item::before,
.marble-activity-view__item::before { position: absolute; top: .5rem; left: calc(-1 * var(--mc-space-5) - .38rem); width: .65rem; height: .65rem; border: 2px solid #fff; border-radius: 50%; background: var(--mc-blue-600); box-shadow: 0 0 0 2px var(--mc-blue-600); content: ""; }

.marble-kanban-view__columns { display: grid; grid-auto-columns: minmax(17rem, 1fr); grid-auto-flow: column; gap: var(--mc-space-4); overflow-x: auto; padding-bottom: var(--mc-space-3); }
.marble-kanban-view__column { padding: var(--mc-space-4); border-radius: var(--mc-radius); background: var(--mc-surface-alt); }
.marble-calendar-view { overflow-x: auto; }
.marble-tree-view ul { padding-left: 1.25rem; list-style: none; }

.marble-image-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); gap: var(--mc-space-3); }
.marble-image, .marble-image-thumbnail { overflow: hidden; border-radius: var(--mc-radius); }

@media (max-width: 48rem) {
  [class$="__grid"], .marble-dashboard-grid, .marble-grid-view__items { grid-template-columns: minmax(0, 1fr); }
  .marble-dialog, .marble-drawer { padding: 0; place-items: end stretch; }
  .marble-dialog__window, .marble-drawer__panel { width: 100%; max-height: 92vh; border-radius: var(--mc-radius-lg) var(--mc-radius-lg) 0 0; }
}
