/* [project]/apps/mercato/src/styles/ms-prototype.css [app-client] (css) */
.ms-app {
  --bg-primary: #1d1919;
  --bg-secondary: #1f1f1f;
  --bg-card: #252525;
  --bg-surface: #161616;
  --bg-elevated: #2b2b2b;
  --bg-content: #121212;
  --accent-bright: #c3f74f;
  --accent-main: #bdea56;
  --accent-dark: #6a930d;
  --accent-soft: #c3f74f1f;
  --status-success: #39e575;
  --status-warning: #e6a239;
  --status-error: #d44d42;
  --status-inactive: #707070;
  --border-default: #ffffff0f;
  --border-strong: #ffffff1f;
  --text-primary: #fff;
  --text-secondary: #ffffffb3;
  --text-muted: #ffffff73;
  --text-subtitle: #707070;
  --text-dark: #111;
  --font-heading: var(--font-montserrat), "Montserrat", system-ui, sans-serif;
  --font-body: var(--font-inter), "Inter", system-ui, sans-serif;
  --radius-card: 20px;
  --radius-sm: 12px;
  --radius-pill: 50px;
  --sidebar-width: 280px;
  --topbar-height: 52px;
  --glow: 0 0 40px #c3f74f26;
}

.ms-app, .ms-app *, .ms-app :before, .ms-app :after {
  box-sizing: border-box;
}

.ms-app {
  height: 100%;
  min-height: 100vh;
  font-family: var(--font-body);
  color: var(--text-primary);
  -webkit-font-smoothing: antialiased;
  background: #000;
  margin: 0;
  padding: 0;
}

.ms-app .app-shell, .ms-app .sidebar, .ms-app .main-area, .ms-app .content-wrapper, .ms-app .ms-topnav, .ms-app .topbar {
  margin: 0;
}

.ms-app a {
  color: inherit;
  text-decoration: none;
}

.ms-app button:where(.ms-icon-btn, .btn-nowy, .ms-menu-item, .ms-notif-mark-all, .ms-btn, .btn-primary, .btn-secondary, .btn-ghost) {
  cursor: pointer;
  color: inherit;
  background: none;
  border: none;
  font-family: inherit;
}

.ms-app .app-shell {
  height: 100vh;
  display: flex;
  overflow: hidden;
}

.ms-app .sidebar {
  width: var(--sidebar-width);
  min-width: var(--sidebar-width);
  background: var(--bg-primary);
  border-right: 1px solid var(--border-default);
  flex-direction: column;
  display: flex;
  overflow-y: auto;
}

.ms-app .sidebar-header {
  align-items: center;
  gap: 12px;
  padding: 20px 20px 16px;
  display: flex;
}

.ms-app .sidebar-logo {
  font-family: var(--font-heading);
  letter-spacing: -.02em;
  font-size: 1.25rem;
  font-weight: 800;
}

.ms-app .lang-select {
  color: var(--text-secondary);
  border: 1px solid var(--border-strong);
  border-radius: 6px;
  padding: 4px 8px;
  font-size: .75rem;
}

.ms-app .sidebar-nav {
  flex: 1;
  padding: 8px 12px;
}

.ms-app .nav-item {
  border-radius: var(--radius-sm);
  cursor: pointer;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 2px;
  padding: 10px 12px;
  transition: background .15s;
  display: flex;
}

.ms-app .nav-item:hover {
  background: var(--bg-elevated);
}

.ms-app .nav-item.active {
  border-left: 3px solid var(--accent-bright);
  background: #ffffff0f;
  padding-left: 9px;
}

.ms-app .nav-item.active .nav-label {
  color: var(--accent-bright);
}

.ms-app .nav-icon {
  opacity: .7;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-top: 2px;
}

.ms-app .nav-item.active .nav-icon {
  opacity: 1;
}

.ms-app .nav-text {
  flex: 1;
  min-width: 0;
}

.ms-app .nav-label {
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.3;
}

.ms-app .nav-desc {
  color: var(--text-subtitle);
  margin-top: 2px;
  font-size: .7rem;
  line-height: 1.3;
}

.ms-app .badge-soon {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--accent-bright);
  border: 1px solid var(--accent-bright);
  vertical-align: middle;
  border-radius: 4px;
  margin-left: 6px;
  padding: 1px 5px;
  font-size: .6rem;
  font-weight: 700;
}

.ms-app .nav-section-title {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--text-subtitle);
  justify-content: space-between;
  align-items: center;
  padding: 16px 12px 8px;
  font-size: .7rem;
  font-weight: 600;
  display: flex;
}

.ms-app .sidebar-account {
  background: var(--accent-bright);
  border-radius: var(--radius-sm);
  color: var(--text-dark);
  margin: 12px;
  padding: 16px;
}

.ms-app .sidebar-account .nav-label {
  color: var(--text-dark);
  font-weight: 700;
}

.ms-app .sidebar-account .nav-desc {
  color: #0000008c;
}

.ms-app .sidebar-account .nav-item {
  border-radius: 0;
  padding: 6px 0;
}

.ms-app .sidebar-account .nav-item--clickable {
  cursor: pointer;
  border-radius: 6px;
  margin: 0 -8px;
  padding: 6px 8px;
}

.ms-app .sidebar-account .nav-item--clickable:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #00000059;
}

.ms-app .sidebar-account .nav-item:hover {
  background: #0000000f;
}

.ms-app .sidebar-account .logout {
  color: var(--status-error);
  border-top: 1px solid #00000026;
  margin-top: 8px;
  padding-top: 8px;
  font-weight: 600;
}

.ms-app .main-area {
  background: #000;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
}

.ms-app .topbar {
  height: var(--topbar-height);
  border-bottom: 1px solid var(--border-strong);
  background: var(--bg-primary);
  flex-shrink: 0;
}

.ms-app .content-wrapper {
  flex: 1;
  padding: 32px 40px 80px;
  overflow-y: auto;
}

.ms-app .ms-topnav {
  border-bottom: 1px solid var(--border-default);
  background: #000;
  flex-shrink: 0;
  align-items: center;
  gap: 20px;
  height: 56px;
  padding: 0 32px;
  display: flex;
}

.ms-app .ms-topnav.is-hidden {
  display: none;
}

.ms-app .ms-brand {
  font-family: var(--font-heading);
  letter-spacing: .12em;
  color: var(--accent-bright);
  white-space: nowrap;
  flex-shrink: 0;
  font-size: .95rem;
  font-weight: 800;
}

.ms-app .ms-menu {
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 4px;
  display: flex;
  position: relative;
  overflow-x: auto;
}

.ms-app .ms-menu-item {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--text-muted);
  white-space: nowrap;
  z-index: 1;
  border: none;
  align-items: center;
  gap: 7px;
  padding: 18px 14px 16px;
  font-size: .68rem;
  font-weight: 600;
  transition: color .15s;
  display: flex;
  position: relative;
  box-shadow: none !important;
  border-bottom: none !important;
}

.ms-app .ms-menu-item svg {
  opacity: .55;
  flex-shrink: 0;
  width: 15px;
  height: 15px;
  transition: opacity .15s, stroke .15s;
}

.ms-app .ms-menu-item:hover, .ms-app .ms-menu-item.active {
  color: var(--accent-bright);
}

.ms-app .ms-menu:has(.ms-menu-item:hover) .ms-menu-item.active:not(:hover) {
  color: var(--text-muted);
}

.ms-app .ms-menu-item:after, .ms-app .feed-tab:after, .ms-app .info-tab:after {
  content: "";
  background: var(--accent-bright);
  opacity: 0;
  pointer-events: none;
  height: 2px;
  transition: opacity .15s;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.ms-app .ms-menu-item.active:after, .ms-app .feed-tab.active:after, .ms-app .info-tab.active:after, .ms-app .ms-menu-item:hover:after, .ms-app .feed-tab:hover:after, .ms-app .info-tab:hover:after {
  opacity: 1;
}

.ms-app .ms-menu:has(.ms-menu-item:hover) .ms-menu-item.active:not(:hover):after {
  opacity: 0;
}

.ms-app .feed-tabs:has(.feed-tab:hover) .feed-tab.active:not(:hover):after {
  opacity: 0;
}

.ms-app .info-tabs:has(.info-tab:hover) .info-tab.active:not(:hover):after {
  opacity: 0;
}

.ms-app .ms-menu-item, .ms-app .ms-menu-item:hover, .ms-app .ms-menu-item.active {
  outline: none;
  box-shadow: none !important;
  border: none !important;
}

.ms-app .ms-menu-item:hover svg, .ms-app .ms-menu-item.active svg {
  opacity: 1;
  stroke: var(--accent-bright);
}

.ms-app .ms-menu:has(.ms-menu-item:hover) .ms-menu-item.active:not(:hover) svg {
  opacity: .55;
  stroke: currentColor;
}

.ms-app .ms-topnav-actions {
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  display: flex;
}

.ms-app .ms-icon-btn {
  width: 36px;
  height: 36px;
  color: var(--text-secondary);
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  transition: color .15s, background .15s;
  display: flex;
  position: relative;
}

.ms-app .ms-icon-btn:hover {
  color: var(--text-primary);
  background: var(--bg-elevated);
}

.ms-app .ms-icon-btn svg {
  width: 18px;
  height: 18px;
}

.ms-app .ms-notif-badge {
  background: var(--accent-bright);
  min-width: 16px;
  height: 16px;
  color: var(--text-dark);
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  padding: 0 4px;
  font-size: .6rem;
  font-weight: 700;
  line-height: 1;
  display: flex;
  position: absolute;
  top: 4px;
  right: 4px;
}

.ms-app .btn-nowy {
  background: var(--accent-bright);
  color: var(--text-dark);
  letter-spacing: .06em;
  text-transform: uppercase;
  border-radius: var(--radius-pill);
  white-space: nowrap;
  margin-left: 4px;
  padding: 10px 18px;
  font-size: .68rem;
  font-weight: 700;
  transition: filter .15s;
}

.ms-app .btn-nowy:hover {
  filter: brightness(1.08);
}

.ms-app .btn-primary {
  background: var(--accent-bright);
  color: var(--text-dark);
  border-radius: var(--radius-pill);
  padding: 10px 20px;
  font-size: .8rem;
  font-weight: 600;
  transition: filter .15s;
}

.ms-app .btn-primary:hover {
  filter: brightness(1.08);
}

.ms-app .btn-ghost {
  border-radius: var(--radius-pill);
  border: 1px solid var(--border-strong);
  color: var(--text-secondary);
  padding: 10px 16px;
  font-size: .8rem;
}

.ms-app .btn-ghost:hover {
  border-color: var(--accent-bright);
  color: var(--text-primary);
}

.ms-app .icon-btn {
  border: 1px solid var(--border-strong);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 1.1rem;
  display: flex;
  position: relative;
}

.ms-app .view {
  display: none;
}

.ms-app .view.active {
  display: block;
}

.ms-app .feed-tabs {
  border-bottom: 1px solid var(--border-default);
  gap: 24px;
  margin-bottom: 20px;
  display: flex;
  position: relative;
}

.ms-app .feed-tab {
  color: var(--text-muted);
  cursor: pointer;
  z-index: 1;
  padding: 10px 0;
  font-size: .875rem;
  font-weight: 500;
  transition: color .15s;
  position: relative;
  box-shadow: none !important;
  border-bottom: none !important;
}

.ms-app .feed-tab:hover, .ms-app .feed-tab.active {
  color: var(--accent-bright);
}

.ms-app .feed-tabs:has(.feed-tab:hover) .feed-tab.active:not(:hover) {
  color: var(--text-muted);
}

.ms-app .feed-tab, .ms-app .feed-tab:hover, .ms-app .feed-tab.active {
  box-shadow: none !important;
  border-bottom: none !important;
}

.ms-app .feed-search-panel {
  border-bottom: 1px solid var(--border-default);
  margin-bottom: 20px;
  padding-bottom: 4px;
  display: none;
}

.ms-app .feed-search-panel.is-open {
  display: block;
}

.ms-app .feed-community-banner {
  border-radius: var(--radius-card);
  background: linear-gradient(135deg, #39e5751a 0%, #c3f74f0a 100%),
    var(--bg-card);
  border: 1px solid #39e57547;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 24px;
  padding: 18px 20px;
  display: none;
}

.ms-app .feed-community-banner.is-open {
  display: flex;
}

.ms-app .feed-community-banner-icon {
  width: 40px;
  height: 40px;
  color: var(--status-success);
  background: #39e57526;
  border: 1px solid #39e57540;
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 1.1rem;
  display: flex;
}

.ms-app .feed-community-banner-title {
  font-family: var(--font-heading);
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--text-primary);
  margin-bottom: 6px;
  font-size: .85rem;
  font-weight: 800;
}

.ms-app .feed-community-banner-desc {
  color: var(--text-subtitle);
  max-width: 640px;
  font-size: .78rem;
  line-height: 1.55;
}

.ms-app .feed-category-filters {
  flex-wrap: wrap;
  margin-top: 16px;
  margin-bottom: 0;
}

.ms-app .feed-filters {
  gap: 8px;
  margin-bottom: 28px;
  display: flex;
}

.ms-app .feed-filters.is-hidden {
  display: none;
}

.ms-app .feed-recruitment-filters {
  margin-top: -16px;
}

.ms-app .feed-filter-label {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--text-muted);
  align-self: center;
  margin-right: 4px;
  font-size: .68rem;
  font-weight: 600;
}

.ms-app .filter-pill {
  border-radius: var(--radius-pill);
  border: 1px solid var(--border-strong);
  color: var(--text-secondary);
  cursor: pointer;
  padding: 6px 16px;
  font-size: .75rem;
  font-weight: 500;
}

.ms-app .filter-pill.active {
  border-color: var(--accent-bright);
  color: var(--accent-bright);
  background: var(--accent-soft);
}

.ms-app .feed-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  display: grid;
}

.ms-app .feed-grid-card {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  cursor: pointer;
  flex-direction: column;
  transition: border-color .15s, transform .15s, box-shadow .15s;
  display: flex;
  overflow: hidden;
}

.ms-app .feed-grid-card:hover {
  box-shadow: var(--glow);
  border-color: #c3f74f59;
  transform: translateY(-2px);
}

.ms-app .feed-grid-card--community {
  border-color: #39e57547;
  box-shadow: 0 0 0 1px #39e5750f;
}

.ms-app .feed-grid-card--community:hover {
  border-color: #39e5758c;
  box-shadow: 0 0 24px #39e5751f;
}

.ms-app .feed-grid-cover {
  aspect-ratio: 16 / 10;
  background: var(--bg-elevated);
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
}

.ms-app .feed-grid-cover img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  transition: transform .3s;
  display: block;
}

.ms-app .feed-grid-card:hover .feed-grid-cover img {
  transform: scale(1.04);
}

.ms-app .feed-grid-cover:after {
  content: "";
  pointer-events: none;
  background: linear-gradient(#0000 45%, #00000080);
  position: absolute;
  inset: 0;
}

.ms-app .saved-cover-badge {
  z-index: 2;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  pointer-events: none;
  width: 32px;
  height: 32px;
  color: var(--accent-bright);
  background: #000000a6;
  border: 1px solid #c3f74f59;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  line-height: 1;
  display: flex;
  position: absolute;
  top: 10px;
  right: 10px;
}

.ms-app .saved-cover-badge .ms-ico {
  width: 16px;
  height: 16px;
}

.ms-app .feed-grid-time.saved-at {
  color: var(--accent-bright);
  font-weight: 600;
}

.ms-app #saved-filters {
  margin-bottom: 24px;
}

.ms-app .cover-neural {
  background: radial-gradient(60% 50% at 50% 45%, #c3f74f59 0%, #0000 70%), repeating-linear-gradient(0deg, #0000, #0000 19px, #c3f74f0f 19px 20px), repeating-linear-gradient(90deg, #0000, #0000 19px, #c3f74f0f 19px 20px), #0a120a;
}

.ms-app .cover-hr {
  background: linear-gradient(135deg, #39e57533 0%, #0000 50%), linear-gradient(225deg, #c3f74f26 0%, #0000 40%), #121a14;
}

.ms-app .cover-rag {
  background: radial-gradient(circle at 70% 30%, #c3f74f40 0%, #0000 50%), radial-gradient(circle at 20% 70%, #6a930d4d 0%, #0000 45%), #0d1008;
}

.ms-app .cover-chat {
  background: linear-gradient(160deg, #e6a23933 0%, #0000 55%), linear-gradient(20deg, #c3f74f1f 0%, #0000 50%), #141210;
}

.ms-app .cover-edu {
  background: radial-gradient(80% 60% at 50% 100%, #39e5754d 0%, #0000 60%), #0a140a;
}

.ms-app .cover-prompt {
  background-color: #101008;
  background-image: linear-gradient(45deg, #c3f74f2e 25%, #0000 25% 75%, #c3f74f2e 75%), linear-gradient(45deg, #c3f74f2e 25%, #0000 25% 75%, #c3f74f2e 75%), none;
  background-position: 0 0, 12px 12px;
  background-repeat: repeat, repeat, repeat;
  background-size: 24px 24px;
  background-attachment: scroll, scroll, scroll;
  background-origin: padding-box, padding-box, padding-box;
  background-clip: border-box, border-box, border-box;
}

.ms-app .cover-community {
  background: radial-gradient(circle, #c3f74f33 0%, #0000 55%), linear-gradient(#1a1a0a 0%, #0a1008 100%);
}

.ms-app .feed-grid-body {
  flex-direction: column;
  flex: 1;
  padding: 18px 20px 16px;
  display: flex;
}

.ms-app .feed-grid-meta {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  display: flex;
}

.ms-app .feed-meta-badges {
  flex-wrap: wrap;
  flex-shrink: 0;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  display: flex;
}

.ms-app .feed-kind-badge {
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 4px;
  padding: 4px 8px;
  font-size: .58rem;
  font-weight: 700;
}

.ms-app .feed-kind-badge--open {
  color: var(--status-success);
  background: #39e5751f;
  border-color: #39e57547;
}

.ms-app .feed-kind-badge--closed {
  color: var(--text-muted);
  border-color: var(--border-default);
  background: #ffffff0a;
}

.ms-app .feed-grid-card[data-recruitment="open"] {
  border-color: #39e57538;
}

.ms-app .feed-grid-card[data-recruitment="open"]:hover {
  border-color: #39e57561;
  box-shadow: 0 8px 32px #39e57514;
}

.ms-app .feed-grid-card[data-recruitment="closed"] {
  border-color: var(--border-default);
}

.ms-app .feed-grid-card[data-recruitment="closed"] .feed-grid-cover:after {
  background: linear-gradient(#0000 40%, #0000008c 100%);
}

.ms-app .feed-activity {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-subtitle);
  align-items: center;
  gap: 7px;
  font-size: .62rem;
  font-weight: 700;
  display: flex;
}

.ms-app .activity-dot {
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
}

.ms-app .activity-dot.green {
  background: var(--status-success);
  box-shadow: 0 0 6px var(--status-success);
}

.ms-app .activity-dot.yellow {
  background: var(--status-warning);
  box-shadow: 0 0 6px var(--status-warning);
}

.ms-app .activity-dot.gray {
  background: var(--status-inactive);
}

.ms-app .feed-type-badge {
  letter-spacing: .08em;
  text-transform: uppercase;
  background: var(--bg-elevated);
  color: var(--text-subtitle);
  border: 1px solid var(--border-default);
  border-radius: 4px;
  padding: 4px 10px;
  font-size: .6rem;
  font-weight: 700;
}

.ms-app .feed-type-badge.insight {
  color: var(--accent-bright);
  background: #c3f74f14;
  border-color: #c3f74f33;
}

.ms-app .feed-type-badge.community {
  color: var(--status-success);
  background: #39e5751a;
  border-color: #39e57540;
}

.ms-app .feed-type-badge.official {
  color: var(--accent-bright);
  letter-spacing: .06em;
  background: #c3f74f1a;
  border-color: #c3f74f47;
  font-size: .58rem;
}

.ms-app .feed-grid-title {
  font-family: var(--font-heading);
  letter-spacing: .04em;
  text-transform: uppercase;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin-bottom: 8px;
  font-size: .95rem;
  font-weight: 800;
  line-height: 1.3;
  display: -webkit-box;
  overflow: hidden;
}

.ms-app .feed-grid-desc {
  color: var(--text-subtitle);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  flex: 1;
  margin-bottom: 14px;
  font-size: .78rem;
  line-height: 1.5;
  display: -webkit-box;
  overflow: hidden;
}

.ms-app .feed-grid-author {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: 10px;
  font-size: .62rem;
  font-weight: 600;
}

.ms-app .feed-grid-extras {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  display: flex;
}

.ms-app .feed-grid-tags {
  flex-wrap: wrap;
  gap: 5px;
  display: flex;
}

.ms-app .feed-grid-tags .tag {
  padding: 2px 8px;
  font-size: .62rem;
}

.ms-app .feed-grid-time {
  color: var(--text-muted);
  white-space: nowrap;
  font-size: .65rem;
}

.ms-app .feed-grid-stats, .ms-app .list-row--project .list-row-stats {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.ms-app .feed-grid-stats {
  margin-top: auto;
  padding-top: 16px;
}

.ms-app .feed-grid-stats .stat-item, .ms-app .list-row--project .list-row-stats .stat-item {
  border: 1px solid var(--border-default);
  color: var(--text-primary);
  white-space: nowrap;
  background: #ffffff0f;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 6px 11px;
  font-size: .78rem;
  font-weight: 600;
  transition: border-color .15s, background .15s;
  display: inline-flex;
}

.ms-app .feed-grid-card:hover .stat-item, .ms-app .list-row--project:hover .stat-item {
  border-color: #c3f74f33;
}

.ms-app .feed-grid-stats .stat-item--clap, .ms-app .list-row--project .list-row-stats .stat-item--clap {
  background: var(--accent-soft);
  color: var(--accent-bright);
  border-color: #c3f74f59;
}

.ms-app .feed-grid-stats .stat-icon, .ms-app .list-row--project .list-row-stats .stat-icon {
  justify-content: center;
  align-items: center;
  line-height: 1;
  display: inline-flex;
}

.ms-app .ms-ico {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  display: block;
}

.ms-app .feed-grid-stats .stat-icon svg, .ms-app .list-row--project .list-row-stats .stat-icon svg {
  opacity: .85;
  width: 14px;
  height: 14px;
}

.ms-app .stat-item--clap .stat-icon .ms-ico {
  color: var(--accent-bright);
}

.ms-app .feed-grid-stats .stat-value, .ms-app .list-row--project .list-row-stats .stat-value {
  font-family: var(--font-heading);
  letter-spacing: .02em;
  font-weight: 700;
}

.ms-app .feed-load-more {
  grid-column: 1 / -1;
  justify-content: center;
  margin-top: 8px;
  display: flex;
}

.ms-app .feed-load-more.is-hidden {
  display: none;
}

.ms-app .feed-empty {
  text-align: center;
  color: var(--text-subtitle);
  flex-direction: column;
  grid-column: 1 / -1;
  align-items: center;
  gap: 16px;
  padding: 56px 24px;
  font-size: .9rem;
  display: none;
}

.ms-app .feed-empty.is-visible {
  display: flex;
}

.ms-app .feed-grid-card.is-hidden {
  display: none;
}

.ms-app .feed-badges {
  gap: 6px;
  display: flex;
}

.ms-app .mini-badge {
  border-radius: 4px;
  padding: 3px 8px;
  font-size: .65rem;
  font-weight: 700;
}

.ms-app .mini-badge.trending {
  color: var(--status-warning);
  background: #e6a23933;
}

.ms-app .mini-badge.new {
  background: var(--accent-soft);
  color: var(--accent-bright);
}

.ms-app .mini-badge.collaborator {
  color: #8eb4ff;
  background: #6a93ff1f;
}

.ms-app .mini-badge.community {
  color: var(--status-success);
  background: #39e57526;
}

.ms-app .feed-meta {
  color: var(--text-subtitle);
  margin-bottom: 12px;
  font-size: .8rem;
}

.ms-app .feed-meta strong {
  color: var(--text-secondary);
  font-weight: 500;
}

.ms-app .feed-tags {
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
  display: flex;
}

.ms-app .tag {
  border-radius: var(--radius-pill);
  background: var(--bg-elevated);
  color: var(--text-secondary);
  padding: 3px 10px;
  font-size: .7rem;
}

.ms-app .feed-stats {
  color: var(--text-muted);
  gap: 16px;
  font-size: .8rem;
  display: flex;
}

.ms-app .feed-stats span {
  align-items: center;
  gap: 4px;
  display: flex;
}

.ms-app .project-layout {
  grid-template-columns: 1fr 320px;
  gap: 24px;
  display: grid;
}

.ms-app .project-main {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  overflow: hidden;
}

.ms-app .project-cover {
  background: var(--bg-elevated);
  align-items: flex-end;
  height: 220px;
  padding: 24px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.ms-app .project-cover img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.ms-app .project-cover:after {
  content: "";
  z-index: 1;
  background: linear-gradient(#0000 20%, #000000bf);
  position: absolute;
  inset: 0;
}

.ms-app .project-cover-content {
  z-index: 2;
  position: relative;
}

.ms-app .project-status-row {
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  display: flex;
}

.ms-app .project-type-label {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--accent-bright);
  font-size: .7rem;
  font-weight: 600;
}

.ms-app .project-name {
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 700;
}

.ms-app .project-body {
  padding: 24px;
}

.ms-app .project-tabs {
  border-bottom: 1px solid var(--border-default);
  gap: 20px;
  margin-bottom: 24px;
  display: flex;
}

.ms-app .project-tab {
  color: var(--text-muted);
  cursor: pointer;
  border-bottom: 2px solid #0000;
  margin-bottom: -1px;
  padding: 10px 0;
  font-size: .85rem;
}

.ms-app .project-tab.active {
  color: var(--text-primary);
  border-bottom-color: var(--accent-bright);
}

.ms-app .project-description {
  color: var(--text-secondary);
  font-size: .9rem;
  line-height: 1.7;
}

.ms-app .project-description h3 {
  font-family: var(--font-heading);
  color: var(--text-primary);
  margin: 20px 0 8px;
  font-size: 1rem;
}

.ms-app .project-description p {
  margin-bottom: 12px;
}

.ms-app .project-links {
  flex-direction: column;
  gap: 8px;
  margin-top: 20px;
  display: flex;
}

.ms-app .project-link {
  background: var(--bg-elevated);
  border-radius: var(--radius-sm);
  color: var(--accent-bright);
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  font-size: .85rem;
  display: flex;
}

.ms-app .kanban-board {
  --kanban-col-todo: #60a5fa;
  --kanban-col-inProgress: #fbbf24;
  --kanban-col-done: #39e575;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  display: grid;
}

.ms-app .kanban-hint {
  color: var(--text-muted);
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  margin: 0 0 14px;
  padding: 10px 12px;
  font-size: .78rem;
  line-height: 1.45;
}

.ms-app .kanban-toolbar {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  margin: 0 0 14px;
  padding: 12px 14px;
}

.ms-app .kanban-toolbar-inner {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  display: flex;
}

.ms-app .kanban-toolbar-label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--text-subtitle);
  flex-shrink: 0;
  font-size: .72rem;
  font-weight: 600;
}

.ms-app .kanban-color-pickers {
  flex-wrap: wrap;
  flex: 1;
  gap: 10px 14px;
  display: flex;
}

.ms-app .kanban-color-picker {
  cursor: pointer;
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.ms-app .kanban-color-picker-label {
  color: var(--text-muted);
  font-size: .72rem;
}

.ms-app .kanban-color-input {
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
  cursor: pointer;
  border-radius: 6px;
  width: 32px;
  height: 28px;
  padding: 2px;
}

.ms-app .kanban-color-input::-webkit-color-swatch-wrapper {
  padding: 0;
}

.ms-app .kanban-color-input::-webkit-color-swatch {
  border: none;
  border-radius: 4px;
}

.ms-app .kanban-colors-reset {
  flex-shrink: 0;
  padding: 6px 10px;
  font-size: .72rem;
}

.ms-app .kanban-col {
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  flex-direction: column;
  min-height: 280px;
  max-height: 520px;
  padding: 12px;
  display: flex;
}

.ms-app .kanban-col[data-col-key="todo"] {
  --kanban-col-accent: var(--kanban-col-todo);
}

.ms-app .kanban-col[data-col-key="inProgress"] {
  --kanban-col-accent: var(--kanban-col-inProgress);
}

.ms-app .kanban-col[data-col-key="done"] {
  --kanban-col-accent: var(--kanban-col-done);
}

.ms-app .kanban-col {
  background: color-mix(in srgb, var(--kanban-col-accent, #888) 10%, var(--bg-elevated));
  border-color: color-mix(in srgb, var(--kanban-col-accent, #888) 28%, transparent);
}

.ms-app .kanban-col .kanban-col-head {
  border-bottom-color: color-mix(in srgb, var(--kanban-col-accent, #888) 22%, transparent);
}

.ms-app .kanban-col .kanban-col-title {
  color: color-mix(in srgb, var(--kanban-col-accent, #888) 82%, white);
}

.ms-app .kanban-col .kanban-col-count {
  background: color-mix(in srgb, var(--kanban-col-accent, #888) 16%, transparent);
  color: color-mix(in srgb, var(--kanban-col-accent, #888) 70%, white);
}

.ms-app .kanban-col-head {
  border-bottom: 1px solid var(--border-default);
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  padding-bottom: 8px;
  display: flex;
}

.ms-app .kanban-col-title {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-subtitle);
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
  font-size: .75rem;
  font-weight: 600;
}

.ms-app .kanban-col-count {
  background: var(--bg-surface);
  min-width: 22px;
  height: 22px;
  color: var(--text-muted);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 0 6px;
  font-size: .68rem;
  font-weight: 700;
  display: inline-flex;
}

.ms-app .kanban-col-cards {
  flex: 1;
  min-height: 0;
  padding-right: 2px;
  overflow-y: auto;
}

.ms-app .kanban-add-btn {
  border: 1px dashed var(--border-default);
  width: 100%;
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border-radius: 8px;
  flex-shrink: 0;
  margin-top: 10px;
  padding: 8px 10px;
  font-size: .72rem;
  font-weight: 600;
  transition: border-color .15s, color .15s, background .15s;
}

.ms-app .kanban-add-btn:hover {
  color: var(--accent-bright, #bef264);
  background: #bef2640a;
  border-color: #bef26473;
}

.ms-app .kanban-add-form {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.ms-app .kanban-add-form .creator-label {
  margin-top: 8px;
}

.ms-app .kanban-add-form .creator-label:first-child {
  margin-top: 0;
}

.ms-app .kanban-add-form-actions {
  justify-content: flex-end;
  gap: 10px;
  margin-top: 16px;
  display: flex;
}

.ms-app .creator-select {
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-position: right 12px center;
  background-repeat: no-repeat;
  padding-right: 36px;
}

.ms-app .kanban-card {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  cursor: pointer;
  border-radius: 8px;
  margin-bottom: 8px;
  padding: 12px;
  font-size: .8rem;
  transition: border-color .15s, box-shadow .15s;
  position: relative;
}

.ms-app .kanban-card:hover {
  border-color: var(--border-strong, #ffffff1f);
}

.ms-app .kanban-card--yours {
  border-color: #bef26459;
  box-shadow: inset 0 0 0 1px #bef26414;
}

.ms-app .kanban-card--draggable {
  cursor: grab;
}

.ms-app .kanban-card--draggable:active {
  cursor: grabbing;
}

.ms-app .kanban-card--dragging {
  opacity: .45;
}

.ms-app .kanban-card--locked {
  cursor: pointer;
}

.ms-app .kanban-card-badge {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--accent-bright, #bef264);
  background: #bef26426;
  border-radius: 4px;
  margin-bottom: 6px;
  padding: 2px 7px;
  font-size: .62rem;
  font-weight: 700;
  display: inline-block;
}

.ms-app .kanban-col--drop-target .kanban-col-cards {
  outline: 2px dashed color-mix(in srgb, var(--kanban-col-accent, var(--accent-bright)) 55%, transparent);
  outline-offset: 2px;
  border-radius: 6px;
  min-height: 48px;
}

.ms-app .kanban-card:last-child {
  margin-bottom: 0;
}

.ms-app .kanban-card-title {
  margin-bottom: 6px;
  font-weight: 600;
  line-height: 1.35;
}

.ms-app .kanban-card-meta {
  color: var(--text-subtitle);
  font-size: .7rem;
}

.ms-app .kanban-deadline {
  background: var(--bg-surface);
  color: var(--text-muted);
  border-radius: 4px;
  margin-top: 8px;
  padding: 2px 8px;
  font-size: .65rem;
  display: inline-block;
}

.ms-app .kanban-deadline--overdue {
  color: #f87171;
  background: #ef44441f;
}

.ms-app .kanban-deadline--soon {
  color: #facc15;
  background: #facc151a;
}

.ms-app .ms-modal-card--kanban {
  max-width: 520px;
}

.ms-app .kanban-task-modal-status {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--accent-bright, #bef264);
  margin: 0 0 8px;
  font-size: .68rem;
  font-weight: 700;
}

.ms-app .kanban-task-modal-meta {
  color: var(--text-subtitle);
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-bottom: 14px;
  font-size: .78rem;
  display: flex;
}

.ms-app .kanban-task-modal-desc {
  color: var(--text-primary);
  white-space: pre-wrap;
  margin: 0 0 18px;
  font-size: .84rem;
  line-height: 1.55;
}

.ms-app .kanban-task-modal-desc.is-placeholder {
  color: var(--text-muted);
  font-style: italic;
}

.ms-app .kanban-task-modal-move-label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--text-subtitle);
  margin: 0 0 8px;
  font-size: .72rem;
  font-weight: 600;
}

.ms-app .kanban-task-modal-move-btns {
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
  display: flex;
}

.ms-app .kanban-move-btn.is-active {
  border-color: var(--accent-bright, #bef264);
  color: var(--accent-bright, #bef264);
  opacity: .7;
}

.ms-app .kanban-task-modal-perm {
  color: var(--text-muted);
  margin: 0;
  font-size: .75rem;
  line-height: 1.45;
}

.ms-app .kanban-task-modal-move.is-hidden, .ms-app .kanban-task-modal-perm.is-hidden {
  display: none;
}

.ms-app .project-sidebar {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.ms-app .sidebar-panel {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  padding: 20px;
}

.ms-app .panel-title {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--text-subtitle);
  margin-bottom: 14px;
  font-size: .7rem;
  font-weight: 600;
}

.ms-app .author-row {
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  display: flex;
}

.ms-app .author-row--link {
  cursor: pointer;
  border-radius: var(--radius-sm);
  transition: background .15s;
}

.ms-app .author-row--link:hover {
  background: var(--bg-elevated);
}

.ms-app .author-row--link:hover .author-name {
  color: var(--accent-bright);
}

.ms-app .author-row--link:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: 2px;
}

.ms-app .project-sidebar .author-row .rank-badge--sm {
  flex-shrink: 0;
  width: 44px;
  font-size: 44px;
}

.ms-app #project-collaborators-list .author-row {
  margin-bottom: 12px;
}

.ms-app #project-collaborators-list .author-row:last-child {
  margin-bottom: 0;
}

.ms-app #project-author-row .author-row {
  margin-bottom: 16px;
}

.ms-app .avatar {
  background: linear-gradient(135deg, var(--accent-dark), var(--accent-bright));
  width: 44px;
  height: 44px;
  color: var(--text-dark);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: .9rem;
  font-weight: 700;
  display: flex;
}

.ms-app .avatar.sm {
  width: 32px;
  height: 32px;
  font-size: .75rem;
}

.ms-app .author-name {
  font-size: .9rem;
  font-weight: 600;
}

.ms-app .author-handle {
  color: var(--text-subtitle);
  font-size: .75rem;
}

.ms-app .collaborators {
  gap: -8px;
  margin-top: 8px;
  display: flex;
}

.ms-app .collaborators .avatar {
  border: 2px solid var(--bg-card);
  margin-left: -8px;
}

.ms-app .collaborators .avatar:first-child {
  margin-left: 0;
}

.ms-app .engagement-row {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.ms-app .engage-btn {
  border-radius: var(--radius-sm);
  border: 1px solid var(--border-strong);
  text-align: center;
  min-width: 70px;
  color: var(--text-secondary);
  flex: 1;
  padding: 10px 8px;
  font-size: .75rem;
  transition: all .15s;
}

.ms-app .engage-btn:hover {
  border-color: var(--accent-bright);
  color: var(--text-primary);
}

.ms-app .engage-btn.active {
  background: var(--accent-soft);
  border-color: var(--accent-bright);
  color: var(--accent-bright);
}

.ms-app .engage-btn-ico {
  justify-content: center;
  align-items: center;
  margin-bottom: 4px;
  display: flex;
}

.ms-app .engage-btn-ico .ms-ico {
  width: 18px;
  height: 18px;
}

.ms-app .engage-btn.active .engage-btn-ico .ms-ico {
  color: var(--accent-bright);
}

.ms-app .engage-btn .count {
  color: var(--text-primary);
  margin-top: 2px;
  font-size: .9rem;
  font-weight: 700;
  display: block;
}

.ms-app .project-engage-note {
  color: var(--text-muted);
  margin: 10px 0 0;
  font-size: .72rem;
  line-height: 1.5;
}

.ms-app .engage-btn.is-disabled, .ms-app .engage-btn:disabled {
  opacity: .38;
  cursor: not-allowed;
  pointer-events: none;
}

.ms-app .engage-btn.is-disabled:hover, .ms-app .engage-btn:disabled:hover {
  border-color: var(--border-default);
  color: var(--text-subtitle);
}

.ms-app .project-fork-attribution {
  border: 1px solid var(--border-default);
  color: var(--text-subtitle);
  background: linear-gradient(135deg, #bef2640f 0%, #bef26405 100%);
  border-radius: 10px;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 20px;
  padding: 14px 16px;
  font-size: .82rem;
  line-height: 1.5;
  display: flex;
}

.ms-app .project-fork-attribution-ico {
  background: var(--accent-soft);
  width: 28px;
  height: 28px;
  color: var(--accent-bright);
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.ms-app .project-fork-attribution-ico .ms-ico {
  width: 16px;
  height: 16px;
}

.ms-app .project-fork-attribution-text strong {
  color: var(--text-secondary);
  font-weight: 600;
}

.ms-app .project-fork-attribution-link {
  color: var(--accent-bright);
  cursor: pointer;
  font-weight: 500;
  text-decoration: none;
}

.ms-app .project-fork-attribution-link:hover {
  text-decoration: underline;
}

.ms-app .project-fork-attribution-meta {
  color: var(--text-muted);
  margin-top: 4px;
  font-size: .72rem;
  display: block;
}

.ms-app .creator-fork-banner {
  border: 1px solid var(--accent-bright);
  background: var(--accent-soft);
  color: var(--text-subtitle);
  border-radius: 10px;
  grid-column: 1 / -1;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 4px;
  padding: 14px 16px;
  font-size: .78rem;
  line-height: 1.55;
  display: flex;
}

.ms-app .creator-fork-banner strong {
  color: var(--text-secondary);
}

.ms-app .ms-modal-card--fork {
  max-width: 480px;
}

.ms-app .fork-modal-field {
  margin: 16px 0;
}

.ms-app .fork-modal-copy-list {
  color: var(--text-subtitle);
  margin: 0 0 12px;
  padding-left: 18px;
  font-size: .78rem;
  line-height: 1.55;
}

.ms-app .fork-modal-copy-list li + li {
  margin-top: 6px;
}

.ms-app .fork-modal-copy-list strong {
  color: var(--text-secondary);
  font-weight: 600;
}

.ms-app .fork-modal-note {
  color: var(--text-muted);
  background: var(--bg-surface);
  border: 1px solid var(--border-default);
  border-radius: 8px;
  margin: 0 0 18px;
  padding: 10px 12px;
  font-size: .72rem;
  line-height: 1.5;
}

.ms-app .fork-modal-actions {
  justify-content: flex-end;
  gap: 10px;
  display: flex;
}

.ms-app .ms-modal-card--profile-edit {
  max-height: min(92vh, 900px);
  padding: 28px 32px 24px;
  overflow-y: auto;
}

.ms-app .profile-edit-form .creator-textarea {
  resize: vertical;
  min-height: 88px;
}

.ms-app .profile-edit-section[data-edit-section="timeline"] .creator-textarea, .ms-app .profile-edit-section[data-edit-section="portfolio"] .creator-textarea {
  min-height: 104px;
}

.ms-app .profile-edit-form {
  flex-direction: column;
  gap: 0;
  display: flex;
}

.ms-app .profile-edit-form .creator-label {
  margin-top: 14px;
}

.ms-app .profile-edit-form .creator-label:first-of-type {
  margin-top: 0;
}

.ms-app .profile-edit-ai-block {
  margin-top: 14px;
}

.ms-app .profile-edit-skills-wrap {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.ms-app .profile-edit-skill-chips {
  flex-wrap: wrap;
  gap: 8px;
  min-height: 28px;
  display: flex;
}

.ms-app .profile-edit-skill-chip {
  align-items: center;
  gap: 6px;
  padding-right: 6px;
  display: inline-flex;
}

.ms-app .profile-edit-skill-remove, .ms-app .profile-edit-ai-remove {
  width: 18px;
  height: 18px;
  color: var(--text-muted);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: .95rem;
  line-height: 1;
  transition: color .15s, background .15s;
  display: inline-flex;
}

.ms-app .profile-edit-skill-remove:hover, .ms-app .profile-edit-ai-remove:hover {
  color: var(--text-primary);
  background: #ffffff14;
}

.ms-app .profile-edit-skill-add {
  align-items: center;
  gap: 8px;
  display: flex;
}

.ms-app .profile-edit-skill-add .creator-input {
  flex: 1;
  min-width: 0;
  max-width: none;
}

.ms-app .profile-edit-skill-add-btn {
  flex-shrink: 0;
  padding: 8px 14px;
  font-size: .78rem;
}

.ms-app .profile-edit-networking-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  display: grid;
}

.ms-app .profile-edit-networking-col {
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  background: #ffffff05;
  min-width: 0;
  padding: 18px;
}

.ms-app .profile-edit-networking-col .creator-label {
  margin-top: 0;
}

.ms-app .profile-edit-networking-col .profile-edit-hint--section {
  margin: 4px 0 14px;
  font-size: .78rem;
  line-height: 1.5;
}

.ms-app .profile-edit-networking-col .profile-edit-skills-wrap {
  gap: 12px;
}

.ms-app .profile-edit-hint {
  color: var(--text-muted);
  margin: 0;
  font-size: .72rem;
  line-height: 1.45;
}

.ms-app .profile-edit-empty {
  color: var(--text-muted);
  font-size: .78rem;
}

.ms-app .profile-edit-ai-head {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
  display: flex;
}

.ms-app .profile-edit-ai-head .creator-label {
  margin: 0;
}

.ms-app .profile-edit-ai-add-btn, .ms-app .profile-edit-add-btn {
  border-radius: var(--radius-pill);
  color: var(--accent-bright);
  background: #c3f74f1a;
  border: 1px solid #c3f74f8c;
  flex-shrink: 0;
  align-items: center;
  gap: 4px;
  padding: 8px 14px;
  font-size: .8rem;
  font-weight: 600;
  transition: background .15s, border-color .15s, color .15s;
  display: inline-flex;
}

.ms-app .profile-edit-ai-add-btn:hover, .ms-app .profile-edit-add-btn:hover {
  border-color: var(--accent-bright);
  color: var(--text-primary);
  background: #c3f74f2e;
}

.ms-app .profile-edit-ai-tools {
  flex-direction: column;
  gap: 10px;
  margin-top: 8px;
  display: flex;
}

.ms-app .profile-edit-ai-row {
  grid-template-columns: 1fr 100px 28px;
  align-items: center;
  gap: 10px;
  display: grid;
}

.ms-app .profile-edit-ai-name-input {
  min-width: 0;
}

.ms-app .profile-edit-ai-row .creator-select {
  flex-shrink: 0;
  width: 100%;
}

.ms-app .profile-edit-contact-links-block {
  border-top: 1px solid var(--border-default);
  margin-top: 18px;
  padding-top: 16px;
}

.ms-app .profile-edit-contact-links {
  flex-direction: column;
  gap: 10px;
  margin: 10px 0 12px;
  display: flex;
}

.ms-app .profile-edit-contact-links-empty {
  color: var(--text-muted);
  margin: 0;
  font-size: .78rem;
}

.ms-app .profile-edit-contact-link-row {
  align-items: flex-end;
  gap: 8px;
  display: flex;
}

.ms-app .profile-edit-contact-link-fields {
  flex: 1;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
  gap: 8px;
  display: grid;
}

.ms-app .profile-edit-contact-link-field {
  min-width: 0;
}

.ms-app .profile-edit-contact-link-field .creator-label {
  margin-bottom: 6px;
}

.ms-app .profile-edit-contact-link-remove {
  flex-shrink: 0;
  min-width: 32px;
  padding: 6px 8px;
  font-size: 1rem;
  line-height: 1;
}

.ms-app .profile-edit-contact-order-block {
  border-top: 1px solid var(--border-default);
  margin-top: 18px;
  padding-top: 16px;
}

.ms-app .profile-edit-contact-order-list {
  flex-direction: column;
  gap: 8px;
  margin: 10px 0 12px;
  padding: 0;
  list-style: none;
  display: flex;
}

.ms-app .profile-edit-contact-order-empty {
  color: var(--text-muted);
  padding: 8px 0;
  font-size: .78rem;
}

.ms-app .profile-edit-contact-order-item {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  cursor: grab;
  border-radius: 8px;
  grid-template-columns: 18px 24px 1fr auto;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  display: grid;
}

.ms-app .profile-edit-contact-order-item.is-dragging {
  opacity: .55;
}

.ms-app .profile-edit-contact-order-item.is-drop-target {
  border-color: var(--accent-bright);
  box-shadow: 0 0 0 1px #c3f74f40;
}

.ms-app .profile-edit-contact-order-handle {
  color: var(--text-muted);
  -webkit-user-select: none;
  user-select: none;
  font-size: .85rem;
  line-height: 1;
}

.ms-app .profile-edit-contact-order-icon {
  text-align: center;
  width: 24px;
  color: var(--accent-bright);
  font-size: .75rem;
}

.ms-app .profile-edit-contact-order-text {
  color: var(--text-secondary);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .78rem;
  overflow: hidden;
}

.ms-app .profile-edit-contact-order-actions {
  gap: 4px;
  display: flex;
}

.ms-app .profile-edit-contact-order-move {
  border: 1px solid var(--border-default);
  width: 28px;
  height: 28px;
  color: var(--text-secondary);
  background: var(--bg-elevated);
  border-radius: 6px;
  font-size: .85rem;
}

.ms-app .profile-edit-contact-order-move:hover:not(:disabled) {
  border-color: var(--border-strong);
  color: var(--text-primary);
}

.ms-app .profile-edit-contact-order-move:disabled {
  opacity: .35;
  cursor: not-allowed;
}

.ms-app .profile-edit-contact-sort-btn {
  padding: 4px 0;
  font-size: .78rem;
}

.ms-app .profile-contact-action-value {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  color: var(--text-secondary);
  word-break: break-word;
  border-radius: 8px;
  margin: 0 0 16px;
  padding: 12px 14px;
  font-size: .84rem;
}

.ms-app .profile-contact-action-buttons {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.ms-app .profile-contact-action-hint {
  text-align: center;
  margin-top: 14px;
}

.ms-app .profile-edit-actions {
  border-top: 1px solid var(--border-default);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 22px;
  padding-top: 18px;
  display: flex;
}

.ms-app .profile-edit-actions-main {
  gap: 10px;
  margin-left: auto;
  display: flex;
}

.ms-app .profile-edit-reset {
  color: var(--text-muted);
  font-size: .78rem;
}

.ms-app .sidebar-panel .project-edit-btn {
  width: 100%;
  margin-bottom: 8px;
}

.ms-app .sidebar-panel .project-edit-btn.is-hidden + .btn-ghost, .ms-app .sidebar-panel .btn-ghost.is-hidden {
  margin-top: 0;
}

.ms-app .ai-tools-list {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.ms-app .ai-tool {
  border-bottom: 1px solid var(--border-default);
  justify-content: space-between;
  align-items: center;
  padding: 6px 0;
  font-size: .8rem;
  display: flex;
}

.ms-app .ai-tool:last-child {
  border-bottom: none;
}

.ms-app .project-licenses-list {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.ms-app .project-license-item {
  border-radius: var(--radius-md);
  border: 1px solid var(--border-default);
  background: var(--surface-raised);
  padding: 10px 12px;
}

.ms-app .project-license-main {
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.35;
}

.ms-app .project-license-link {
  color: var(--text-primary);
  text-decoration: none;
}

.ms-app .project-license-link:hover {
  color: var(--accent-primary);
  text-decoration: underline;
}

.ms-app .project-license-category {
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-top: 4px;
  font-size: .68rem;
}

.ms-app .creator-license-grid {
  margin-bottom: 8px;
}

.ms-app .creator-license-custom span {
  font-size: .85rem;
}

.ms-app .open-badge {
  border-radius: var(--radius-pill);
  color: var(--status-success);
  background: #39e5751f;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  padding: 6px 12px;
  font-size: .75rem;
  display: inline-flex;
}

.ms-app .points-display {
  text-align: center;
  background: var(--accent-soft);
  border-radius: var(--radius-sm);
  margin-top: 12px;
  padding: 16px;
}

.ms-app .points-value {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: 1.75rem;
  font-weight: 800;
}

.ms-app .points-label {
  color: var(--text-subtitle);
  margin-top: 4px;
  font-size: .7rem;
}

.ms-app .comment {
  border-bottom: 1px solid var(--border-default);
  padding: 16px 0;
}

.ms-app .comment-header {
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  display: flex;
}

.ms-app .comment-author-badge {
  flex-shrink: 0;
  line-height: 0;
}

.ms-app .comment-author-badge--link {
  cursor: pointer;
  border-radius: 8px;
  transition: opacity .15s;
}

.ms-app .comment-author-badge--link:hover {
  opacity: .88;
}

.ms-app .comment-header-meta {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.ms-app .comment-author {
  font-size: .85rem;
  font-weight: 600;
}

.ms-app .comment-time {
  color: var(--text-subtitle);
  font-size: .75rem;
}

.ms-app .comment-text {
  color: var(--text-secondary);
  font-size: .85rem;
  line-height: 1.6;
}

.ms-app .comment-reactions {
  gap: 8px;
  margin-top: 10px;
  display: flex;
}

.ms-app .reaction {
  border-radius: var(--radius-pill);
  background: var(--bg-elevated);
  color: var(--text-muted);
  padding: 4px 10px;
  font-size: .75rem;
}

.ms-app .comment-input {
  border-top: 1px solid var(--border-default);
  align-items: center;
  gap: 12px;
  margin-top: 20px;
  padding-top: 20px;
  display: flex;
}

.ms-app .comment-input input {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-pill);
  color: var(--text-primary);
  outline: none;
  flex: 1;
  padding: 12px 18px;
  font-size: .85rem;
}

.ms-app .comment-input input:focus {
  border-color: var(--accent-bright);
}

.ms-app .profile-identity {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  margin-bottom: 48px;
  padding: 32px;
  box-shadow: 0 8px 32px #00000059;
}

.ms-app .profile-identity.is-compact .profile-identity-body, .ms-app .profile-identity.is-compact .profile-stats, .ms-app .profile-identity.is-compact .profile-affiliate-strip {
  display: none;
}

.ms-app .profile-view-head {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  display: flex;
}

.ms-app .profile-export-btn {
  flex-shrink: 0;
  font-size: .78rem;
}

.ms-app .profile-export-modal-card {
  width: min(720px, 100vw - 32px);
}

.ms-app .profile-export-format-tabs {
  gap: 8px;
  margin-bottom: 12px;
  display: inline-flex;
}

.ms-app .profile-export-format-tab {
  border: 1px solid var(--border-default);
  color: var(--text-muted);
  background: #ffffff08;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: .72rem;
  font-weight: 600;
}

.ms-app .profile-export-format-tab.is-active {
  color: var(--accent-bright);
  background: #c3f74f14;
  border-color: #c3f74f73;
}

.ms-app .profile-export-preview {
  border: 1px solid var(--border-default);
  width: 100%;
  min-height: 280px;
  max-height: min(52vh, 420px);
  color: var(--text-secondary);
  resize: vertical;
  background: #00000047;
  border-radius: 10px;
  margin-bottom: 14px;
  padding: 12px 14px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: .68rem;
  line-height: 1.45;
  display: block;
}

.ms-app .profile-export-modal-actions {
  margin-top: 0;
}

.ms-app .profile-export-hint {
  margin-top: 10px;
  margin-bottom: 0;
}

.ms-app .profile-hero {
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
  margin-bottom: 28px;
  display: flex;
}

.ms-app .profile-hero-id {
  flex: 1;
  align-items: flex-start;
  gap: 24px;
  min-width: 0;
  display: flex;
}

.ms-app .profile-hero-actions {
  flex-wrap: wrap;
  flex-shrink: 0;
  justify-content: flex-end;
  gap: 10px;
  display: flex;
}

.ms-app .profile-hero-side {
  flex-direction: column;
  flex-shrink: 0;
  align-items: stretch;
  gap: 12px;
  width: min(100%, 400px);
  display: flex;
}

.ms-app .profile-hero-contact {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 12px 14px;
}

.ms-app .profile-hero-contact-head {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  display: flex;
}

.ms-app .profile-hero-contact-title {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  font-size: .62rem;
  font-weight: 700;
}

.ms-app .profile-contact-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}

.ms-app .profile-contact-chip {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  width: 100%;
  min-width: 0;
  font: inherit;
  color: inherit;
  text-align: left;
  cursor: pointer;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 7px 9px;
  transition: border-color .15s, background .15s;
  display: flex;
}

.ms-app .profile-contact-chip:hover {
  border-color: var(--border-strong);
  background: var(--bg-surface);
}

.ms-app .profile-contact-chip:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: 2px;
}

.ms-app .profile-contact-chip--wide {
  grid-column: 1 / -1;
}

.ms-app .profile-contact-chip-icon {
  width: 22px;
  height: 22px;
  color: var(--accent-bright);
  background: #c3f74f14;
  border-radius: 6px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: .68rem;
  display: flex;
}

.ms-app .profile-contact-chip-text {
  color: var(--text-secondary);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .72rem;
  overflow: hidden;
}

.ms-app .profile-hero-contact .profile-meta-empty {
  font-size: .78rem;
}

.ms-app .profile-hero-side .profile-message-btn {
  justify-content: center;
  width: 100%;
}

.ms-app .profile-affiliate-strip {
  margin: 0 0 18px;
}

.ms-app .profile-affiliate-strip-inner {
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  background: var(--bg-elevated);
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.4fr) auto;
  align-items: center;
  gap: 16px 20px;
  padding: 16px 18px;
  display: grid;
}

.ms-app .profile-affiliate-strip.is-on-business-card .profile-affiliate-strip-inner {
  background: radial-gradient(120% 140% at 100% 0%, #c3f74f14, transparent 55%),
    var(--bg-elevated);
  border-color: #c3f74f59;
  box-shadow: 0 0 0 1px #c3f74f1a;
}

.ms-app .profile-affiliate-strip-kicker {
  border: 1px solid var(--border-strong);
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  background: #ffffff08;
  border-radius: 999px;
  margin-bottom: 6px;
  padding: 4px 8px;
  font-size: .58rem;
  font-weight: 700;
  display: inline-flex;
}

.ms-app .profile-affiliate-strip.is-on-business-card .profile-affiliate-strip-kicker {
  color: var(--accent-bright);
  background: #c3f74f0f;
  border-color: #c3f74f47;
}

.ms-app .profile-affiliate-strip-lead {
  color: var(--text-muted);
  max-width: 34ch;
  margin: 0;
  font-size: .72rem;
  line-height: 1.45;
}

.ms-app .profile-affiliate-strip-main {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: end;
  gap: 12px;
  min-width: 0;
  display: grid;
}

.ms-app .profile-affiliate-refcode-wrap, .ms-app .profile-affiliate-link-wrap {
  min-width: 0;
}

.ms-app .profile-affiliate-field-head {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
  display: flex;
}

.ms-app .profile-affiliate-link-edit-btn {
  padding: 2px 8px;
  font-size: .62rem;
  line-height: 1.4;
}

.ms-app .profile-affiliate-refcode-label, .ms-app .profile-affiliate-link-label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  margin-bottom: 4px;
  font-size: .58rem;
  font-weight: 700;
  display: block;
}

.ms-app .profile-affiliate-refcode {
  font-family: var(--font-heading);
  letter-spacing: .08em;
  color: var(--text-primary);
  font-size: clamp(1.35rem, 2.4vw, 1.85rem);
  font-weight: 800;
  line-height: 1;
  display: block;
}

.ms-app .profile-affiliate-strip.is-on-business-card .profile-affiliate-refcode {
  color: var(--accent-bright);
  text-shadow: 0 0 18px #c3f74f2e;
}

.ms-app .profile-affiliate-link {
  border: 1px solid var(--border-default);
  width: 100%;
  color: var(--text-secondary);
  text-align: left;
  white-space: nowrap;
  text-overflow: ellipsis;
  cursor: pointer;
  background: #00000038;
  border-radius: 8px;
  padding: 8px 10px;
  font-size: .72rem;
  line-height: 1.35;
  transition: border-color .15s, color .15s;
  display: block;
  overflow: hidden;
}

.ms-app .profile-affiliate-link:hover {
  border-color: var(--border-strong);
  color: var(--text-primary);
}

.ms-app .profile-affiliate-link--guest {
  cursor: pointer;
  text-decoration: none;
}

.ms-app .profile-affiliate-cta-summary {
  color: var(--text-muted);
  margin: 8px 0 0;
  font-size: .68rem;
  line-height: 1.4;
}

.ms-app .profile-affiliate-cta-summary strong {
  color: var(--text-secondary);
  font-weight: 600;
}

.ms-app .profile-affiliate-modal-link {
  border: 1px solid var(--border-default);
  color: var(--text-secondary);
  word-break: break-all;
  background: #00000038;
  border-radius: 8px;
  margin: 0 0 14px;
  padding: 10px 12px;
  font-size: .78rem;
  line-height: 1.4;
}

.ms-app .profile-affiliate-modal-preview {
  margin-top: 10px;
  margin-bottom: 16px;
}

.ms-app .profile-affiliate-modal-actions {
  margin-top: 4px;
}

.ms-app .profile-affiliate-cta-preview-wrap {
  margin-top: 8px;
}

.ms-app .profile-affiliate-cta-preview-label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  margin-bottom: 6px;
  font-size: .58rem;
  font-weight: 700;
  display: block;
}

.ms-app .profile-affiliate-cta-preview {
  pointer-events: none;
  padding: 8px 14px;
  font-size: .72rem;
  display: inline-flex;
}

.ms-app .profile-affiliate-cta-btn {
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
}

.ms-app .profile-affiliate-strip.is-on-business-card .profile-affiliate-link:hover {
  border-color: #c3f74f59;
}

.ms-app .profile-affiliate-strip-actions {
  flex-direction: column;
  flex-shrink: 0;
  align-items: flex-end;
  gap: 10px;
  display: flex;
}

.ms-app .profile-affiliate-copy-btn {
  white-space: nowrap;
}

.ms-app .profile-affiliate-strip.is-on-business-card .profile-affiliate-copy-btn, .ms-app .profile-affiliate-strip.is-on-business-card .profile-affiliate-cta-btn {
  box-shadow: 0 0 18px #c3f74f2e;
}

.ms-app .profile-affiliate-refcode-wrap.is-on-business-card, .ms-app .profile-affiliate-link-wrap.is-on-business-card, .ms-app .profile-affiliate-cta-summary.is-on-business-card, .ms-app .profile-affiliate-copy-btn.is-on-business-card, .ms-app .profile-affiliate-cta-btn.is-on-business-card {
  box-shadow: inset 0 -2px 0 var(--accent-bright);
}

.ms-app .profile-affiliate-strip.is-on-business-card .profile-affiliate-strip-kicker:after {
  content: " · wizytówka";
  color: var(--accent-bright);
  text-transform: lowercase;
  font-weight: 600;
}

.ms-app .profile-badges {
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
  display: flex;
}

.ms-app .profile-stats {
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 28px;
  display: grid;
}

.ms-app .profile-stats--guest {
  grid-template-columns: repeat(2, 1fr);
}

.ms-app .profile-stat-card--district-points {
  text-align: left;
  overflow: hidden;
}

.ms-app .profile-stat-card--district-points .profile-district-points--stat {
  margin-top: 4px;
}

.ms-app .profile-district-points {
  grid-template-rows: auto auto;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 2px 8px;
  width: 100%;
  display: grid;
}

.ms-app .profile-district-points-main {
  text-align: center;
  flex-direction: column;
  grid-area: 1 / 2 / 3;
  justify-content: center;
  align-items: center;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.ms-app .profile-district-points-value {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.05;
}

.ms-app .profile-district-points-range {
  color: var(--text-secondary);
  font-size: .68rem;
}

.ms-app .profile-district-points-nav {
  border: 1px solid var(--border-default);
  width: 26px;
  height: 26px;
  color: var(--accent-bright);
  cursor: pointer;
  background: #ffffff08;
  border-radius: 6px;
  grid-row: 1 / 3;
  font-size: .95rem;
  line-height: 1;
  transition: border-color .15s, background .15s;
}

.ms-app .profile-district-points-nav:hover {
  border-color: var(--accent-bright);
  background: #c3f74f14;
}

.ms-app .profile-district-points-nav:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: 2px;
}

.ms-app .profile-district-points-nav[data-growth-activity-nav="prev"] {
  grid-area: 1 / 1;
  align-self: center;
}

.ms-app .profile-district-points-nav[data-growth-activity-nav="next"] {
  grid-area: 1 / 3;
  align-self: center;
}

.ms-app .profile-district-points-index {
  color: var(--text-muted);
  grid-area: 2 / 1 / auto / -1;
  justify-self: center;
  margin-top: 2px;
  font-size: .58rem;
  font-weight: 600;
}

.ms-app .profile-district-points--stat {
  margin-top: 2px;
}

.ms-app .profile-district-points--stat .profile-district-points-value {
  font-size: 1.35rem;
}

.ms-app .profile-district-points--stat .profile-district-points-index, .ms-app .profile-district-points--growth-col {
  width: 100%;
}

.ms-app .profile-district-points--growth-col .profile-district-points-value {
  font-size: 1.75rem;
}

.ms-app .profile-district-points--growth-summary {
  width: 100%;
}

.ms-app .profile-district-points--growth-summary .profile-district-points-value {
  font-size: 1.45rem;
}

.ms-app .profile-growth-collectables-summary-item--points {
  align-items: stretch;
}

.ms-app .profile-growth-level-note {
  color: var(--text-muted);
  margin: -4px 0 0;
  font-size: .68rem;
  line-height: 1.45;
}

.ms-app .profile-growth-collectables-summary-note {
  color: var(--text-muted);
  margin-top: 4px;
  font-size: .68rem;
  display: block;
}

.ms-app .profile-growth-user-stats-grid--pair {
  grid-template-columns: repeat(2, 1fr);
}

.ms-app .profile-stat-card--tab {
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: inherit;
  width: 100%;
  transition: border-color .15s, background .15s, box-shadow .15s;
}

.ms-app .profile-stat-card--tab:hover {
  border-color: var(--border-strong);
  background: var(--bg-surface);
}

.ms-app .profile-stat-card--tab.is-active {
  border-color: var(--accent-bright);
  background: #c3f74f0f;
  box-shadow: 0 0 0 1px #c3f74f33;
}

.ms-app .profile-stat-card--tab:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: 2px;
}

.ms-app .profile-stat-alert-dot {
  background: var(--accent-bright);
  vertical-align: middle;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  margin-left: 7px;
  animation: 2s ease-in-out infinite profile-stat-dot-pulse;
  display: inline-block;
  box-shadow: 0 0 0 2px #c3f74f40;
}

@keyframes profile-stat-dot-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .65;
    transform: scale(.88);
  }
}

.ms-app .profile-stat-category {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  margin-bottom: 10px;
  font-size: .62rem;
  font-weight: 700;
  display: block;
}

.ms-app .profile-stat-growth-grid {
  grid-template-columns: 1fr 1fr;
  gap: 8px 10px;
  display: grid;
}

.ms-app .profile-stat-metric {
  min-width: 0;
}

.ms-app .profile-stat-metric--wide {
  grid-column: 1 / -1;
}

.ms-app .profile-stat-metric-value {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.15;
  display: block;
}

.ms-app .profile-stat-metric-value--sm {
  color: var(--text-secondary);
  font-size: .72rem;
  font-weight: 600;
  line-height: 1.25;
}

.ms-app .profile-stat-metric-value--accent {
  color: var(--accent-bright);
  font-size: 1.35rem;
}

.ms-app .profile-stat-metric-label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--text-muted);
  margin-top: 2px;
  font-size: .58rem;
  font-weight: 600;
  display: block;
}

.ms-app .profile-stat-card {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  text-align: center;
  padding: 18px 16px;
}

.ms-app .profile-stat-card--accent .profile-stat-value {
  color: var(--accent-bright);
}

.ms-app .profile-stat-card--muted .profile-stat-value {
  color: var(--text-secondary);
}

.ms-app .profile-stat-value {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.1;
}

.ms-app .profile-stat-label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  margin-top: 6px;
  font-size: .65rem;
  font-weight: 600;
}

.ms-app .profile-identity-body {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 300px);
  align-items: start;
  gap: 20px;
  display: grid;
}

.ms-app .profile-identity-body.profile-identity--no-key {
  grid-template-columns: 1fr;
}

.ms-app .profile-identity-main-col, .ms-app .profile-identity-aside {
  flex-direction: column;
  gap: 20px;
  min-width: 0;
  display: flex;
}

.ms-app .profile-widget {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 20px 22px;
}

.ms-app .profile-widget--key {
  padding: 16px;
}

.ms-app .profile-widget-head {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  display: flex;
}

.ms-app .profile-widget-title {
  font-family: var(--font-heading);
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--text-primary);
  margin-bottom: 16px;
  font-size: .82rem;
  font-weight: 700;
}

.ms-app .profile-widget-head .profile-widget-title {
  margin-bottom: 0;
}

.ms-app .profile-widget-section + .profile-widget-section {
  border-top: 1px solid var(--border-default);
  margin-top: 18px;
  padding-top: 18px;
}

.ms-app .profile-widget-link {
  padding: 4px 8px;
  font-size: .78rem;
}

.ms-app .profile-identity-meta {
  color: var(--text-secondary);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  font-size: .78rem;
  display: flex;
}

.ms-app .profile-identity-meta-sep {
  color: var(--text-muted);
  opacity: .7;
}

.ms-app .profile-identity-meta-item--country {
  align-items: center;
  gap: 4px;
  display: inline-flex;
}

.ms-app .profile-motto {
  color: var(--text-muted);
  margin: 8px 0 0;
  font-size: .82rem;
  font-style: italic;
  line-height: 1.45;
}

.ms-app .profile-biography {
  color: var(--text-secondary);
  white-space: pre-wrap;
  font-size: .84rem;
  line-height: 1.65;
}

.ms-app .profile-module--district {
  border-color: var(--border-default);
}

.ms-app .profile-module-kicker {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: 4px;
  font-size: .58rem;
  font-weight: 600;
  display: block;
}

.ms-app .profile-module-head--district .profile-module-title, .ms-app .profile-module-title {
  font-family: var(--font-heading);
  text-transform: none;
  letter-spacing: 0;
  color: var(--text-primary);
  font-size: 1.15rem;
  font-weight: 700;
}

.ms-app .profile-builder-tabs {
  gap: 8px;
  margin-bottom: 16px;
  display: flex;
}

.ms-app .profile-builder-tabs--compact {
  margin-bottom: 12px;
}

.ms-app .profile-builder-tab {
  color: var(--text-primary);
  cursor: pointer;
  background: #ffffff0d;
  border: 1px solid #ffffff24;
  border-radius: 999px;
  padding: 8px 16px;
  font-size: .78rem;
  font-weight: 600;
  transition: background .15s, border-color .15s, color .15s, box-shadow .15s;
}

.ms-app .profile-builder-tab:not(.active):hover {
  color: var(--text-primary);
  background: #ffffff14;
  border-color: #c3f74f73;
}

.ms-app .profile-builder-tab.active {
  background: var(--accent-bright);
  border-color: var(--accent-bright);
  color: #111;
  box-shadow: 0 0 0 1px #c3f74f40;
}

.ms-app .profile-builder-subhead {
  font-family: var(--font-heading);
  color: var(--text-primary);
  margin: 0 0 10px;
  font-size: .82rem;
  font-weight: 700;
}

.ms-app .profile-builder-subhead + .profile-builder-subhead, .ms-app .profile-timeline-projects + .profile-builder-subhead, .ms-app .profile-builder-tags + .profile-builder-subhead {
  margin-top: 18px;
}

.ms-app .profile-builder-subdesc {
  color: var(--text-muted);
  margin: -6px 0 10px;
  font-size: .72rem;
  line-height: 1.45;
}

.ms-app .profile-builder-tags {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.ms-app .profile-builder-tag {
  border: 1px solid var(--border-default);
  color: var(--text-secondary);
  background: #ffffff08;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: .72rem;
  display: inline-flex;
}

.ms-app .profile-timeline-list {
  flex-direction: column;
  gap: 0;
  padding-left: 4px;
  display: flex;
}

.ms-app .profile-timeline-entry {
  grid-template-columns: 16px 1fr;
  gap: 12px;
  padding-bottom: 16px;
  display: grid;
}

.ms-app .profile-timeline-entry-marker {
  background: var(--accent-bright);
  border-radius: 50%;
  width: 10px;
  height: 10px;
  margin-top: 8px;
  margin-left: 3px;
  position: relative;
  box-shadow: 0 0 0 3px #c3f74f26;
}

.ms-app .profile-timeline-entry:not(:last-child) .profile-timeline-entry-marker:after {
  content: "";
  background: var(--border-default);
  width: 2px;
  height: calc(100% + 20px);
  position: absolute;
  top: 12px;
  left: 4px;
}

.ms-app .profile-timeline-entry-card {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 14px 16px;
}

.ms-app .profile-timeline-entry-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 6px;
  display: flex;
}

.ms-app .profile-timeline-entry-title {
  color: var(--text-primary);
  margin: 0;
  font-size: .88rem;
  font-weight: 700;
}

.ms-app .profile-timeline-entry-date {
  color: var(--text-muted);
  flex-shrink: 0;
  font-size: .68rem;
}

.ms-app .profile-timeline-entry-desc {
  color: var(--text-secondary);
  margin: 0 0 10px;
  font-size: .76rem;
  line-height: 1.5;
}

.ms-app .profile-timeline-projects, .ms-app .profile-timeline-goals {
  flex-direction: column;
  gap: 10px;
  margin-bottom: 4px;
  display: flex;
}

.ms-app .profile-timeline-project, .ms-app .profile-timeline-goal {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 14px 16px;
}

.ms-app .profile-timeline-project-head, .ms-app .profile-timeline-goal-head {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
  display: flex;
}

.ms-app .profile-timeline-project-title, .ms-app .profile-timeline-goal-title {
  color: var(--text-primary);
  margin: 0;
  font-size: .86rem;
  font-weight: 700;
}

.ms-app .profile-timeline-project-desc, .ms-app .profile-timeline-goal-desc {
  color: var(--text-secondary);
  margin: 0;
  font-size: .76rem;
  line-height: 1.5;
}

.ms-app .profile-timeline-status {
  text-transform: uppercase;
  letter-spacing: .04em;
  border-radius: 999px;
  flex-shrink: 0;
  padding: 3px 8px;
  font-size: .62rem;
  font-weight: 700;
}

.ms-app .profile-timeline-status--active {
  color: var(--accent-bright);
  background: #c3f74f26;
  border: 1px solid #c3f74f59;
}

.ms-app .profile-timeline-status--planned, .ms-app .profile-timeline-status--completed {
  color: var(--text-muted);
  border: 1px solid var(--border-default);
  background: #ffffff0a;
}

.ms-app .profile-timeline-horizon {
  color: var(--text-muted);
  flex-shrink: 0;
  font-size: .68rem;
}

.ms-app .profile-portfolio-grid {
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  align-items: start;
  gap: 16px;
  display: grid;
}

.ms-app .profile-portfolio-card {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  flex-direction: column;
  gap: 10px;
  height: 100%;
  min-height: 0;
  padding: 16px;
  display: flex;
  overflow: hidden;
}

.ms-app .profile-portfolio-card--has-cover {
  padding-top: 0;
}

.ms-app .profile-portfolio-card-cover {
  aspect-ratio: 16 / 10;
  background: var(--bg-elevated);
  margin: 0 -16px 4px;
  overflow: hidden;
}

.ms-app .profile-portfolio-card--has-cover .profile-portfolio-card-cover {
  margin-top: 0;
}

.ms-app .profile-portfolio-card-cover img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.ms-app .profile-portfolio-card-title {
  color: var(--text-primary);
  margin: 0;
  font-size: .88rem;
  font-weight: 700;
}

.ms-app .profile-portfolio-card-desc {
  color: var(--text-secondary);
  flex: 1;
  margin: 0;
  font-size: .76rem;
  line-height: 1.55;
}

.ms-app .profile-portfolio-card-links {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.ms-app .profile-portfolio-card-link {
  color: var(--accent-lime);
  background: #c6ff0014;
  border: 1px solid #c6ff0059;
  border-radius: 999px;
  align-items: center;
  padding: 4px 10px;
  font-size: .68rem;
  font-weight: 600;
  text-decoration: none;
  transition: background .15s, border-color .15s;
  display: inline-flex;
}

.ms-app .profile-portfolio-card-link:hover {
  background: #c6ff0029;
  border-color: #c6ff008c;
}

.ms-app .profile-portfolio-card-date {
  color: var(--text-muted);
  margin-top: auto;
  font-size: .68rem;
}

.ms-app .profile-edit-portfolio-links {
  flex-direction: column;
  gap: 8px;
  margin-bottom: 8px;
  display: flex;
}

.ms-app .profile-edit-portfolio-link-row {
  align-items: flex-end;
  gap: 8px;
  display: flex;
}

.ms-app .profile-edit-portfolio-link-fields {
  flex: 1;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 8px;
  display: grid;
}

.ms-app .profile-edit-portfolio-link-remove {
  flex-shrink: 0;
  min-width: 32px;
  padding: 6px 8px;
  font-size: 1rem;
  line-height: 1;
}

.ms-app .profile-networking-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  display: grid;
}

.ms-app .profile-networking-col {
  border-radius: var(--radius-sm);
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  min-height: 160px;
  padding: 18px 18px 20px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.ms-app .profile-networking-col:before {
  content: "";
  border-radius: 3px 0 0 3px;
  width: 3px;
  position: absolute;
  inset: 0 auto 0 0;
}

.ms-app .profile-networking-col--help {
  background: linear-gradient(145deg, #c3f74f1a 0%, #ffffff05 52%);
  border: 1px solid #c3f74f38;
  box-shadow: inset 0 1px #c3f74f14;
}

.ms-app .profile-networking-col--help:before {
  background: var(--accent-bright);
  box-shadow: 0 0 12px #c3f74f73;
}

.ms-app .profile-networking-col--seek {
  background: linear-gradient(145deg, #78b6ff1a 0%, #ffffff05 52%);
  border: 1px solid #78b6ff38;
  box-shadow: inset 0 1px #78b6ff14;
}

.ms-app .profile-networking-col--seek:before {
  background: #78b6ff;
  box-shadow: 0 0 12px #78b6ff66;
}

.ms-app .profile-networking-col-head {
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.ms-app .profile-networking-col-icon {
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  display: flex;
}

.ms-app .profile-networking-col-icon--help {
  color: var(--accent-bright);
  background: #c3f74f29;
  border: 1px solid #c3f74f59;
}

.ms-app .profile-networking-col-icon--seek {
  color: #9cc9ff;
  background: #78b6ff24;
  border: 1px solid #78b6ff59;
}

.ms-app .profile-networking-col-head-text {
  flex: 1;
  min-width: 0;
}

.ms-app .profile-networking-col-kicker {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: 2px;
  font-size: .58rem;
  font-weight: 700;
  display: block;
}

.ms-app .profile-networking-col--help .profile-networking-col-kicker {
  color: #c3f74fbf;
}

.ms-app .profile-networking-col--seek .profile-networking-col-kicker {
  color: #9cc9ffd9;
}

.ms-app .profile-networking-col-title {
  color: var(--text-primary);
  margin: 0;
  font-size: .92rem;
  font-weight: 700;
  line-height: 1.25;
}

.ms-app .profile-networking-col-count {
  border: 1px solid var(--border-default);
  min-width: 24px;
  height: 24px;
  color: var(--text-secondary);
  background: #ffffff0f;
  border-radius: 999px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding: 0 7px;
  font-size: .68rem;
  font-weight: 700;
  display: inline-flex;
}

.ms-app .profile-networking-col--help .profile-networking-col-count {
  color: var(--accent-bright);
  background: #c3f74f1f;
  border-color: #c3f74f47;
}

.ms-app .profile-networking-col--seek .profile-networking-col-count {
  color: #9cc9ff;
  background: #78b6ff1f;
  border-color: #78b6ff47;
}

.ms-app .profile-networking-col-desc {
  color: var(--text-secondary);
  margin: 0;
  font-size: .76rem;
  line-height: 1.5;
}

.ms-app .profile-networking-tags {
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 2px;
  display: flex;
}

.ms-app .profile-networking-tag {
  border-radius: 999px;
  align-items: center;
  padding: 6px 12px;
  font-size: .74rem;
  font-weight: 600;
  line-height: 1.2;
  transition: transform .15s, box-shadow .15s;
  display: inline-flex;
}

.ms-app .profile-networking-tag--help {
  color: var(--accent-bright);
  background: #c3f74f1f;
  border: 1px solid #c3f74f52;
}

.ms-app .profile-networking-tag--seek {
  color: #b8d7ff;
  background: #78b6ff1f;
  border: 1px solid #78b6ff52;
}

.ms-app .profile-networking-empty {
  border: 1px dashed var(--border-default);
  color: var(--text-muted);
  background: #ffffff05;
  border-radius: 8px;
  margin: 0;
  padding: 10px 12px;
  font-size: .72rem;
}

.ms-app .profile-edit-portfolio-list, .ms-app #profile-edit-past-list {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.ms-app .profile-edit-portfolio-item, .ms-app .profile-edit-timeline-past-item {
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  background: #ffffff05;
  padding: 12px;
}

.ms-app .profile-edit-portfolio-item-head {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
  display: flex;
}

.ms-app .profile-edit-portfolio-cover-row {
  grid-template-columns: minmax(0, 1fr) min(200px, 40%);
  align-items: start;
  gap: 12px;
  margin-bottom: 4px;
  display: grid;
}

.ms-app .profile-edit-portfolio-cover-side {
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.ms-app .profile-edit-portfolio-cover-preview {
  aspect-ratio: 16 / 10;
  border: 1px dashed var(--border-strong);
  background: var(--bg-surface);
  color: var(--text-muted);
  text-align: center;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  padding: 10px;
  font-size: .68rem;
  display: flex;
  overflow: hidden;
}

.ms-app .profile-edit-portfolio-cover-preview.has-image {
  border-style: solid;
  padding: 0;
}

.ms-app .profile-edit-portfolio-cover-preview img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.ms-app .profile-card-config-portfolio-thumb {
  object-fit: cover;
  vertical-align: middle;
  border: 1px solid var(--border-default);
  border-radius: 4px;
  width: 36px;
  height: 24px;
  margin-right: 8px;
}

.ms-app .profile-sync-row {
  align-items: flex-start;
  gap: 12px;
  padding: 10px 0;
  display: flex;
}

.ms-app .profile-sync-row + .profile-sync-row {
  border-top: 1px solid var(--border-default);
}

.ms-app .profile-sync-icon {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  width: 28px;
  height: 28px;
  color: var(--accent-bright);
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: .72rem;
  display: flex;
}

.ms-app .profile-sync-body {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.ms-app .profile-sync-label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--text-muted);
  font-size: .68rem;
}

.ms-app .profile-sync-value {
  color: var(--text-secondary);
  word-break: break-all;
  font-size: .82rem;
}

.ms-app .profile-rank-chip {
  background: var(--accent-soft);
  color: var(--accent-bright);
  border-radius: 999px;
  padding: 4px 10px;
  font-size: .78rem;
  font-weight: 600;
  display: inline-flex;
}

.ms-app .profile-member-since-chip {
  background: #c3f74f1a;
  border: 1px solid #c3f74f6b;
  border-radius: 999px;
  align-items: center;
  gap: 4px;
  padding: 5px 12px;
  font-size: .8rem;
  line-height: 1.2;
  display: inline-flex;
  box-shadow: 0 0 0 1px #c3f74f14;
}

.ms-app .profile-member-since-chip-label {
  color: var(--text-primary);
  font-weight: 600;
}

.ms-app .profile-member-since-chip-date {
  color: var(--accent-bright);
  letter-spacing: .02em;
  font-weight: 700;
}

.ms-app .profile-avatar-wrap {
  flex-shrink: 0;
}

.ms-app .profile-info-head {
  align-items: center;
  gap: 12px;
  margin-bottom: 4px;
  display: flex;
}

.ms-app .profile-info-head .profile-name {
  margin-bottom: 0;
}

.ms-app .profile-section-edit {
  flex-shrink: 0;
  padding: 4px 10px;
  font-size: .78rem;
}

.ms-app .profile-edit-avatar-block {
  border-bottom: 1px solid var(--border-default);
  margin-bottom: 18px;
  padding-bottom: 18px;
}

.ms-app .profile-edit-avatar-block .creator-label {
  margin-top: 0;
}

.ms-app .profile-edit-avatar-row {
  align-items: center;
  gap: 20px;
  display: flex;
}

.ms-app .profile-edit-avatar-preview {
  cursor: pointer;
  border-radius: var(--radius-sm);
  flex-shrink: 0;
  transition: box-shadow .15s;
  position: relative;
}

.ms-app .profile-edit-avatar-preview:hover, .ms-app .profile-edit-avatar-preview:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px #c3f74f59;
}

.ms-app .profile-edit-avatar-preview.has-avatar:after {
  content: "Zmień";
  color: #0a0a0a;
  background: var(--accent-bright);
  opacity: 0;
  pointer-events: none;
  border-radius: 999px;
  padding: 2px 7px;
  font-size: .62rem;
  font-weight: 600;
  transition: opacity .15s;
  position: absolute;
  inset: auto 6px 6px auto;
}

.ms-app .profile-edit-avatar-preview:hover:after {
  opacity: 1;
}

.ms-app .profile-edit-avatar-actions {
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
  display: flex;
}

.ms-app .profile-edit-avatar-upload {
  cursor: pointer;
}

.ms-app .profile-edit-avatar-hint {
  color: var(--text-muted);
  max-width: 260px;
  margin: 0;
  font-size: .72rem;
  line-height: 1.45;
}

.ms-app .profile-edit-avatar-status {
  max-width: 280px;
  color: var(--text-secondary);
  margin: 4px 0 0;
  font-size: .72rem;
  line-height: 1.45;
}

.ms-app .profile-edit-avatar-status.is-error {
  color: #ff8f8f;
}

.ms-app .profile-edit-avatar-status.is-success {
  color: var(--accent-bright);
}

.ms-app .profile-edit-name-row {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 0;
  display: grid;
}

.ms-app .profile-edit-name-field {
  min-width: 0;
}

.ms-app .profile-edit-name-field .creator-label {
  margin-top: 0;
}

.ms-app .profile-edit-section .profile-edit-name-row + .creator-label {
  margin-top: 14px;
}

@media (max-width: 768px) {
  .ms-app .profile-edit-name-row {
    grid-template-columns: 1fr;
  }

  .ms-app .profile-edit-avatar-row {
    flex-direction: column;
    align-items: flex-start;
  }
}

.ms-app .profile-edit-section.is-hidden {
  display: none;
}

.ms-app .profile-edit-section .creator-label:first-child {
  margin-top: 0;
}

.ms-app .profile-avatar-wrap .rank-badge {
  box-shadow: 0 0 0 2px var(--accent-bright), 0 0 24px #c3f74f26;
}

.ms-app .profile-edit-btn, .ms-app .profile-section-edit, .ms-app .profile-message-btn {
  white-space: nowrap;
}

.ms-app .profile-sections {
  flex-direction: column;
  gap: 24px;
  display: flex;
}

.ms-app .profile-module--collapsible.is-collapsed {
  padding: 16px 20px 18px;
}

.ms-app .profile-module--collapsible.is-collapsed .profile-module-head {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.ms-app .profile-module--collapsible.is-collapsed .profile-module-desc {
  display: none;
}

.ms-app .profile-module-head--collapsible {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.ms-app .profile-module-head-main {
  flex: 1;
  min-width: 0;
}

.ms-app .profile-module-toggle {
  width: 100%;
  color: inherit;
  text-align: left;
  cursor: pointer;
  background: none;
  border: none;
  align-items: flex-start;
  gap: 12px;
  padding: 0;
  display: flex;
}

.ms-app .profile-module-toggle:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: 4px;
  border-radius: 6px;
}

.ms-app .profile-module-chevron {
  width: 22px;
  height: 22px;
  color: var(--text-muted);
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  margin-top: 2px;
  transition: transform .2s, color .15s;
  display: flex;
}

.ms-app .profile-module-chevron:before {
  content: "";
  border-bottom: 2px solid;
  border-right: 2px solid;
  width: 7px;
  height: 7px;
  transform: rotate(45deg)translate(-1px, -1px);
}

.ms-app .profile-module--collapsible.is-collapsed .profile-module-chevron {
  transform: rotate(-90deg);
}

.ms-app .profile-module-toggle:hover .profile-module-chevron {
  color: var(--accent-bright);
}

.ms-app .profile-module-body {
  display: block;
}

.ms-app .profile-module--collapsible.is-collapsed .profile-module-body {
  display: none;
}

.ms-app .profile-module {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  padding: 28px 32px 32px;
  scroll-margin-top: 72px;
}

.ms-app .profile-module-head {
  border-bottom: 1px solid var(--border-default);
  margin-bottom: 24px;
  padding-bottom: 20px;
}

.ms-app .profile-module-head--app {
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  display: flex;
}

.ms-app .profile-module-title {
  font-family: var(--font-heading);
  color: var(--text-primary);
  text-transform: none;
  letter-spacing: 0;
  margin-bottom: 6px;
  font-size: 1.15rem;
  font-weight: 700;
}

.ms-app .profile-module-title--app {
  letter-spacing: 0;
  color: var(--text-primary);
  text-transform: none;
  font-size: 1.15rem;
  font-weight: 700;
}

.ms-app .profile-module-desc {
  color: var(--text-subtitle);
  max-width: 720px;
  font-size: .84rem;
  line-height: 1.55;
}

.ms-app .profile-module-head--split {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.ms-app .profile-module-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 24px;
  display: grid;
}

.ms-app .profile-module-summary-item {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 16px 18px;
}

.ms-app .profile-module-summary-item--accent .profile-module-summary-value {
  color: var(--accent-bright);
}

.ms-app .profile-module-summary-item--wide {
  grid-column: span 1;
}

.ms-app .profile-module-summary-value {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.1;
  display: block;
}

.ms-app .profile-module-summary-value--sm {
  color: var(--text-secondary);
  font-size: .82rem;
  font-weight: 500;
  line-height: 1.45;
}

.ms-app .profile-module-summary-label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  margin-top: 6px;
  font-size: .65rem;
  font-weight: 600;
  display: block;
}

.ms-app .profile-module-head--makerspace {
  flex-wrap: wrap;
  align-items: center;
}

.ms-app .profile-ms-impact-summary {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  text-align: right;
  flex-direction: column;
  flex-shrink: 0;
  align-items: flex-end;
  gap: 2px;
  min-width: 120px;
  padding: 10px 14px;
  display: flex;
}

.ms-app .profile-ms-impact-value {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.1;
}

.ms-app .profile-ms-impact-label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  white-space: nowrap;
  font-size: .62rem;
  font-weight: 600;
}

.ms-app .profile-module--collapsible.is-collapsed .profile-ms-impact-summary {
  display: flex;
}

.ms-app .profile-notif-list {
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--bg-elevated);
  overflow: hidden;
}

.ms-app .profile-notif-mark-all {
  white-space: nowrap;
  flex-shrink: 0;
}

.ms-app .profile-module-brand {
  flex: 1;
  min-width: 0;
}

.ms-app .profile-module-toggle .profile-module-desc {
  max-width: none;
}

.ms-app .profile-module-empty {
  color: var(--text-muted);
  padding: 8px 0;
  font-size: .84rem;
}

.ms-app .profile-general-grid {
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  display: grid;
}

.ms-app .profile-general-block {
  min-width: 0;
}

.ms-app .profile-rank-detail {
  margin-bottom: 8px;
}

.ms-app .profile-module-head--certificates {
  flex-wrap: wrap;
  align-items: center;
}

.ms-app .profile-certificates-count {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  text-align: right;
  flex-direction: column;
  flex-shrink: 0;
  align-items: flex-end;
  gap: 2px;
  min-width: 120px;
  padding: 10px 14px;
  display: flex;
}

.ms-app .profile-certificates-count-value {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.1;
}

.ms-app .profile-certificates-count-total {
  color: var(--text-secondary);
  font-weight: 600;
}

.ms-app .profile-certificates-count-label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  text-align: right;
  font-size: .62rem;
  font-weight: 600;
  line-height: 1.25;
}

.ms-app .profile-module--collapsible.is-collapsed .profile-certificates-count {
  display: flex;
}

.ms-app .profile-card-bar {
  background: none;
  border: none;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  display: flex;
}

.ms-app .profile-card-switch {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.ms-app .profile-card-switch-label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  white-space: nowrap;
  font-size: .62rem;
  font-weight: 700;
}

.ms-app .profile-card-switch input {
  opacity: 0;
  pointer-events: none;
  width: 0;
  height: 0;
  position: absolute;
}

.ms-app .profile-card-switch-track {
  background: #ffffff24;
  border-radius: 999px;
  flex-shrink: 0;
  width: 38px;
  height: 22px;
  transition: background .2s;
  position: relative;
}

.ms-app .profile-card-switch-track:after {
  content: "";
  background: #fff;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  transition: transform .2s;
  position: absolute;
  top: 2px;
  left: 2px;
  box-shadow: 0 1px 4px #00000047;
}

.ms-app .profile-card-switch input:checked + .profile-card-switch-track {
  background: #9fd356;
}

.ms-app .profile-card-switch input:checked + .profile-card-switch-track:after {
  transform: translateX(16px);
}

.ms-app .profile-card-switch input:focus-visible + .profile-card-switch-track {
  outline: 2px solid var(--accent-bright);
  outline-offset: 2px;
}

.ms-app .profile-card-pick-btn {
  color: var(--accent-bright);
  cursor: pointer;
  background: #c3f74f14;
  border: 1px solid #c3f74f59;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: .68rem;
  font-weight: 600;
  transition: background .15s, border-color .15s;
}

.ms-app .profile-card-pick-btn:hover {
  border-color: var(--accent-bright);
  background: #c3f74f29;
}

.ms-app .profile-module-head-side {
  flex-wrap: wrap;
  flex-shrink: 0;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.ms-app .profile-card-config-modal-body {
  max-height: min(52vh, 420px);
  margin-bottom: 16px;
  overflow-y: auto;
}

.ms-app .profile-card-config-modal-actions {
  justify-content: flex-end;
  display: flex;
}

.ms-app .profile-card-intro-card {
  max-width: 520px;
}

.ms-app .profile-card-intro-body {
  flex-direction: column;
  gap: 16px;
  margin-top: 4px;
  display: flex;
}

.ms-app .profile-card-intro-lead {
  color: var(--text-secondary);
  margin: 0;
  font-size: .86rem;
  line-height: 1.55;
}

.ms-app .profile-card-intro-preview {
  background: #c3f74f0f;
  border: 2px solid #c3f74fb8;
  border-radius: 12px;
  padding: 14px 16px;
  box-shadow: 0 0 0 1px #c3f74f24;
}

.ms-app .profile-card-intro-preview-kicker {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--text-muted);
  margin-bottom: 6px;
  font-size: .58rem;
  font-weight: 700;
  display: block;
}

.ms-app .profile-card-intro-preview-title {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: .95rem;
  font-weight: 600;
  display: block;
}

.ms-app .profile-card-intro-preview-badge {
  color: var(--accent-bright);
  font-weight: 600;
}

.ms-app .profile-card-intro-preview-meta {
  color: var(--text-muted);
  margin-top: 6px;
  font-size: .72rem;
  display: block;
}

.ms-app .profile-card-intro-steps {
  color: var(--text-secondary);
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding-left: 1.15rem;
  font-size: .82rem;
  line-height: 1.5;
  display: flex;
}

.ms-app .profile-card-intro-steps strong {
  color: var(--text-primary);
  font-weight: 600;
}

.ms-app .profile-card-intro-note {
  color: var(--text-muted);
  margin: 0;
  font-size: .72rem;
  line-height: 1.45;
}

.ms-app .profile-card-intro-actions {
  justify-content: flex-end;
  margin-top: 18px;
  display: flex;
}

.ms-app .profile-card-intro-banner {
  background: linear-gradient(135deg, #c3f74f1f, #c3f74f0a);
  border: 2px solid #c3f74f8c;
  border-radius: 14px;
  margin-bottom: 20px;
  box-shadow: 0 0 0 1px #c3f74f1f;
}

.ms-app .profile-card-intro-banner.is-attention {
  animation: .85s profile-card-intro-pulse;
}

@keyframes profile-card-intro-pulse {
  0%, 100% {
    box-shadow: 0 0 0 1px #c3f74f1f;
  }

  50% {
    box-shadow: 0 0 0 4px #c3f74f59;
  }
}

.ms-app .profile-card-intro-banner-inner {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 16px 18px;
  display: flex;
}

.ms-app .profile-card-intro-banner-kicker {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--accent-bright);
  margin: 0 0 6px;
  font-size: .58rem;
  font-weight: 700;
}

.ms-app .profile-card-intro-banner-title {
  font-family: var(--font-heading);
  color: var(--text-primary);
  margin: 0 0 8px;
  font-size: 1.05rem;
  font-weight: 700;
}

.ms-app .profile-card-intro-banner-text {
  color: var(--text-secondary);
  max-width: 62ch;
  margin: 0;
  font-size: .84rem;
  line-height: 1.55;
}

.ms-app .profile-card-intro-banner-text strong {
  color: var(--text-primary);
  font-weight: 600;
}

.ms-app .profile-card-intro-banner-actions {
  flex-direction: column;
  flex-shrink: 0;
  align-items: stretch;
  gap: 8px;
  display: flex;
}

.ms-app .profile-card-intro-banner-more {
  white-space: nowrap;
}

@media (max-width: 720px) {
  .ms-app .profile-card-intro-banner-inner {
    flex-direction: column;
  }

  .ms-app .profile-card-intro-banner-actions {
    flex-flow: wrap;
  }
}

.ms-app .profile-card-config {
  background: none;
  border: none;
  margin-bottom: 0;
  padding: 0;
}

.ms-app .profile-card-config-head {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  margin-bottom: 10px;
  font-size: .72rem;
  font-weight: 700;
}

.ms-app .profile-card-config-note {
  color: var(--text-secondary);
  margin: 0;
  font-size: .76rem;
  line-height: 1.45;
}

.ms-app .profile-card-config-head--split {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.ms-app .profile-card-config-bulk-btn {
  color: var(--accent-bright);
  cursor: pointer;
  text-transform: none;
  letter-spacing: 0;
  background: none;
  border: none;
  padding: 0;
  font-size: .68rem;
  font-weight: 600;
}

.ms-app .profile-card-config-bulk-btn:hover {
  text-decoration: underline;
}

.ms-app .profile-card-config-collectables-pick.is-hidden {
  display: none;
}

.ms-app .profile-card-config-list {
  flex-direction: column;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.ms-app .profile-card-config-label {
  border: 1px solid var(--border-default);
  cursor: pointer;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  font-size: .78rem;
  display: flex;
}

.ms-app .profile-card-config-label:hover {
  border-color: var(--border-strong);
}

.ms-app .profile-card-config-item-title {
  color: var(--text-primary);
  flex: 1;
  align-items: center;
  gap: 8px;
  font-weight: 500;
  display: inline-flex;
}

.ms-app .profile-card-config-item-meta {
  color: var(--text-muted);
  font-size: .68rem;
}

.ms-app .profile-card-config-inline {
  color: var(--text-secondary);
  cursor: pointer;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
  font-size: .78rem;
  display: flex;
}

.ms-app .profile-card-config-empty {
  color: var(--text-muted);
  font-size: .78rem;
}

.ms-app .profile-widget-head-actions, .ms-app .profile-hero-contact-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  display: flex;
}

.ms-app .profile-hero-contact-head {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  display: flex;
}

.ms-app .profile-cert-carousel-wrap {
  grid-template-columns: auto 1fr auto;
  align-items: stretch;
  gap: 10px;
  display: grid;
}

.ms-app .profile-cert-carousel-wrap:not(.profile-cert-carousel-wrap--scrollable) .profile-cert-carousel-nav {
  visibility: hidden;
  pointer-events: none;
}

.ms-app .profile-cert-carousel-nav {
  width: 36px;
  height: 36px;
  color: var(--accent-bright);
  background: #c3f74f14;
  border: 1px solid #c3f74f73;
  border-radius: 8px;
  flex-shrink: 0;
  align-self: center;
  font-size: 1.35rem;
  line-height: 1;
  transition: background .15s, border-color .15s, opacity .15s;
}

.ms-app .profile-cert-carousel-nav:hover:not(:disabled) {
  border-color: var(--accent-bright);
  background: #c3f74f29;
}

.ms-app .profile-cert-carousel-nav:disabled {
  opacity: .35;
  cursor: not-allowed;
}

.ms-app .profile-cert-carousel-viewport {
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  min-width: 0;
  overflow: auto hidden;
}

.ms-app .profile-cert-carousel-viewport::-webkit-scrollbar {
  display: none;
}

.ms-app .profile-cert-carousel-track {
  gap: 12px;
  min-width: min-content;
  display: flex;
}

.ms-app .profile-cert-card {
  flex: 0 0 var(--cert-slide-w, 160px);
  width: var(--cert-slide-w, 160px);
  scroll-snap-align: start;
  scroll-snap-stop: always;
  cursor: pointer;
  box-sizing: border-box;
  border: 1px solid #0000;
  border-radius: 12px;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  padding: 0;
  transition: border-color .15s, background .15s, box-shadow .15s;
  display: flex;
}

.ms-app .profile-cert-card.is-on-business-card .profile-cert-card-thumb {
  background: #00000038;
  border: 2px solid #c3f74fb8;
  border-radius: 10px;
  padding: 4px;
  box-shadow: 0 0 0 1px #c3f74f2e;
}

.ms-app .profile-cert-card.is-on-business-card .profile-cert-card-kicker:after {
  content: " · wizytówka";
  color: var(--accent-bright);
  text-transform: lowercase;
  font-weight: 600;
}

.ms-app .profile-cert-card-thumb {
  aspect-ratio: 1;
  border-radius: 8px;
  width: 100%;
  min-width: 0;
  position: relative;
  overflow: hidden;
}

.ms-app .profile-cert-card.is-on-business-card .profile-cert-card-title {
  color: var(--text-primary);
}

.ms-app .carousel-card.is-on-business-card {
  border: 2px solid #c3f74fb8;
  box-shadow: 0 0 0 1px #c3f74f2e;
}

.ms-app .carousel-card.is-on-business-card .carousel-body:after {
  content: "Na wizytówce";
  color: var(--accent-bright);
  margin-top: 6px;
  font-size: .62rem;
  font-weight: 600;
  display: block;
}

.ms-app .profile-badge-item.is-on-business-card {
  background: #c3f74f0a;
  border: 2px solid #c3f74f8c;
}

.ms-app .profile-badge-item.is-on-business-card .profile-badge-title:after {
  content: " · wizytówka";
  color: var(--accent-bright);
  font-size: .78rem;
  font-weight: 600;
}

.ms-app .profile-widget.is-on-business-card, .ms-app .profile-hero-contact.is-on-business-card {
  border-radius: var(--radius-sm);
  border: 2px solid #c3f74f73;
}

.ms-app .profile-widget.is-on-business-card .profile-widget-title:after, .ms-app .profile-hero-contact.is-on-business-card .profile-hero-contact-title:after {
  content: " · wizytówka";
  color: var(--accent-bright);
  font-size: .82rem;
  font-weight: 600;
}

.ms-app .profile-cert-card-thumb .campusai-cert-thumb {
  width: 100%;
  height: 100%;
}

.ms-app .profile-cert-card-body {
  min-width: 0;
}

.ms-app .profile-cert-card-kicker {
  color: var(--text-muted);
  margin: 0 0 2px;
  font-size: .62rem;
  font-weight: 500;
  line-height: 1.2;
}

.ms-app .profile-cert-card-title {
  font-family: var(--font-heading);
  color: var(--text-primary);
  white-space: nowrap;
  text-overflow: ellipsis;
  margin: 0;
  font-size: .82rem;
  font-weight: 700;
  line-height: 1.25;
  overflow: hidden;
}

.ms-app .profile-cert-card:hover .profile-cert-card-title {
  color: var(--accent-bright);
}

.ms-app .campusai-cert-thumb {
  cursor: zoom-in;
  text-align: left;
  width: 100%;
  height: 100%;
  color: inherit;
  background: none;
  border: none;
  padding: 0;
  transition: transform .15s;
  display: block;
}

.ms-app .campusai-cert-thumb:hover {
  transform: translateY(-2px);
}

.ms-app .campusai-cert-thumb:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: 2px;
  border-radius: 10px;
}

.ms-app .campusai-cert-thumb-shell {
  box-sizing: border-box;
  background-color: #8dc63f;
  background-image: linear-gradient(135deg, #ffffff14 25%, #0000 25% 50%, #ffffff14 50% 75%, #0000 75%, #0000), linear-gradient(45deg, #0000000a 25%, #0000 25% 50%, #0000000a 50% 75%, #0000 75%, #0000);
  background-size: 18px 18px, 18px 18px;
  border-radius: 10px;
  flex-direction: column;
  gap: 5px;
  height: 100%;
  padding: 8px;
  display: flex;
  box-shadow: 0 4px 14px #00000038;
}

.ms-app .campusai-cert-thumb:hover .campusai-cert-thumb-shell {
  box-shadow: 0 8px 20px #00000047;
}

.ms-app .campusai-cert-thumb-heading {
  text-align: center;
  font-family: var(--font-heading);
  letter-spacing: -.01em;
  color: #fff;
  white-space: nowrap;
  text-overflow: ellipsis;
  flex-shrink: 0;
  margin-bottom: 6px;
  font-size: .58rem;
  font-weight: 800;
  line-height: 1.15;
  display: block;
  overflow: hidden;
}

.ms-app .campusai-cert-thumb-card {
  color: #111;
  background: #fff;
  border: 2px solid #bdbdbd;
  border-radius: 4px;
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 3px;
  min-height: 0;
  padding: 8px 6px;
  display: flex;
  overflow: hidden;
}

.ms-app .campusai-cert-thumb-date {
  color: #555;
  font-size: .5rem;
}

.ms-app .campusai-cert-thumb-name {
  max-width: 100%;
  font-family: var(--font-heading);
  text-align: center;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .68rem;
  font-weight: 800;
  line-height: 1.15;
  overflow: hidden;
}

.ms-app .campusai-cert-thumb-program {
  text-align: center;
  color: #444;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-width: 100%;
  font-size: .5rem;
  line-height: 1.2;
  display: -webkit-box;
  overflow: hidden;
}

.ms-app .campusai-cert-thumb-hours {
  color: #3f5f12;
  background: #8dc63f33;
  border-radius: 999px;
  flex-shrink: 0;
  margin-top: auto;
  padding: 1px 6px;
  font-size: .48rem;
  font-weight: 700;
  line-height: 1.5;
}

.ms-app .campusai-cert--full {
  width: 100%;
  max-width: none;
}

.ms-app .campusai-cert-shell {
  background-color: #8dc63f;
  background-image: linear-gradient(135deg, #ffffff14 25%, #0000 25% 50%, #ffffff14 50% 75%, #0000 75%, #0000), linear-gradient(45deg, #0000000a 25%, #0000 25% 50%, #0000000a 50% 75%, #0000 75%, #0000);
  background-size: 28px 28px, 28px 28px;
  border-radius: 14px;
  padding: 22px 18px 18px;
  box-shadow: 0 10px 28px #00000047;
}

.ms-app .campusai-cert-heading {
  text-align: center;
  font-family: var(--font-heading);
  letter-spacing: -.02em;
  color: #fff;
  margin: 0 0 14px;
  font-size: 1.35rem;
  font-weight: 800;
}

.ms-app .campusai-cert-card {
  color: #111;
  background: #fff;
  border-radius: 4px;
  padding: 28px 26px 22px;
  box-shadow: 0 2px 10px #00000014;
}

.ms-app .campusai-cert-date {
  text-align: center;
  color: #333;
  margin-bottom: 18px;
  font-size: .82rem;
  display: block;
}

.ms-app .campusai-cert-name {
  text-align: center;
  font-family: var(--font-heading);
  color: #111;
  margin: 0 0 14px;
  font-size: 1.65rem;
  font-weight: 800;
  line-height: 1.15;
}

.ms-app .campusai-cert-program {
  text-align: center;
  color: #222;
  margin: 0 0 16px;
  font-size: .92rem;
  line-height: 1.5;
}

.ms-app .campusai-cert-program strong {
  font-weight: 700;
}

.ms-app .campusai-cert-desc, .ms-app .campusai-cert-skills, .ms-app .campusai-cert-hours {
  color: #222;
  margin: 0 0 14px;
  font-size: .78rem;
  line-height: 1.55;
}

.ms-app .campusai-cert-skills strong, .ms-app .campusai-cert-hours strong {
  font-weight: 700;
}

.ms-app .campusai-cert-divider {
  background: #8dc63f;
  height: 2px;
  margin: 18px 0 20px;
}

.ms-app .campusai-cert-signatures {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 22px;
  display: grid;
}

.ms-app .campusai-cert-signature {
  min-width: 0;
}

.ms-app .campusai-cert-signature-name {
  color: #111;
  min-height: 28px;
  margin-bottom: 4px;
  font-family: Segoe Script, Brush Script MT, cursive;
  font-size: .95rem;
  line-height: 1.2;
}

.ms-app .campusai-cert-signature-title {
  color: #444;
  font-size: .62rem;
  line-height: 1.35;
}

.ms-app .campusai-cert-footer {
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  padding-top: 4px;
  display: flex;
}

.ms-app .campusai-cert-logo {
  font-family: var(--font-heading);
  letter-spacing: -.03em;
  color: #111;
  font-size: 1.35rem;
  font-weight: 800;
}

.ms-app .campusai-cert-tagline {
  color: #555;
  margin-top: 2px;
  font-size: .68rem;
}

.ms-app .campusai-cert-verify {
  flex: 1;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.ms-app .campusai-cert-qr {
  background: #fff;
  border: 1px solid #ddd;
  flex-shrink: 0;
  grid-template-columns: repeat(7, 1fr);
  gap: 1px;
  width: 54px;
  height: 54px;
  padding: 4px;
  display: grid;
}

.ms-app .campusai-cert-qr-cell {
  background: #f4f4f4;
}

.ms-app .campusai-cert-qr-cell.is-on {
  background: #111;
}

.ms-app .campusai-cert-verify-copy {
  min-width: 0;
  max-width: 220px;
}

.ms-app .campusai-cert-verify-label {
  color: #111;
  font-size: .62rem;
  font-weight: 700;
  display: block;
}

.ms-app .campusai-cert-verify-id {
  color: #333;
  word-break: break-all;
  margin-top: 2px;
  font-size: .58rem;
  line-height: 1.35;
  display: block;
}

.ms-app .campusai-cert-verify-hint {
  color: #666;
  margin-top: 6px;
  font-size: .58rem;
  line-height: 1.35;
  display: block;
}

.ms-app .ms-modal-card--cert {
  width: min(96vw, 620px);
  max-height: min(92vh, 900px);
  padding-bottom: 20px;
  overflow: auto;
}

.ms-app .campusai-cert-modal-body {
  margin-bottom: 16px;
}

.ms-app .campusai-cert-modal-actions {
  border-top: 1px solid var(--border-default);
  justify-content: center;
  padding-top: 4px;
  display: flex;
}

.ms-app .profile-badge-grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 12px;
  display: grid;
}

.ms-app .profile-badge-item {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  display: flex;
}

.ms-app .profile-badge-icon {
  font-size: 1.4rem;
  line-height: 1;
}

.ms-app .profile-badge-title {
  font-size: .88rem;
  font-weight: 600;
}

.ms-app .profile-badge-meta {
  color: var(--text-muted);
  margin-top: 4px;
  font-size: .75rem;
}

.ms-app .profile-growth-dashboard {
  flex-direction: column;
  gap: 20px;
  display: flex;
}

.ms-app .profile-growth-level-card {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: 0;
  display: grid;
  overflow: hidden;
}

.ms-app .profile-growth-level-col {
  border-right: 1px solid var(--border-default);
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  padding: 20px 18px;
  display: flex;
}

.ms-app .profile-growth-level-col:last-child {
  border-right: none;
}

.ms-app .profile-growth-level-kicker {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  margin: 0;
  font-size: .68rem;
  font-weight: 600;
}

.ms-app .profile-growth-level-col[data-growth-level-col="rank"] {
  justify-content: center;
  padding: 22px 20px;
}

.ms-app .profile-growth-rank-wrap {
  text-align: center;
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 12px;
  min-height: 168px;
  display: flex;
}

.ms-app .profile-growth-rank-name {
  font-family: var(--font-heading);
  color: var(--text-primary);
  max-width: 100%;
  margin: 0;
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.25;
}

.ms-app .profile-growth-rank-pill {
  border: 1px solid var(--border-default);
  color: var(--text-primary);
  background: linear-gradient(#ffffff14, #00000026);
  border-radius: 999px;
  padding: 6px 12px;
  font-size: .78rem;
  font-weight: 700;
  display: inline-flex;
}

.ms-app .profile-growth-progress-wrap {
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  display: flex;
}

.ms-app .profile-growth-ring {
  --progress: 50%;
  width: 88px;
  height: 88px;
  position: relative;
}

.ms-app .profile-growth-ring svg {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.ms-app .profile-growth-ring-track {
  fill: none;
  stroke: #ffffff14;
  stroke-width: 3px;
}

.ms-app .profile-growth-ring-fill {
  fill: none;
  stroke: var(--accent-bright);
  stroke-width: 3px;
  stroke-linecap: round;
  stroke-dasharray: 100;
  stroke-dashoffset: calc(100 - var(--progress));
}

.ms-app .profile-growth-ring-value {
  font-family: var(--font-heading);
  color: var(--text-primary);
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
  font-weight: 800;
  display: flex;
  position: absolute;
  inset: 0;
}

.ms-app .profile-growth-progress-meta {
  color: var(--text-secondary);
  font-size: .76rem;
  line-height: 1.45;
}

.ms-app .profile-growth-progress-meta strong {
  color: var(--accent-bright);
  font-weight: 700;
}

.ms-app .profile-growth-progress-note {
  width: 100%;
  color: var(--text-secondary);
  background: #c3f74f14;
  border: 1px solid #c3f74f33;
  border-radius: 8px;
  padding: 8px 10px;
  font-size: .72rem;
  line-height: 1.4;
}

.ms-app .profile-growth-points-value {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.ms-app .profile-growth-streak-value {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: 1.35rem;
  font-weight: 700;
}

.ms-app .profile-growth-user-stats {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  overflow: hidden;
}

.ms-app .profile-growth-user-stats-head {
  border-bottom: 1px solid var(--border-default);
  padding: 14px 18px 12px;
}

.ms-app .profile-growth-user-stats-title {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  margin: 0;
  font-size: .72rem;
  font-weight: 700;
}

.ms-app .profile-growth-user-stats-lead {
  color: var(--text-muted);
  margin: 6px 0 0;
  font-size: .68rem;
  line-height: 1.45;
}

.ms-app .profile-growth-user-stats-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  min-height: 220px;
  display: grid;
}

.ms-app .profile-growth-stat-col {
  text-align: center;
  border-right: 1px solid var(--border-default);
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  min-width: 0;
  padding: 14px 8px 10px;
  display: flex;
}

.ms-app .profile-growth-stat-col:last-child {
  border-right: none;
}

.ms-app .profile-growth-stat-col.is-on-business-card {
  box-shadow: inset 0 -3px 0 var(--accent-bright);
  background: #c3f74f0a;
}

.ms-app .profile-growth-stat-kicker {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--text-muted);
  padding: 0 6px;
  font-size: .58rem;
  font-weight: 700;
}

.ms-app .profile-growth-stat-carousel, .ms-app .profile-growth-stat-static {
  flex: 1;
  align-items: stretch;
  min-width: 0;
  min-height: 0;
  display: flex;
}

.ms-app .profile-growth-stat-static {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 0 6px;
}

.ms-app .profile-growth-stat-carousel {
  gap: 2px;
}

.ms-app .profile-growth-stat-carousel-main {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 4px;
  min-width: 0;
  padding: 0 2px;
  display: flex;
}

.ms-app .profile-growth-stat-nav {
  width: 22px;
  height: 22px;
  color: var(--accent-bright);
  cursor: pointer;
  opacity: .85;
  background: none;
  border: none;
  border-radius: 4px;
  flex: 0 0 22px;
  align-self: center;
  padding: 0;
  font-size: 1.1rem;
  line-height: 1;
  transition: opacity .15s, background .15s;
}

.ms-app .profile-growth-stat-nav:hover {
  opacity: 1;
  background: #c3f74f14;
}

.ms-app .profile-growth-stat-nav:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: 1px;
}

.ms-app .profile-growth-stat-nav--ghost {
  pointer-events: none;
  visibility: hidden;
}

.ms-app .profile-growth-stat-art {
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 72px;
  max-height: 88px;
  margin-bottom: 2px;
  display: flex;
}

.ms-app .profile-growth-stat-art .profile-growth-collectable-art {
  min-height: 72px;
  padding: 0;
}

.ms-app .profile-growth-stat-art .profile-growth-collectable-art img {
  max-width: 92px;
  max-height: 72px;
}

.ms-app .profile-growth-stat-tier {
  color: var(--text-muted);
  font-size: .58rem;
}

.ms-app .profile-growth-stat-title {
  color: var(--text-primary);
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-width: 100%;
  font-size: .76rem;
  font-weight: 700;
  line-height: 1.25;
  display: -webkit-box;
  overflow: hidden;
}

.ms-app .profile-growth-stat-value {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: 1.85rem;
  font-weight: 800;
  line-height: 1;
}

.ms-app .profile-growth-stat-label {
  color: var(--text-secondary);
  font-size: .68rem;
}

.ms-app .profile-growth-stat-foot {
  color: var(--accent-bright);
  opacity: .9;
  margin-top: 2px;
  font-size: .62rem;
  line-height: 1.35;
}

.ms-app .profile-growth-stat-empty {
  color: var(--text-muted);
  margin: 0;
  font-size: .72rem;
  line-height: 1.4;
}

.ms-app .profile-growth-stat-progress {
  background: #ffffff14;
  border-radius: 999px;
  width: 100%;
  max-width: 88px;
  height: 3px;
  margin-bottom: 6px;
  overflow: hidden;
}

.ms-app .profile-growth-stat-progress span {
  height: 100%;
  width: var(--progress, 0%);
  border-radius: inherit;
  background: var(--accent-bright);
  display: block;
}

.ms-app .profile-growth-stat-index {
  color: var(--accent-bright);
  opacity: .85;
  margin-top: auto;
  font-size: .62rem;
  font-weight: 600;
}

.ms-app .profile-growth-stat-carousel--points .profile-growth-stat-title {
  font-size: .82rem;
}

.ms-app .profile-growth-user-stat {
  text-align: center;
  border-right: 1px solid var(--border-default);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  min-width: 0;
  padding: 18px 14px;
  display: flex;
}

.ms-app .profile-growth-user-stat:last-child {
  border-right: none;
}

.ms-app .profile-growth-user-stat-kicker {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  font-size: .62rem;
  font-weight: 700;
}

.ms-app .profile-growth-user-stat-value {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: 1.85rem;
  font-weight: 700;
  line-height: 1.05;
}

.ms-app .profile-growth-user-stat-label {
  color: var(--text-secondary);
  font-size: .72rem;
}

.ms-app .profile-growth-user-stat-foot {
  color: var(--text-muted);
  margin-top: 6px;
  font-size: .68rem;
}

.ms-app .profile-growth-privacy {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  flex-direction: column;
  gap: 12px;
  padding: 14px 16px;
  display: flex;
}

.ms-app .profile-growth-privacy-main {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  display: flex;
}

.ms-app .profile-growth-privacy-copy strong {
  color: var(--text-primary);
  margin-bottom: 4px;
  font-size: .82rem;
  display: block;
}

.ms-app .profile-growth-privacy-copy p {
  color: var(--text-muted);
  max-width: 520px;
  margin: 0;
  font-size: .74rem;
  line-height: 1.45;
}

.ms-app .profile-growth-privacy-copy p strong {
  font-size: inherit;
  color: var(--text-secondary);
  margin: 0;
  display: inline;
}

.ms-app .profile-growth-privacy-consent {
  border: 1px solid var(--border-default);
  cursor: pointer;
  background: #ffffff05;
  border-radius: 8px;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  transition: border-color .15s, background .15s;
  display: flex;
}

.ms-app .profile-growth-privacy-consent.is-required {
  background: #c3f74f0a;
  border-color: #c3f74f59;
}

.ms-app .profile-growth-privacy-consent.is-attention {
  border-color: var(--accent-bright);
  box-shadow: 0 0 0 1px #c3f74f40;
}

.ms-app .profile-growth-privacy-consent input {
  accent-color: var(--accent-bright);
  flex-shrink: 0;
  margin-top: 2px;
}

.ms-app .profile-growth-privacy-consent-text {
  color: var(--text-secondary);
  font-size: .72rem;
  line-height: 1.45;
}

.ms-app .profile-growth-privacy-consent-text strong {
  color: var(--text-primary);
  font-weight: 600;
}

.ms-app .profile-card-switch:has(.profile-leaderboard-privacy-input:disabled) {
  opacity: .55;
  cursor: not-allowed;
}

.ms-app .profile-growth-collectables-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
  display: flex;
}

.ms-app .profile-growth-collectables-head-side {
  flex-direction: column;
  flex-shrink: 0;
  align-items: flex-end;
  gap: 10px;
  display: flex;
}

.ms-app .profile-growth-collectables-head-side .profile-card-bar {
  margin-top: 2px;
}

.ms-app .profile-growth-collectables-title {
  font-family: var(--font-heading);
  color: var(--text-primary);
  margin: 0 0 4px;
  font-size: 1rem;
  font-weight: 700;
}

.ms-app .profile-growth-collectables-sub {
  color: var(--text-muted);
  margin: 0;
  font-size: .76rem;
  line-height: 1.45;
}

.ms-app .profile-growth-collectables-count {
  text-align: right;
  color: var(--text-muted);
  flex-shrink: 0;
  font-size: .72rem;
}

.ms-app .profile-growth-collectables-count strong {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: 1.1rem;
  display: block;
}

.ms-app .profile-growth-tabs {
  gap: 8px;
  margin-bottom: 14px;
  display: flex;
}

.ms-app .profile-growth-collectables-summary {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
  display: grid;
}

.ms-app .profile-growth-collectables-summary-item {
  border: 1px solid var(--border-default);
  background: #ffffff08;
  border-radius: 12px;
  padding: 12px 14px;
  transition: border-color .15s, box-shadow .15s;
}

.ms-app .profile-growth-collectables-summary-kicker {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--text-muted);
  margin-bottom: 8px;
  font-size: .58rem;
  font-weight: 700;
  display: block;
}

.ms-app .profile-growth-collectables-summary-rank {
  align-items: center;
  gap: 10px;
  display: flex;
}

.ms-app .profile-growth-collectables-summary-rank-label {
  color: var(--text-primary);
  font-size: .78rem;
  font-weight: 600;
  line-height: 1.35;
}

.ms-app .profile-growth-collectables-summary-points {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1.1;
  display: block;
}

.ms-app .profile-growth-collectables-summary-item.is-on-business-card {
  border-color: #c3f74fb8;
  box-shadow: 0 0 0 1px #c3f74f2e;
}

.ms-app .profile-growth-collectables.is-on-business-card {
  border: 1px solid #c3f74f47;
  border-radius: 14px;
  padding: 14px;
  box-shadow: 0 0 0 1px #c3f74f14;
}

.ms-app .profile-growth-collectables.is-on-business-card .profile-growth-collectables-title:after {
  content: " · wizytówka";
  color: var(--accent-bright);
  text-transform: lowercase;
  font-size: .72rem;
  font-weight: 600;
}

.ms-app .profile-growth-tab {
  border: 1px solid var(--border-default);
  color: var(--text-secondary);
  cursor: pointer;
  background: none;
  border-radius: 999px;
  padding: 7px 14px;
  font-size: .76rem;
  font-weight: 600;
  transition: background .15s, border-color .15s, color .15s;
}

.ms-app .profile-growth-tab.active {
  background: var(--accent-bright);
  border-color: var(--accent-bright);
  color: #111;
}

.ms-app .profile-growth-collectables-grid {
  grid-template-columns: repeat(auto-fill, minmax(152px, 1fr));
  gap: 12px;
  display: grid;
}

.ms-app .profile-growth-collectable {
  background: linear-gradient(180deg, #ffffff06 0%, #0000002e 100%),
    var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  cursor: default;
  flex-direction: column;
  gap: 6px;
  min-height: 188px;
  padding: 10px 10px 12px;
  transition: border-color .15s, box-shadow .15s;
  display: flex;
  overflow: hidden;
}

.ms-app .profile-growth-collectable-kicker {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--text-muted);
  font-size: .58rem;
  font-weight: 600;
}

.ms-app .profile-growth-collectable-art {
  flex: 1;
  justify-content: center;
  align-items: center;
  min-height: 104px;
  padding: 2px 4px 6px;
  display: flex;
}

.ms-app .profile-growth-collectable-art img {
  object-fit: contain;
  filter: drop-shadow(0 6px 14px #00000073);
  width: 100%;
  max-width: 128px;
  height: auto;
  max-height: 104px;
}

.ms-app .profile-growth-collectable-art--fallback {
  color: var(--accent-bright);
  font-size: 1.6rem;
  line-height: 1;
}

.ms-app .profile-growth-collectable-title {
  color: var(--text-primary);
  text-align: center;
  margin-top: auto;
  font-size: .76rem;
  font-weight: 600;
  line-height: 1.25;
}

.ms-app .profile-card-config-growth-thumb {
  object-fit: contain;
  filter: drop-shadow(0 2px 4px #00000059);
  flex-shrink: 0;
  width: 28px;
  height: 28px;
}

.ms-app .profile-card-config-growth-thumb--fallback {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  font-size: .9rem;
  display: inline-flex;
}

.ms-app .profile-growth-collectable.is-on-business-card {
  border-color: #c3f74fb8;
  box-shadow: 0 0 0 1px #c3f74f2e;
}

.ms-app .profile-growth-level-card.is-on-business-card {
  box-shadow: inset 0 -3px 0 var(--accent-bright);
  border-color: #c3f74f73;
}

.ms-app .profile-module--district.is-on-business-card {
  border-color: #c3f74f73;
  box-shadow: 0 0 0 1px #c3f74f1f;
}

.ms-app .profile-module--district.is-on-business-card .profile-module-title:after {
  content: " · wizytówka";
  color: var(--accent-bright);
  text-transform: lowercase;
  font-size: .72rem;
  font-weight: 600;
}

.ms-app .profile-portfolio-card.is-on-business-card, .ms-app .profile-timeline-entry.is-on-business-card .profile-timeline-entry-card, .ms-app .profile-timeline-project.is-on-business-card, .ms-app .profile-timeline-goal.is-on-business-card, .ms-app [data-timeline-present-extra].is-on-business-card, .ms-app [data-timeline-future-extra].is-on-business-card {
  border: 2px solid #c3f74fb8;
  box-shadow: 0 0 0 1px #c3f74f2e;
}

.ms-app .profile-timeline-entry.is-on-business-card .profile-timeline-entry-card, .ms-app .profile-timeline-project.is-on-business-card, .ms-app .profile-timeline-goal.is-on-business-card, .ms-app .profile-portfolio-card.is-on-business-card {
  border-radius: var(--radius-sm);
}

.ms-app .profile-networking-col--help.is-on-business-card {
  border-radius: var(--radius-sm);
  box-shadow: 0 0 0 1px #c3f74f2e, inset 0 -3px 0 var(--accent-bright);
  border: 2px solid #c3f74fb8;
}

.ms-app .profile-networking-col--seek.is-on-business-card {
  border-radius: var(--radius-sm);
  border: 2px solid #78b6ffb8;
  box-shadow: 0 0 0 1px #78b6ff2e, inset 0 -3px #78b6ff;
}

.ms-app .profile-app-grid {
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 12px;
  display: grid;
}

.ms-app .profile-module--future {
  border-style: dashed;
  border-color: var(--border-strong);
}

.ms-app .profile-future-app-badge {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-muted);
  border: 1px dashed var(--border-strong);
  border-radius: 999px;
  flex-shrink: 0;
  padding: 4px 10px;
  font-size: .68rem;
  font-weight: 600;
}

.ms-app .profile-future-app-summary {
  border: 1px dashed var(--border-strong);
  border-radius: var(--radius-sm);
  color: var(--text-subtitle);
  background: #ffffff05;
  margin-bottom: 20px;
  padding: 20px 24px;
  font-size: .88rem;
  font-style: italic;
  line-height: 1.5;
}

.ms-app .profile-future-app-tabs {
  border-bottom: 1px dashed var(--border-strong);
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 20px;
  display: flex;
}

.ms-app .profile-future-app-tab {
  color: var(--text-muted);
  border-bottom: 2px solid #0000;
  margin-bottom: -1px;
  padding: 10px 16px;
  font-size: .82rem;
  font-style: italic;
  font-weight: 500;
}

.ms-app .profile-future-app-tab.active {
  color: var(--text-subtitle);
  border-bottom-color: var(--border-strong);
}

.ms-app .profile-future-app-body {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}

.ms-app .profile-future-app-block {
  border: 1px dashed var(--border-strong);
  border-radius: var(--radius-sm);
  min-height: 120px;
  color: var(--text-muted);
  text-align: center;
  background: #ffffff05;
  justify-content: center;
  align-items: center;
  padding: 20px;
  font-size: .84rem;
  font-style: italic;
  line-height: 1.5;
  display: flex;
}

.ms-app .profile-app-card {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  padding: 16px 18px;
}

.ms-app .profile-app-card-head {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  display: flex;
}

.ms-app .profile-app-name {
  font-size: .92rem;
  font-weight: 600;
}

.ms-app .profile-app-status {
  text-transform: uppercase;
  letter-spacing: .04em;
  border-radius: 999px;
  flex-shrink: 0;
  padding: 2px 8px;
  font-size: .68rem;
  font-weight: 700;
}

.ms-app .profile-app-status--active {
  background: var(--accent-soft);
  color: var(--accent-bright);
}

.ms-app .profile-app-status--coming {
  color: var(--text-muted);
  background: #ffffff0f;
}

.ms-app .profile-app-desc {
  color: var(--text-subtitle);
  font-size: .8rem;
  line-height: 1.45;
}

.ms-app .profile-app-stat {
  color: var(--text-muted);
  margin-top: 10px;
  font-size: .75rem;
}

.ms-app .profile-meta-grid {
  border-top: 1px solid var(--border-default);
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-top: 24px;
  padding-top: 24px;
  display: grid;
}

.ms-app .profile-meta-label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--text-subtitle);
  margin-bottom: 12px;
  font-size: .72rem;
  font-weight: 700;
}

.ms-app .profile-meta-empty {
  color: var(--text-muted);
  font-size: .82rem;
  font-style: italic;
}

.ms-app .profile-contact-item {
  color: var(--text-secondary);
  margin-bottom: 6px;
  font-size: .82rem;
  display: block;
}

.ms-app .profile-contact-type {
  color: var(--text-subtitle);
  margin-right: 6px;
}

.ms-app .district-key-card {
  aspect-ratio: 1.586;
  background: #1a1a1a;
  border-radius: 14px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 14px 32px #0006, inset 0 1px #ffffff14;
}

.ms-app .district-key-card__pattern {
  opacity: 1;
  background: linear-gradient(135deg, #ffffff12 0%, #0000 40%, #00000059 100%), repeating-linear-gradient(135deg, #ffffff09 0 2px, #0000 2px 14px), repeating-linear-gradient(-45deg, #ffffff06 0 2px, #0000 2px 14px);
  position: absolute;
  inset: 0;
}

.ms-app .district-key-card__content {
  z-index: 1;
  color: #fff;
  text-shadow: 0 1px 2px #00000059;
  flex-direction: column;
  height: 100%;
  padding: 16px 18px 14px;
  display: flex;
  position: relative;
}

.ms-app .district-key-card__row {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.ms-app .district-key-card__row--top {
  margin-bottom: auto;
}

.ms-app .district-key-tier {
  letter-spacing: .01em;
  font-size: .82rem;
  font-weight: 500;
}

.ms-app .district-key-brand {
  text-align: right;
  line-height: 1;
}

.ms-app .district-key-brand-name {
  font-family: var(--font-heading);
  letter-spacing: -.02em;
  font-size: 1.15rem;
  font-weight: 800;
  display: block;
}

.ms-app .district-key-brand-sub {
  font-family: var(--font-heading);
  letter-spacing: .12em;
  margin-top: 2px;
  font-size: .82rem;
  font-weight: 800;
  display: block;
}

.ms-app .district-key-card__row--mid {
  align-items: center;
  margin-bottom: 14px;
}

.ms-app .district-key-hardware {
  align-items: center;
  gap: 10px;
  display: flex;
}

.ms-app .district-key-chip {
  background: linear-gradient(145deg, #d4d4d8 0%, #a1a1aa 35%, #e4e4e7 55%, #9ca3af 100%);
  border-radius: 5px;
  width: 38px;
  height: 28px;
  box-shadow: inset 0 0 0 1px #00000026;
}

.ms-app .district-key-nfc {
  opacity: .95;
  width: 22px;
  height: 22px;
}

.ms-app .district-key-valid {
  text-align: right;
}

.ms-app .district-key-valid-label {
  letter-spacing: .08em;
  opacity: .85;
  font-size: .48rem;
  display: block;
}

.ms-app .district-key-valid-date {
  letter-spacing: .04em;
  font-size: .72rem;
  font-weight: 600;
  display: block;
}

.ms-app .district-key-number {
  letter-spacing: .1em;
  margin-bottom: 8px;
  font-family: Courier New, Courier, monospace;
  font-size: .92rem;
  font-weight: 500;
}

.ms-app .district-key-card__row--bottom {
  align-items: flex-end;
}

.ms-app .district-key-holder {
  letter-spacing: .08em;
  font-size: .78rem;
  font-weight: 600;
}

.ms-app .district-key-url {
  opacity: .9;
  font-size: .72rem;
}

.ms-app .profile-toolbar {
  background: var(--bg-elevated);
  border-radius: var(--radius-sm);
  border: 1px solid var(--border-default);
  flex-wrap: wrap;
  gap: 12px 20px;
  margin-bottom: 24px;
  padding: 14px 16px;
  display: flex;
}

.ms-app .profile-toolbar--visitor {
  justify-content: flex-end;
}

.ms-app .profile-toolbar-field {
  align-items: center;
  gap: 8px;
  font-size: .78rem;
  display: flex;
}

.ms-app .profile-toolbar-label {
  color: var(--text-subtitle);
  white-space: nowrap;
}

.ms-app .profile-toolbar-select {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  color: var(--text-secondary);
  cursor: pointer;
  border-radius: 6px;
  padding: 6px 28px 6px 10px;
  font-size: .78rem;
}

.ms-app .profile-card-badge {
  text-transform: uppercase;
  letter-spacing: .04em;
  border-radius: 4px;
  margin-right: 4px;
  padding: 2px 6px;
  font-size: .6rem;
  font-weight: 700;
  display: inline-block;
}

.ms-app .profile-card-badge--draft {
  color: #fbbf24;
  background: #fbbf2433;
}

.ms-app .profile-card-badge--hidden {
  color: #94a3b8;
  background: #94a3b833;
}

.ms-app .profile-card-badge--community {
  color: var(--accent-bright);
  background: #c3f74f26;
}

.ms-app .carousel-thumb-badges {
  z-index: 1;
  flex-wrap: wrap;
  gap: 4px;
  display: flex;
  position: absolute;
  top: 8px;
  left: 8px;
}

.ms-app .carousel-meta--author {
  color: var(--text-subtitle);
  font-size: .72rem;
}

.ms-app .profile-empty-cta {
  text-align: center;
  background: var(--bg-elevated);
  border: 1px dashed var(--border-default);
  border-radius: var(--radius-sm);
  margin-bottom: 16px;
  padding: 28px 20px;
}

.ms-app .profile-empty-cta p {
  color: var(--text-subtitle);
  margin-bottom: 14px;
  font-size: .88rem;
}

.ms-app .profile-slot-note {
  color: var(--text-muted);
  margin-bottom: 16px;
  font-size: .78rem;
}

.ms-app .profile-tasks-filters {
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-bottom: 20px;
  display: flex;
}

.ms-app #profile-kanban-color-toolbar {
  margin-bottom: 16px;
}

.ms-app .profile-task-filter {
  color: var(--text-secondary);
  cursor: pointer;
  border-radius: var(--radius-pill);
  border: 1px solid var(--border-default);
  background: var(--bg-elevated);
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  font-size: .78rem;
  display: inline-flex;
}

.ms-app .profile-task-filter input {
  accent-color: var(--accent-bright);
}

.ms-app .profile-tasks-board {
  min-height: 280px;
}

.ms-app .profile-tasks-col .kanban-col-cards {
  max-height: 420px;
}

.ms-app .profile-task-card {
  cursor: pointer;
}

.ms-app .profile-task-card .kanban-card-title {
  margin-bottom: 4px;
  font-weight: 600;
}

.ms-app .profile-task-project {
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--text-subtitle);
  margin-bottom: 6px;
  font-size: .65rem;
  font-weight: 600;
}

.ms-app .profile-messages-list {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  overflow: hidden;
}

.ms-app .message-handle {
  color: var(--text-subtitle);
  font-size: .78rem;
  font-weight: 400;
}

.ms-app .message-unread-badge {
  background: var(--accent-bright);
  color: var(--text-dark);
  border-radius: 10px;
  margin-left: 6px;
  padding: 1px 6px;
  font-size: .65rem;
  font-weight: 700;
  display: inline-block;
}

.ms-app .ms-profile-btn-letter {
  letter-spacing: .02em;
  font-size: .65rem;
  font-weight: 700;
}

.ms-app .profile-district-meta {
  margin-top: 10px;
}

.ms-app .profile-district-label {
  color: #b8d4ff;
  font-size: .82rem;
  font-weight: 600;
  display: block;
}

.ms-app .profile-district-note {
  color: var(--text-subtitle);
  margin-top: 2px;
  font-size: .72rem;
  display: block;
}

.ms-app .profile-section {
  margin-bottom: 32px;
}

.ms-app .profile-section.is-hidden {
  display: none;
}

.ms-app .profile-makerspace-module {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  padding: 24px 28px 28px;
}

.ms-app .profile-ms-module-head {
  border-bottom: 1px solid var(--border-default);
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 24px;
  padding-bottom: 20px;
  display: flex;
}

.ms-app .profile-ms-module-title {
  font-family: var(--font-heading);
  letter-spacing: .12em;
  color: var(--accent-bright);
  text-transform: uppercase;
  margin-bottom: 8px;
  font-size: 1.05rem;
  font-weight: 800;
}

.ms-app .profile-ms-module-desc {
  color: var(--text-subtitle);
  max-width: 680px;
  font-size: .84rem;
  line-height: 1.55;
}

.ms-app .profile-ms-module-link {
  white-space: nowrap;
  flex-shrink: 0;
  font-size: .82rem;
}

.ms-app .profile-ms-tabs {
  border-bottom: 1px solid var(--border-default);
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 20px;
  display: flex;
}

.ms-app .profile-ms-tab {
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-bottom: 2px solid #0000;
  margin-bottom: -1px;
  padding: 10px 16px;
  font-family: inherit;
  font-size: .82rem;
  font-weight: 500;
  transition: color .15s, border-color .15s;
}

.ms-app .profile-ms-tab:hover {
  color: var(--text-primary);
}

.ms-app .profile-ms-tab.active {
  color: var(--accent-bright);
  border-bottom-color: var(--accent-bright);
}

.ms-app .profile-ms-tab .tab-count {
  background: var(--accent-soft);
  color: var(--accent-bright);
  vertical-align: middle;
  border-radius: 10px;
  margin-left: 6px;
  padding: 1px 6px;
  font-size: .65rem;
  font-weight: 700;
  display: inline-block;
}

.ms-app .profile-ms-tab.active .tab-count {
  background: var(--accent-bright);
  color: var(--text-dark);
}

.ms-app .profile-ms-panel {
  display: none;
}

.ms-app .profile-ms-panel.active {
  display: block;
}

.ms-app .profile-ms-impact {
  border-bottom: 1px solid var(--border-default);
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.ms-app .profile-ms-toolbar-wrap {
  margin-bottom: 16px;
}

.ms-app .profile-ms-toolbar-wrap.is-hidden {
  display: none;
}

.ms-app .profile-ms-toolbar-wrap .profile-toolbar {
  margin-bottom: 0;
}

.ms-app .profile-section--nested {
  margin-bottom: 24px;
}

.ms-app .profile-section--nested:last-child {
  margin-bottom: 0;
}

.ms-app #profile-collab-section {
  border-top: 1px solid var(--border-default);
  margin-top: 32px;
  padding-top: 28px;
}

.ms-app .section-title--sm {
  font-size: 1rem;
}

.ms-app #profile-module-makerspace .impact-grid {
  grid-template-columns: repeat(6, 1fr);
}

.ms-app .impact-stat--ms .impact-value {
  color: var(--accent-bright);
}

.ms-app .carousel-thumb--cover {
  padding: 0;
  overflow: hidden;
}

.ms-app .carousel-thumb--cover img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.ms-app .podium-card--link {
  cursor: pointer;
  transition: transform .15s, border-color .15s;
}

.ms-app .podium-card--link:hover .podium-card-name {
  color: var(--accent-bright);
}

.ms-app .podium-card--link:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: 2px;
}

.ms-app .leaderboard-row--link {
  cursor: pointer;
}

.ms-app .leaderboard-row--link:hover .leaderboard-name {
  color: var(--accent-bright);
}

.ms-app .leaderboard-row--link:focus-visible {
  outline: 2px solid var(--accent-bright);
  outline-offset: -2px;
}

.ms-app .profile-header .avatar {
  width: 80px;
  height: 80px;
  font-size: 1.5rem;
}

.ms-app .profile-info {
  flex: 1;
}

.ms-app .profile-name {
  font-family: var(--font-heading);
  letter-spacing: -.02em;
  margin-bottom: 4px;
  font-size: 1.75rem;
  font-weight: 800;
}

.ms-app .profile-handle {
  color: var(--text-muted);
  margin-bottom: 10px;
  font-size: .88rem;
}

.ms-app .profile-bio {
  color: var(--text-secondary);
  max-width: 560px;
  margin-bottom: 0;
  font-size: .86rem;
  line-height: 1.55;
}

.ms-app .profile-skills {
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
  display: flex;
}

.ms-app .skill-tag {
  border-radius: var(--radius-pill);
  border: 1px solid var(--border-strong);
  color: var(--text-secondary);
  padding: 5px 12px;
  font-size: .75rem;
}

.ms-app .ai-skill-row {
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
  font-size: .8rem;
  display: flex;
}

.ms-app .ai-skill-name {
  width: 80px;
  color: var(--text-secondary);
}

.ms-app .skill-bar {
  background: var(--bg-elevated);
  border-radius: 3px;
  flex: 1;
  height: 6px;
  overflow: hidden;
}

.ms-app .skill-bar-fill {
  background: var(--accent-bright);
  border-radius: 3px;
  height: 100%;
}

.ms-app .skill-level {
  color: var(--text-subtitle);
  text-align: right;
  width: 30px;
  font-size: .7rem;
}

.ms-app .impact-grid {
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
  display: grid;
}

.ms-app .impact-stat {
  text-align: center;
  background: var(--bg-elevated);
  border-radius: var(--radius-sm);
  padding: 16px 8px;
}

.ms-app .impact-value {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: 1.4rem;
  font-weight: 700;
}

.ms-app .impact-label {
  color: var(--text-subtitle);
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-top: 4px;
  font-size: .65rem;
}

.ms-app .section-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  display: flex;
}

.ms-app .section-title {
  font-family: var(--font-heading);
  font-size: 1.1rem;
  font-weight: 600;
}

.ms-app .section-link {
  color: var(--accent-bright);
  font-size: .8rem;
}

.ms-app .carousel {
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 32px;
  display: grid;
}

.ms-app .carousel-card {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: border-color .15s;
  overflow: hidden;
}

.ms-app .carousel-card:hover {
  border-color: #c3f74f4d;
}

.ms-app .carousel-thumb {
  background: linear-gradient(135deg, var(--bg-elevated), var(--bg-surface));
  justify-content: center;
  align-items: center;
  height: 100px;
  font-size: 2rem;
  display: flex;
  position: relative;
}

.ms-app .carousel-body {
  padding: 12px;
}

.ms-app .carousel-card-title {
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
  font-size: .85rem;
  font-weight: 600;
  display: flex;
}

.ms-app .carousel-meta {
  color: var(--text-subtitle);
  font-size: .7rem;
}

.ms-app .carousel-stats {
  color: var(--text-muted);
  gap: 10px;
  margin-top: 8px;
  font-size: .7rem;
  display: flex;
}

.ms-app .profile-panel {
  display: none;
}

.ms-app .profile-panel.active {
  display: block;
}

.ms-app .profile-sections.profile-panel.active {
  display: flex;
}

.ms-app #profile-panel-wiadomosci, .ms-app #profile-panel-powiadomienia {
  margin-bottom: 48px;
}

.ms-app #profile-panel-wiadomosci .profile-module, .ms-app #profile-panel-powiadomienia .profile-module {
  scroll-margin-top: 0;
}

.ms-app .message-list {
  flex-direction: column;
  display: flex;
}

.ms-app .message-item {
  border-bottom: 1px solid var(--border-default);
  cursor: pointer;
  align-items: center;
  gap: 14px;
  padding: 16px 20px;
  transition: background .15s;
  display: flex;
}

.ms-app .message-item:hover {
  background: var(--bg-elevated);
}

.ms-app .message-item.unread {
  background: var(--accent-soft);
}

.ms-app .message-item.is-active {
  box-shadow: inset 3px 0 0 var(--accent-bright);
  background: #c3f74f14;
}

.ms-app .profile-module--messages {
  padding: 0;
  overflow: hidden;
}

.ms-app .profile-messages-thread {
  flex-direction: column;
  min-height: 420px;
  display: flex;
}

.ms-app .profile-thread-head {
  border-bottom: 1px solid var(--border-default);
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  display: flex;
}

.ms-app .profile-thread-back {
  white-space: nowrap;
  flex-shrink: 0;
}

.ms-app .profile-thread-peer {
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.ms-app .profile-thread-peer-info {
  min-width: 0;
}

.ms-app .profile-thread-peer-name {
  color: var(--text-primary);
  font-size: .92rem;
  font-weight: 600;
}

.ms-app .profile-thread-peer-handle {
  color: var(--text-muted);
  font-size: .78rem;
}

.ms-app .profile-thread-messages {
  background: var(--bg-surface);
  flex-direction: column;
  flex: 1;
  gap: 12px;
  min-height: 280px;
  max-height: min(52vh, 520px);
  padding: 20px;
  display: flex;
  overflow-y: auto;
}

.ms-app .profile-thread-empty {
  text-align: center;
  color: var(--text-muted);
  max-width: 280px;
  margin: auto;
  font-size: .84rem;
  line-height: 1.5;
}

.ms-app .profile-thread-bubble {
  border-radius: var(--radius-sm);
  max-width: min(78%, 520px);
  padding: 12px 16px;
}

.ms-app .profile-thread-bubble--mine {
  background: #c3f74f1f;
  border: 1px solid #c3f74f47;
  align-self: flex-end;
}

.ms-app .profile-thread-bubble--theirs {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  align-self: flex-start;
}

.ms-app .profile-thread-bubble-text {
  color: var(--text-primary);
  white-space: pre-wrap;
  word-break: break-word;
  margin: 0;
  font-size: .88rem;
  line-height: 1.5;
}

.ms-app .profile-thread-bubble-time {
  color: var(--text-muted);
  margin-top: 6px;
  font-size: .68rem;
  display: block;
}

.ms-app .profile-thread-compose {
  border-top: 1px solid var(--border-default);
  background: var(--bg-elevated);
  align-items: flex-end;
  gap: 10px;
  padding: 16px 20px;
  display: flex;
}

.ms-app .profile-thread-input {
  resize: vertical;
  flex: 1;
  min-height: 44px;
}

.ms-app .profile-thread-send {
  white-space: nowrap;
  flex-shrink: 0;
}

.ms-app .visually-hidden {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.ms-app .message-preview {
  flex: 1;
  min-width: 0;
}

.ms-app .message-name {
  font-size: .9rem;
  font-weight: 600;
}

.ms-app .message-snippet {
  color: var(--text-subtitle);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .8rem;
  overflow: hidden;
}

.ms-app .message-time {
  color: var(--text-subtitle);
  font-size: .75rem;
}

.ms-app .chat-fab {
  background: var(--accent-bright);
  width: 56px;
  height: 56px;
  color: var(--text-dark);
  z-index: 100;
  cursor: pointer;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: 1.4rem;
  display: flex;
  position: fixed;
  bottom: 24px;
  right: 24px;
  box-shadow: 0 4px 24px #c3f74f59;
}

.ms-app .project-panel {
  display: none;
}

.ms-app .project-panel.active {
  display: block;
}

.ms-app .article-view {
  max-width: 820px;
  margin: 0 auto;
}

.ms-app .article-meta-row {
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  display: flex;
}

.ms-app .category-tag {
  letter-spacing: .1em;
  text-transform: uppercase;
  background: var(--accent-soft);
  color: var(--accent-bright);
  border: 1px solid #c3f74f40;
  border-radius: 4px;
  padding: 5px 12px;
  font-size: .65rem;
  font-weight: 700;
}

.ms-app .read-time {
  color: var(--text-subtitle);
  letter-spacing: .04em;
  font-size: .75rem;
}

.ms-app .article-title {
  font-family: var(--font-heading);
  letter-spacing: -.02em;
  text-shadow: 0 0 60px #c3f74f1f;
  margin-bottom: 28px;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  line-height: 1.15;
}

.ms-app .article-author {
  margin-bottom: 36px;
}

.ms-app .article-author .author-row {
  margin-bottom: 0;
}

.ms-app .article-author .rank-badge--sm {
  flex-shrink: 0;
  width: 48px;
  font-size: 48px;
}

.ms-app .article-author-name {
  font-size: .95rem;
  font-weight: 600;
}

.ms-app .article-author-role {
  color: var(--text-subtitle);
  margin-top: 2px;
  font-size: .8rem;
}

.ms-app .article-hero {
  aspect-ratio: 16 / 7;
  border-radius: var(--radius-card);
  background: var(--bg-elevated);
  width: 100%;
  margin-bottom: 36px;
  position: relative;
  overflow: hidden;
}

.ms-app .article-hero img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  display: block;
}

.ms-app .article-hero:after {
  content: "";
  pointer-events: none;
  background: linear-gradient(#0000 50%, #00000073);
  position: absolute;
  inset: 0;
}

.ms-app .article-hero-badges {
  z-index: 1;
  gap: 8px;
  display: flex;
  position: absolute;
  bottom: 16px;
  left: 16px;
}

.ms-app .hero-badge {
  letter-spacing: .06em;
  border: 1px solid var(--border-strong);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #0009;
  border-radius: 4px;
  padding: 5px 10px;
  font-size: .65rem;
  font-weight: 600;
}

.ms-app .hero-badge.online {
  color: var(--status-success);
}

.ms-app .article-body {
  color: var(--text-secondary);
  font-size: 1rem;
  line-height: 1.8;
}

.ms-app .article-body p {
  margin-bottom: 20px;
}

.ms-app .article-body h3, .ms-app .project-description h3 {
  font-family: var(--font-heading);
  color: var(--text-primary);
  margin: 24px 0 10px;
  font-size: 1rem;
  font-weight: 700;
}

.ms-app .article-body ul, .ms-app .article-body ol, .ms-app .project-description ul, .ms-app .project-description ol {
  color: var(--text-secondary);
  margin: 0 0 16px 20px;
  line-height: 1.7;
}

.ms-app .article-body li, .ms-app .project-description li {
  margin-bottom: 6px;
}

.ms-app .article-body table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 20px;
  font-size: .88rem;
}

.ms-app .article-body th, .ms-app .article-body td {
  border: 1px solid var(--border-default);
  text-align: left;
  padding: 8px 12px;
}

.ms-app .article-body th {
  background: var(--bg-surface);
  color: var(--text-primary);
  font-weight: 600;
}

.ms-app .article-body code, .ms-app .project-description code {
  background: var(--bg-surface);
  color: var(--accent-bright);
  border-radius: 4px;
  padding: 2px 6px;
  font-size: .85em;
}

.ms-app .article-body em, .ms-app .project-description em {
  color: var(--text-muted);
  font-style: italic;
}

.ms-app .kanban-empty {
  color: var(--text-muted);
  padding: 8px 4px;
  font-size: .72rem;
  font-style: italic;
}

.ms-app .explore-header {
  margin-bottom: 28px;
}

.ms-app .explore-header h2 {
  font-family: var(--font-heading);
  margin-bottom: 8px;
  font-size: 1.5rem;
  font-weight: 700;
}

.ms-app .explore-header p {
  color: var(--text-subtitle);
  font-size: .9rem;
}

.ms-app .explore-search {
  gap: 12px;
  margin-bottom: 28px;
  display: flex;
}

.ms-app .explore-search input {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-pill);
  color: var(--text-primary);
  outline: none;
  flex: 1;
  padding: 14px 22px;
  font-size: .9rem;
}

.ms-app .explore-search input:focus {
  border-color: var(--accent-bright);
}

.ms-app .explore-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  display: grid;
}

.ms-app .explore-card {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  cursor: pointer;
  flex-direction: column;
  transition: border-color .15s, transform .15s;
  display: flex;
  overflow: hidden;
}

.ms-app .explore-card.is-hidden {
  display: none;
}

.ms-app .explore-card:hover {
  border-color: #c3f74f59;
  transform: translateY(-2px);
}

.ms-app .explore-card-thumb {
  background: var(--bg-elevated);
  height: 140px;
  position: relative;
  overflow: hidden;
}

.ms-app .explore-card-thumb img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  transition: transform .3s;
  display: block;
}

.ms-app .explore-card:hover .explore-card-thumb img {
  transform: scale(1.04);
}

.ms-app .explore-card-body {
  flex-direction: column;
  flex: 1;
  padding: 16px;
  display: flex;
}

.ms-app .explore-card-meta {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  display: flex;
}

.ms-app .explore-card-cat {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--accent-bright);
  font-size: .6rem;
  font-weight: 700;
}

.ms-app .explore-card-title {
  font-family: var(--font-heading);
  margin-bottom: 8px;
  font-size: .95rem;
  font-weight: 600;
  line-height: 1.35;
}

.ms-app .explore-card .feed-grid-author {
  color: var(--text-subtitle);
  margin-bottom: 0;
  font-size: .72rem;
}

.ms-app .explore-card .feed-grid-stats {
  margin-top: auto;
  padding-top: 14px;
}

.ms-app .explore-empty {
  text-align: center;
  color: var(--text-subtitle);
  flex-direction: column;
  grid-column: 1 / -1;
  align-items: center;
  gap: 12px;
  padding: 48px 24px;
  font-size: .9rem;
  display: none;
}

.ms-app .explore-empty.is-visible {
  display: flex;
}

.ms-app .list-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  display: flex;
}

.ms-app .list-header h2 {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 700;
}

.ms-app .list-count {
  color: var(--text-subtitle);
  font-size: .85rem;
}

.ms-app .list-toolbar {
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
  display: flex;
}

.ms-app .content-list {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.ms-app .list-row {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  cursor: pointer;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  transition: border-color .15s;
  display: flex;
}

.ms-app .list-row:hover {
  border-color: #c3f74f4d;
}

.ms-app .list-row-thumb {
  background: var(--bg-elevated);
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  font-size: 1.4rem;
  display: flex;
}

.ms-app .list-row-info {
  flex: 1;
  min-width: 0;
}

.ms-app .list-row-title {
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
  font-size: .95rem;
  font-weight: 600;
  display: flex;
}

.ms-app .list-row-meta {
  color: var(--text-subtitle);
  font-size: .78rem;
}

.ms-app .list-row-stats {
  color: var(--text-muted);
  flex-shrink: 0;
  gap: 14px;
  font-size: .78rem;
  display: flex;
}

.ms-app .content-list--projects {
  gap: 12px;
}

.ms-app .project-group {
  margin-bottom: 28px;
}

.ms-app .project-group:last-of-type {
  margin-bottom: 0;
}

.ms-app .project-group.is-hidden {
  display: none;
}

.ms-app .project-group-title {
  font-family: var(--font-heading);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--text-muted);
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  font-size: .72rem;
  font-weight: 800;
  display: flex;
}

.ms-app .project-group-title.is-compact {
  display: none;
}

.ms-app .project-group-count {
  color: var(--text-subtitle);
  font-weight: 600;
}

.ms-app .list-empty {
  text-align: center;
  border: 1px dashed var(--border-strong);
  border-radius: var(--radius-card);
  color: var(--text-subtitle);
  padding: 48px 24px;
  display: none;
}

.ms-app .list-empty.is-visible {
  display: block;
}

.ms-app .list-empty p {
  margin-bottom: 16px;
  font-size: .85rem;
}

.ms-app .list-row--project.is-hidden {
  display: none;
}

.ms-app .list-row--project {
  align-items: stretch;
  gap: 18px;
  padding: 14px 18px;
}

.ms-app .list-row--project .list-row-cover {
  aspect-ratio: 16 / 10;
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: 8px;
  flex-shrink: 0;
  width: 152px;
  overflow: hidden;
}

.ms-app .list-row--project .list-row-cover img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
  transition: transform .25s;
  display: block;
}

.ms-app .list-row--project:hover .list-row-cover img {
  transform: scale(1.04);
}

.ms-app .list-row--project .list-row-body {
  flex-direction: column;
  flex: 1;
  gap: 6px;
  min-width: 0;
  padding: 2px 0;
  display: flex;
}

.ms-app .list-row--project .list-row-head {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.ms-app .list-row--project .list-row-title {
  font-family: var(--font-heading);
  letter-spacing: .03em;
  text-transform: uppercase;
  margin-bottom: 0;
  font-size: .88rem;
  font-weight: 800;
  line-height: 1.35;
}

.ms-app .list-row--project .list-row-desc {
  color: var(--text-subtitle);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 0;
  font-size: .78rem;
  line-height: 1.5;
  display: -webkit-box;
  overflow: hidden;
}

.ms-app .list-row--project .list-row-meta {
  letter-spacing: .02em;
  margin-top: auto;
  padding-top: 2px;
  font-size: .72rem;
}

.ms-app .list-row--project .list-row-stats {
  flex-shrink: 0;
  padding-top: 2px;
}

@media (max-width: 640px) {
  .ms-app .list-row--project {
    flex-direction: column;
    gap: 12px;
  }

  .ms-app .list-row--project .list-row-cover {
    width: 100%;
  }

  .ms-app .list-row--project .list-row-head {
    flex-direction: column;
    gap: 8px;
  }
}

.ms-app .view-ranking {
  --podium-blue: #5eb3ff;
  --podium-red: #ff5c7a;
  position: relative;
}

.ms-app .view-ranking:before {
  content: "";
  pointer-events: none;
  z-index: 0;
  background-image: linear-gradient(#ffffff08 1px, #0000 1px), linear-gradient(90deg, #ffffff08 1px, #0000 1px);
  background-size: 32px 32px;
  position: absolute;
  inset: -24px -32px 0;
  -webkit-mask-image: linear-gradient(#000 0%, #0000 85%);
  mask-image: linear-gradient(#000 0%, #0000 85%);
}

.ms-app .view-ranking > * {
  z-index: 1;
  position: relative;
}

.ms-app .leaderboard-header {
  margin-bottom: 28px;
}

.ms-app .leaderboard-title {
  font-family: var(--font-heading);
  letter-spacing: -.02em;
  margin-bottom: 10px;
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
}

.ms-app .leaderboard-subtitle {
  color: var(--text-subtitle);
  max-width: 640px;
  font-size: .95rem;
  line-height: 1.55;
}

.ms-app .leaderboard-accent {
  color: var(--accent-bright);
  font-weight: 600;
}

.ms-app .leaderboard-system-tag {
  letter-spacing: .08em;
  text-transform: uppercase;
  border-radius: 4px;
  padding: 3px 7px;
  font-size: .58rem;
  font-weight: 800;
  line-height: 1.2;
  display: inline-block;
}

.ms-app .leaderboard-system-tag--ms {
  color: var(--accent-bright);
  background: #c3f74f1f;
  border: 1px solid #c3f74f59;
}

.ms-app .leaderboard-system-tag--district {
  color: #b8d4ff;
  background: #5eb3ff1a;
  border: 1px solid #5eb3ff59;
}

.ms-app .leaderboard-system-tag--inline {
  width: fit-content;
  margin-bottom: 4px;
  font-size: .52rem;
  display: block;
}

.ms-app .ranking-tabs {
  gap: 8px;
  margin-bottom: 28px;
  display: flex;
}

.ms-app .rank-badge {
  aspect-ratio: 1;
  flex-shrink: 0;
  width: 64px;
  display: inline-flex;
  position: relative;
}

.ms-app .rank-badge-frame {
  z-index: 0;
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
  width: 100%;
  height: auto;
  display: block;
  position: relative;
}

.ms-app .rank-badge-avatar {
  aspect-ratio: 1;
  width: 58%;
  font-family: var(--font-heading);
  color: #fff;
  z-index: 2;
  background: linear-gradient(145deg, #3a3a3a 0%, #151515 100%);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: .42em;
  font-weight: 800;
  line-height: 1;
  display: flex;
  position: absolute;
  top: 42.5%;
  left: 50%;
  overflow: hidden;
  transform: translate(-50%, -50%);
  box-shadow: inset 0 0 0 1px #ffffff1f;
}

.ms-app .rank-badge--has-avatar .rank-badge-avatar {
  background: #0a0a0a;
  box-shadow: inset 0 0 0 1px #ffffff14;
}

.ms-app .rank-badge-avatar-img {
  object-fit: cover;
  object-position: center center;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  display: block;
}

.ms-app .rank-badge-level {
  min-width: 36%;
  font-family: var(--font-heading);
  text-align: center;
  color: #fff;
  z-index: 2;
  background: #000000d9;
  border-radius: 3px;
  padding: 1px 4px;
  font-size: .22em;
  font-weight: 800;
  line-height: 1.2;
  position: absolute;
  bottom: 8%;
  left: 50%;
  transform: translateX(-50%);
}

.ms-app .rank-badge--xs {
  width: 44px;
  font-size: 44px;
}

.ms-app .rank-badge--sm {
  width: 52px;
  font-size: 52px;
}

.ms-app .rank-badge--md {
  width: 64px;
  font-size: 64px;
}

.ms-app .rank-badge--lg {
  width: 112px;
  font-size: 112px;
}

.ms-app .leaderboard-podium {
  grid-template-columns: 1fr 1.18fr 1fr;
  align-items: end;
  gap: 16px;
  margin-bottom: 36px;
  display: grid;
}

.ms-app .podium-card {
  background: linear-gradient(to bottom, transparent 55%, #ffffff0a 55%, #ffffff0a 56%, transparent 56%),
    repeating-linear-gradient(90deg, #ffffff06 0, #ffffff06 1px, transparent 1px, transparent 12px),
    var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  text-align: center;
  flex-direction: column;
  align-items: center;
  min-height: 250px;
  padding: 20px 16px 18px;
  display: flex;
  position: relative;
}

.ms-app .podium-card--1 {
  border-color: #c3f74f8c;
  min-height: 300px;
  box-shadow: 0 0 0 1px #c3f74f26, 0 0 32px #c3f74f1f;
}

.ms-app .podium-card--2 {
  border-color: #5eb3ff73;
  box-shadow: 0 0 24px #5eb3ff1a;
}

.ms-app .podium-card--3 {
  border-color: #ff5c7a73;
  box-shadow: 0 0 24px #ff5c7a1a;
}

.ms-app .podium-card-place {
  font-family: var(--font-heading);
  color: var(--text-secondary);
  margin-bottom: 12px;
  font-size: 1.75rem;
  font-weight: 800;
}

.ms-app .podium-card--1 .podium-card-place {
  color: var(--accent-bright);
  font-size: 2rem;
}

.ms-app .podium-card-badge-wrap {
  margin-bottom: 8px;
}

.ms-app .podium-card-rank {
  color: #b8d4ff;
  text-align: center;
  max-width: 140px;
  margin-bottom: 4px;
  font-size: .72rem;
}

.ms-app .podium-card-name {
  margin-top: auto;
  padding-top: 8px;
  font-size: .95rem;
  font-weight: 700;
}

.ms-app .podium-card-ms {
  border-top: 1px solid #c3f74f26;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  width: 100%;
  margin-top: 8px;
  padding-top: 12px;
  display: flex;
}

.ms-app .podium-card-points {
  text-align: center;
}

.ms-app .podium-card-points-value {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: 1.15rem;
  font-weight: 800;
  line-height: 1.1;
  display: block;
}

.ms-app .podium-card-points-label {
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--text-subtitle);
  margin-top: 3px;
  font-size: .62rem;
  font-weight: 700;
  display: block;
}

.ms-app .leaderboard-table-wrap {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  overflow: hidden;
}

.ms-app .leaderboard-group-bar {
  background: var(--bg-elevated);
  border-bottom: 1px solid var(--border-default);
  letter-spacing: .06em;
  text-transform: uppercase;
  grid-template-columns: 72px 1.4fr 110px 1.2fr 72px;
  gap: 16px;
  padding: 8px 20px;
  font-size: .62rem;
  font-weight: 800;
  display: grid;
}

.ms-app .leaderboard-group-spacer {
  visibility: hidden;
}

.ms-app .leaderboard-group--ms {
  text-align: center;
  color: var(--accent-bright);
}

.ms-app .leaderboard-group--district {
  text-align: center;
  color: #8eb8ff;
  border-left: 2px solid #5eb3ff59;
  grid-column: 4 / 6;
  padding-left: 8px;
}

.ms-app .leaderboard-table {
  width: 100%;
}

.ms-app .leaderboard-row {
  border-bottom: 1px solid var(--border-default);
  grid-template-columns: 72px 1.4fr 110px 1.2fr 72px;
  align-items: center;
  gap: 16px;
  padding: 14px 20px;
  transition: background .15s;
  display: grid;
}

.ms-app .leaderboard-row:last-child {
  border-bottom: none;
}

.ms-app .leaderboard-row:not(.leaderboard-row--head):hover {
  background: var(--bg-elevated);
}

.ms-app .leaderboard-row--head {
  background: var(--accent-bright);
  color: #0c0c0c;
  letter-spacing: .06em;
  text-transform: uppercase;
  cursor: default;
  border-bottom: none;
  font-size: .72rem;
  font-weight: 800;
}

.ms-app .leaderboard-row--head:hover {
  background: var(--accent-bright);
}

.ms-app .leaderboard-row--head .leaderboard-col-ms {
  color: #0c0c0c;
}

.ms-app .leaderboard-row--head .leaderboard-col-district {
  color: #1a2744;
  background: #5eb3ff8c;
  border-radius: 0;
  margin: -14px -10px;
  padding: 14px 10px;
}

.ms-app .leaderboard-row--head .leaderboard-col-district:last-child {
  border-radius: 0;
  margin-right: -20px;
  padding-right: 20px;
}

.ms-app .leaderboard-cell-district {
  background: #5eb3ff0a;
}

.ms-app .leaderboard-row:not(.leaderboard-row--head) .leaderboard-cell-district {
  border-left: 1px solid #5eb3ff1f;
}

.ms-app .leaderboard-row--you .leaderboard-cell-district {
  background: none;
  border-left-color: #c3f74f1f;
}

.ms-app .leaderboard-row--you {
  border-radius: var(--radius-sm);
  background: linear-gradient(90deg, #263418fa 0%, #34481eeb 16%, #445c24b8 34%, #2a301c73 55%, #12140ed1 78%, #0a0b08f5 100%);
  border: 1px solid #c3f74f8c;
  margin: 8px 10px 10px;
  padding: 14px 18px;
  box-shadow: 0 0 0 1px #c3f74f14, 0 0 28px #c3f74f0f, inset 0 1px #c3f74f1a;
}

.ms-app .leaderboard-row--you .leaderboard-name {
  color: var(--accent-bright);
  font-weight: 700;
}

.ms-app .leaderboard-place {
  font-family: var(--font-heading);
  color: var(--text-subtitle);
  text-align: center;
  font-size: .95rem;
  font-weight: 800;
}

.ms-app .leaderboard-row--you .leaderboard-place {
  color: var(--accent-bright);
}

.ms-app .leaderboard-user {
  min-width: 0;
}

.ms-app .leaderboard-name {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .9rem;
  font-weight: 600;
  overflow: hidden;
}

.ms-app .leaderboard-handle {
  color: var(--text-subtitle);
  margin-top: 2px;
  font-size: .75rem;
}

.ms-app .leaderboard-points {
  text-align: right;
}

.ms-app .leaderboard-points--ms {
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  display: flex;
}

.ms-app .leaderboard-points-value {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  font-size: .95rem;
  font-weight: 700;
  line-height: 1.1;
}

.ms-app .leaderboard-points-unit {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #c3f74fbf;
  font-size: .58rem;
  font-weight: 800;
}

.ms-app .leaderboard-row--you .leaderboard-points-value {
  color: var(--accent-bright);
}

.ms-app .leaderboard-rank-label {
  color: #b8d4ff;
  font-size: .78rem;
  line-height: 1.35;
}

.ms-app .leaderboard-level-cell {
  justify-content: center;
  display: flex;
}

.ms-app .ranking-external-hint {
  background: var(--accent-soft);
  border-radius: var(--radius-sm);
  color: var(--text-secondary);
  border: 1px solid #c3f74f33;
  margin-top: 20px;
  padding: 14px 18px;
  font-size: .8rem;
}

.ms-app .ranking-external-hint strong {
  color: var(--accent-bright);
}

.ms-app .ms-menu-item--info {
  border-left: 1px solid var(--border-default);
  margin-left: 4px;
  padding-left: 14px;
}

.ms-app .info-header {
  margin-bottom: 24px;
}

.ms-app .info-header h2 {
  font-family: var(--font-heading);
  margin-bottom: 8px;
  font-size: 1.5rem;
  font-weight: 700;
}

.ms-app .info-header p {
  color: var(--text-subtitle);
  max-width: 640px;
  font-size: .9rem;
}

.ms-app .info-tabs {
  border-bottom: 1px solid var(--border-default);
  gap: 24px;
  margin-bottom: 28px;
  display: flex;
  position: relative;
}

.ms-app .info-tab {
  color: var(--text-muted);
  cursor: pointer;
  z-index: 1;
  padding: 10px 0;
  font-size: .875rem;
  font-weight: 500;
  transition: color .15s;
  position: relative;
  box-shadow: none !important;
  border-bottom: none !important;
}

.ms-app .info-tab:hover, .ms-app .info-tab.active {
  color: var(--accent-bright);
}

.ms-app .info-tabs:has(.info-tab:hover) .info-tab.active:not(:hover) {
  color: var(--text-muted);
}

.ms-app .info-tab, .ms-app .info-tab:hover, .ms-app .info-tab.active {
  box-shadow: none !important;
  border-bottom: none !important;
}

.ms-app .info-panel {
  display: none;
}

.ms-app .info-panel.active {
  display: block;
}

.ms-app .info-hero {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  margin-bottom: 36px;
  padding: 32px 36px;
}

.ms-app .info-hero--compact {
  margin-bottom: 28px;
  padding: 28px 32px;
}

.ms-app .info-hero-tag {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--accent-bright);
  background: var(--accent-soft);
  border: 1px solid #c3f74f40;
  border-radius: 4px;
  margin-bottom: 18px;
  padding: 5px 10px;
  font-size: .6rem;
  font-weight: 700;
  display: inline-block;
}

.ms-app .info-hero-title {
  font-family: var(--font-heading);
  max-width: 720px;
  margin-bottom: 14px;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.35;
}

.ms-app .info-hero-title span {
  color: var(--accent-bright);
}

.ms-app .info-hero-desc {
  color: var(--text-subtitle);
  max-width: 680px;
  margin-bottom: 28px;
  font-size: .9rem;
  line-height: 1.65;
}

.ms-app .info-hero--compact .info-hero-desc {
  margin-bottom: 0;
}

.ms-app .info-stats {
  border-top: 1px solid var(--border-default);
  flex-wrap: wrap;
  gap: 40px;
  padding-top: 8px;
  display: flex;
}

.ms-app .info-stat-value {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: 1.75rem;
  font-weight: 800;
  line-height: 1.1;
  display: block;
}

.ms-app .info-stat-label {
  color: var(--text-subtitle);
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-top: 4px;
  font-size: .72rem;
}

.ms-app .info-section {
  margin-bottom: 40px;
}

.ms-app .info-section-title {
  font-family: var(--font-heading);
  margin-bottom: 10px;
  font-size: 1.15rem;
  font-weight: 700;
}

.ms-app .info-section-lead {
  color: var(--text-subtitle);
  max-width: 680px;
  margin-bottom: 22px;
  font-size: .88rem;
  line-height: 1.6;
}

.ms-app .info-section-lead strong {
  color: var(--text-secondary);
}

.ms-app .info-cards {
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  display: grid;
}

.ms-app .info-card {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  padding: 22px 20px;
}

.ms-app .info-card-icon {
  align-items: center;
  margin-bottom: 12px;
  display: flex;
}

.ms-app .info-card-icon .ms-ico {
  width: 28px;
  height: 28px;
  color: var(--accent-bright);
}

.ms-app .info-card h4 {
  font-family: var(--font-heading);
  margin-bottom: 8px;
  font-size: .9rem;
  font-weight: 700;
}

.ms-app .info-card p {
  color: var(--text-subtitle);
  font-size: .8rem;
  line-height: 1.55;
}

.ms-app .info-rules {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.ms-app .info-rule {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  color: var(--text-subtitle);
  align-items: flex-start;
  gap: 16px;
  padding: 16px 18px;
  font-size: .85rem;
  line-height: 1.5;
  display: flex;
}

.ms-app .info-rule strong {
  color: var(--text-primary);
}

.ms-app .info-rule-num {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  opacity: .7;
  flex-shrink: 0;
  font-size: .75rem;
  font-weight: 800;
}

.ms-app .info-table-heading {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--text-subtitle);
  margin: 24px 0 10px;
  font-size: .78rem;
  font-weight: 700;
}

.ms-app .info-table-heading:first-of-type {
  margin-top: 0;
}

.ms-app .info-table {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  margin-bottom: 8px;
  overflow: hidden;
}

.ms-app .info-table-row {
  border-bottom: 1px solid var(--border-default);
  color: var(--text-secondary);
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 16px;
  padding: 14px 20px;
  font-size: .85rem;
  transition: background .12s, color .12s;
  display: grid;
}

.ms-app .info-table-row:not(.header) {
  cursor: default;
}

.ms-app .info-table-row.header {
  background: var(--bg-elevated);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--text-muted);
  grid-template-columns: 1fr 1fr auto;
  font-size: .65rem;
  font-weight: 700;
}

.ms-app .info-table-row.header span:last-child {
  text-align: right;
}

.ms-app .info-table-row:has(span:nth-child(3)) {
  grid-template-columns: 100px 1fr auto;
}

.ms-app .info-table-row:last-child {
  border-bottom: none;
}

.ms-app .info-table-row:not(.header):hover {
  background: var(--accent-soft);
  color: var(--accent-bright);
}

.ms-app .info-table-row:not(.header):hover .info-table-points {
  color: var(--accent-bright);
  font-weight: 800;
}

.ms-app .info-table-points {
  font-family: var(--font-heading);
  text-align: right;
  white-space: nowrap;
  font-weight: 700;
}

.ms-app .info-callout {
  background: var(--bg-card);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  padding: 20px 22px;
}

.ms-app .info-callout p {
  color: var(--text-subtitle);
  margin-bottom: 8px;
  font-size: .85rem;
  line-height: 1.55;
}

.ms-app .info-callout p:last-child {
  margin-bottom: 0;
}

.ms-app .info-callout--accent {
  background: #c3f74f0a;
  border-color: #c3f74f40;
}

.ms-app .info-callout--accent strong {
  color: var(--accent-bright);
}

.ms-app .info-footnote {
  color: var(--text-muted);
  margin-top: 12px;
  font-size: .78rem;
  font-style: italic;
}

.ms-app .info-glossary {
  border: 1px solid var(--border-default);
  border-radius: var(--radius-card);
  background: var(--bg-card);
  flex-direction: column;
  display: flex;
  overflow: hidden;
}

.ms-app .info-term {
  border-bottom: 1px solid var(--border-default);
  grid-template-columns: 120px 1fr;
  gap: 20px;
  padding: 20px 24px;
  display: grid;
}

.ms-app .info-term:last-child {
  border-bottom: none;
}

.ms-app .info-term-head {
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  display: flex;
}

.ms-app .info-term-icon {
  align-items: center;
  line-height: 1;
  display: flex;
}

.ms-app .info-term-icon .ms-ico {
  width: 22px;
  height: 22px;
  color: var(--accent-bright);
}

.ms-app .info-term-head:not(:has(.info-term-icon)) .info-term-label {
  padding-top: 2px;
}

.ms-app .info-card:not(:has(.info-card-icon)) h4 {
  margin-top: 0;
}

.ms-app .info-term-label {
  color: var(--accent-bright);
  font-size: .82rem;
  font-weight: 700;
  line-height: 1.3;
}

.ms-app .info-term-body p {
  color: var(--text-secondary);
  margin: 0 0 8px;
  font-size: .85rem;
  line-height: 1.6;
}

.ms-app .info-term-body p:last-child {
  margin-bottom: 0;
}

.ms-app .info-term-meta {
  font-family: var(--font-mono, monospace);
  color: var(--text-muted) !important;
  font-size: .78rem !important;
}

.ms-app .info-term-why {
  border-top: 1px dashed var(--border-default);
  padding-top: 8px;
  color: var(--text-muted) !important;
  margin-top: 4px !important;
  font-size: .8rem !important;
}

.ms-app .info-term-why strong {
  color: var(--text-secondary);
  font-style: normal;
}

@media (max-width: 640px) {
  .ms-app .info-term {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

@media (max-width: 1100px) {
  .ms-app .project-layout {
    grid-template-columns: 1fr;
  }

  .ms-app .carousel {
    grid-template-columns: repeat(2, 1fr);
  }

  .ms-app .impact-grid, .ms-app #profile-module-makerspace .impact-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .ms-app .explore-grid {
    grid-template-columns: 1fr 1fr;
  }

  .ms-app .feed-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .ms-app .info-cards {
    grid-template-columns: 1fr;
  }

  .ms-app .ms-menu {
    justify-content: flex-start;
  }

  .ms-app .profile-growth-user-stats-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ms-app .profile-growth-stat-col:nth-child(3) {
    border-right: none;
  }

  .ms-app .profile-growth-stat-col:nth-child(n+4) {
    border-top: 1px solid var(--border-default);
  }
}

@media (max-width: 768px) {
  .ms-app .explore-grid, .ms-app .feed-grid {
    grid-template-columns: 1fr;
  }

  .ms-app .profile-hero {
    flex-direction: column;
    align-items: stretch;
  }

  .ms-app .profile-affiliate-strip-inner {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .ms-app .profile-affiliate-strip-main {
    grid-template-columns: 1fr;
  }

  .ms-app .profile-affiliate-strip-actions {
    align-items: stretch;
  }

  .ms-app .profile-affiliate-copy-btn, .ms-app .profile-affiliate-cta-btn {
    width: 100%;
  }

  .ms-app .profile-hero-side {
    align-items: stretch;
    width: 100%;
  }

  .ms-app .profile-contact-grid {
    grid-template-columns: 1fr;
  }

  .ms-app .profile-contact-chip--wide {
    grid-column: auto;
  }

  .ms-app .profile-hero-actions {
    justify-content: flex-start;
    width: 100%;
  }

  .ms-app .profile-stats {
    grid-template-columns: repeat(2, 1fr);
  }

  .ms-app .profile-identity-body {
    grid-template-columns: 1fr;
  }

  .ms-app .profile-identity-aside {
    order: -1;
  }

  .ms-app .profile-module-head--makerspace, .ms-app .profile-module-head--certificates {
    flex-direction: column;
    align-items: stretch;
  }

  .ms-app .profile-module-head-side {
    justify-content: space-between;
    width: 100%;
  }

  .ms-app .profile-certificates-count {
    text-align: left;
    align-items: flex-start;
    width: 100%;
  }

  .ms-app .profile-certificates-count-label {
    text-align: left;
  }

  .ms-app .profile-ms-impact-summary {
    text-align: left;
    align-items: flex-start;
    width: 100%;
  }

  .ms-app .profile-module-head--app, .ms-app .profile-module-head--split {
    flex-direction: column;
    align-items: stretch;
  }

  .ms-app .profile-module-summary, .ms-app .profile-networking-grid, .ms-app .profile-edit-networking-grid, .ms-app .profile-edit-portfolio-cover-row, .ms-app .profile-growth-level-card {
    grid-template-columns: 1fr;
  }

  .ms-app .profile-growth-level-col {
    border-right: none;
    border-bottom: 1px solid var(--border-default);
  }

  .ms-app .profile-growth-level-col:last-child {
    border-bottom: none;
  }

  .ms-app .profile-growth-user-stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ms-app .profile-growth-stat-col {
    border-right: none;
    border-bottom: 1px solid var(--border-default);
  }

  .ms-app .profile-growth-stat-col:nth-child(odd) {
    border-right: 1px solid var(--border-default);
  }

  .ms-app .profile-growth-stat-col:nth-child(3), .ms-app .profile-growth-stat-col:nth-child(5) {
    border-right: none;
  }

  .ms-app .profile-growth-stat-col:nth-child(n+4) {
    border-top: none;
  }

  .ms-app .profile-growth-stat-col:last-child {
    border-bottom: none;
  }

  .ms-app .profile-growth-user-stat {
    border-right: none;
    border-bottom: 1px solid var(--border-default);
  }

  .ms-app .profile-growth-user-stat:last-child {
    border-bottom: none;
  }

  .ms-app .profile-stats, .ms-app .profile-stats--owner {
    grid-template-columns: 1fr;
  }

  .ms-app .profile-growth-privacy-main, .ms-app .profile-growth-privacy {
    flex-direction: column;
    align-items: flex-start;
  }

  .ms-app .profile-growth-collectables-summary {
    grid-template-columns: 1fr;
  }

  .ms-app .profile-ms-module-link {
    align-self: flex-start;
  }

  .ms-app #profile-module-makerspace .impact-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .ms-app .profile-future-app-body {
    grid-template-columns: 1fr;
  }

  .ms-app .campusai-cert-card {
    padding: 22px 18px 18px;
  }

  .ms-app .campusai-cert-name {
    font-size: 1.35rem;
  }

  .ms-app .campusai-cert-signatures {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .ms-app .campusai-cert-footer {
    flex-direction: column;
    align-items: flex-start;
  }

  .ms-app .campusai-cert-verify {
    justify-content: flex-start;
    width: 100%;
  }

  .ms-app .profile-tasks-board {
    grid-template-columns: 1fr;
  }

  .ms-app .leaderboard-group-bar {
    display: none;
  }

  .ms-app .leaderboard-podium {
    grid-template-columns: 1fr;
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
  }

  .ms-app .leaderboard-row {
    grid-template-columns: 48px 1fr 80px;
    gap: 10px;
    padding: 12px 14px;
  }

  .ms-app .leaderboard-rank-label, .ms-app .leaderboard-level-cell, .ms-app .leaderboard-row--head span:nth-child(4), .ms-app .leaderboard-row--head span:nth-child(5) {
    display: none;
  }

  .ms-app .creator-top {
    flex-wrap: wrap;
  }

  .ms-app .creator-top-actions {
    justify-content: flex-end;
    width: 100%;
  }

  .ms-app .creator-type-grid, .ms-app .creator-form-grid, .ms-app .creator-settings-row, .ms-app .creator-cover-block, .ms-app .creator-option-list--grid {
    grid-template-columns: 1fr;
  }
}

.ms-app .creator-shell {
  max-width: 960px;
  margin: 0 auto;
  position: relative;
}

.ms-app .creator-top {
  border-bottom: 1px solid var(--border-default);
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 32px;
  padding-bottom: 24px;
  display: flex;
}

.ms-app .creator-top-meta {
  flex: 1;
  min-width: 0;
}

.ms-app .creator-eyebrow {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: 6px;
  font-size: .68rem;
  font-weight: 700;
  display: block;
}

.ms-app .creator-heading {
  font-family: var(--font-heading);
  letter-spacing: .04em;
  font-size: 1.35rem;
  font-weight: 800;
}

.ms-app .creator-top-actions {
  flex-shrink: 0;
  align-items: center;
  gap: 10px;
  display: flex;
}

.ms-app .creator-top-actions.is-hidden {
  display: none;
}

.ms-app .creator-bottom-actions {
  border-top: 1px solid var(--border-default);
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  margin-top: 24px;
  padding-top: 20px;
  display: flex;
}

.ms-app .creator-bottom-actions.is-hidden, .ms-app .creator-step {
  display: none;
}

.ms-app .creator-step.is-active {
  display: block;
}

.ms-app .creator-lead {
  color: var(--text-subtitle);
  max-width: 640px;
  margin-bottom: 28px;
  font-size: .88rem;
  line-height: 1.6;
}

.ms-app .creator-type-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  display: grid;
}

.ms-app .creator-type-card {
  text-align: left;
  border-radius: var(--radius-card);
  border: 1px solid var(--border-default);
  background: var(--bg-card);
  padding: 24px;
  transition: border-color .15s, transform .15s, box-shadow .15s;
}

.ms-app .creator-type-card:hover {
  box-shadow: var(--glow);
  border-color: #c3f74f73;
  transform: translateY(-2px);
}

.ms-app .creator-type-icon {
  align-items: center;
  margin-bottom: 14px;
  display: flex;
}

.ms-app .creator-type-icon .ms-ico {
  width: 28px;
  height: 28px;
  color: var(--accent-bright);
}

.ms-app .creator-type-label {
  font-family: var(--font-heading);
  letter-spacing: .06em;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-size: .95rem;
  font-weight: 800;
  display: block;
}

.ms-app .creator-type-desc {
  color: var(--text-subtitle);
  margin-bottom: 16px;
  font-size: .78rem;
  line-height: 1.55;
  display: block;
}

.ms-app .creator-type-meta {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--accent-bright);
  background: var(--accent-soft);
  border: 1px solid #c3f74f33;
  border-radius: 4px;
  padding: 4px 10px;
  font-size: .65rem;
  font-weight: 700;
  display: inline-block;
}

.ms-app .creator-form-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  display: grid;
}

.ms-app .creator-section {
  border-radius: var(--radius-sm);
  border: 1px solid var(--border-default);
  background: var(--bg-card);
  padding: 22px;
}

.ms-app .creator-section--wide {
  grid-column: 1 / -1;
}

.ms-app .creator-section-title {
  font-family: var(--font-heading);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: 18px;
  font-size: .72rem;
  font-weight: 800;
}

.ms-app .creator-field {
  margin-bottom: 16px;
}

.ms-app .creator-field:last-child {
  margin-bottom: 0;
}

.ms-app .creator-label {
  color: var(--text-secondary);
  margin-bottom: 8px;
  font-size: .78rem;
  font-weight: 600;
  display: block;
}

.ms-app .creator-required {
  color: var(--accent-bright);
}

.ms-app .creator-hint {
  color: var(--text-muted);
  margin-top: 6px;
  font-size: .68rem;
  display: block;
}

.ms-app .creator-hint-inline {
  color: var(--text-muted);
  text-transform: none;
  letter-spacing: 0;
  font-size: .65rem;
  font-weight: 600;
}

.ms-app .creator-input, .ms-app .creator-textarea {
  background: var(--bg-surface);
  border: 1px solid var(--border-default);
  width: 100%;
  color: var(--text-primary);
  border-radius: 10px;
  outline: none;
  padding: 12px 14px;
  font-size: .88rem;
  transition: border-color .15s;
}

.ms-app .creator-input:focus, .ms-app .creator-textarea:focus {
  border-color: var(--accent-bright);
}

.ms-app .creator-input--sm {
  flex-shrink: 0;
  max-width: 140px;
}

.ms-app .creator-textarea {
  resize: vertical;
  min-height: 160px;
  line-height: 1.55;
}

.ms-app .creator-rte-toolbar {
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
  border-radius: 8px;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
  padding: 8px 10px;
  display: flex;
}

.ms-app .creator-rte-toolbar span {
  min-width: 28px;
  height: 28px;
  color: var(--text-muted);
  border: 1px solid var(--border-default);
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  font-size: .72rem;
  font-weight: 700;
  display: inline-flex;
}

.ms-app .creator-cover-block {
  grid-template-columns: 1fr min(360px, 42%);
  align-items: start;
  gap: 20px;
  display: grid;
}

.ms-app .creator-cover-side {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.ms-app .creator-cover-block .creator-field {
  margin-bottom: 0;
}

.ms-app .creator-cover-guide {
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
  border-radius: 10px;
  padding: 14px 16px;
}

.ms-app .creator-cover-guide-title {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--text-secondary);
  margin-bottom: 10px;
  font-size: .72rem;
  font-weight: 700;
}

.ms-app .creator-cover-guide-steps {
  color: var(--text-subtitle);
  margin: 0;
  padding-left: 18px;
  font-size: .75rem;
  line-height: 1.55;
}

.ms-app .creator-cover-guide-steps li + li {
  margin-top: 6px;
}

.ms-app .creator-cover-guide-steps strong {
  color: var(--text-secondary);
  font-weight: 600;
}

.ms-app .creator-docs-guide {
  margin-top: 14px;
}

.ms-app .creator-section-footer {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 10px;
  display: flex;
}

.ms-app .creator-section-footer .creator-hint {
  margin-top: 0;
}

.ms-app .creator-section-save {
  flex-shrink: 0;
  padding: 8px 14px;
  font-size: .78rem;
}

.ms-app .creator-draft-status.is-dirty {
  color: var(--status-warning);
}

.ms-app .creator-draft-status.is-saved {
  color: var(--status-success);
}

.ms-app .creator-cover-preview {
  aspect-ratio: 16 / 10;
  border: 1px dashed var(--border-strong);
  background: var(--bg-surface);
  color: var(--text-muted);
  text-align: center;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  margin-top: 12px;
  padding: 12px;
  font-size: .75rem;
  display: flex;
  overflow: hidden;
}

.ms-app .creator-cover-preview.has-image {
  border-style: solid;
  padding: 0;
}

.ms-app .creator-cover-preview img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.ms-app .creator-field-lead {
  color: var(--text-subtitle);
  max-width: 640px;
  margin: -4px 0 14px;
  font-size: .78rem;
  line-height: 1.55;
}

.ms-app .creator-field-lead em {
  color: var(--text-secondary);
  font-style: normal;
}

.ms-app .creator-option-list {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.ms-app .creator-option-list--compact {
  gap: 8px;
}

.ms-app .creator-option-list--grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  display: grid;
}

.ms-app .creator-option-card {
  border: 1px solid var(--border-default);
  background: var(--bg-surface);
  cursor: pointer;
  border-radius: 10px;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 16px;
  transition: border-color .15s, background .15s;
  display: flex;
}

.ms-app .creator-option-card:hover {
  border-color: #c3f74f40;
}

.ms-app .creator-option-card:has(input:checked) {
  background: #c3f74f0f;
  border-color: #c3f74f73;
}

.ms-app .creator-option-card input {
  accent-color: var(--accent-bright);
  flex-shrink: 0;
  margin-top: 3px;
}

.ms-app .creator-option-body {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}

.ms-app .creator-option-title {
  color: var(--text-primary);
  letter-spacing: .02em;
  font-size: .82rem;
  font-weight: 700;
}

.ms-app .creator-option-card:has(input:checked) .creator-option-title {
  color: var(--accent-bright);
}

.ms-app .creator-option-desc {
  color: var(--text-subtitle);
  font-size: .74rem;
  line-height: 1.5;
}

.ms-app .creator-radio-row {
  flex-wrap: wrap;
  gap: 10px;
  display: flex;
}

.ms-app .creator-radio-row--wrap {
  gap: 8px;
}

.ms-app .creator-radio {
  border-radius: var(--radius-pill);
  border: 1px solid var(--border-strong);
  color: var(--text-secondary);
  cursor: pointer;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  font-size: .78rem;
  transition: border-color .15s, color .15s;
  display: inline-flex;
}

.ms-app .creator-radio:has(input:checked) {
  color: var(--accent-bright);
  background: var(--accent-soft);
  border-color: #c3f74f73;
}

.ms-app .creator-radio input {
  accent-color: var(--accent-bright);
}

.ms-app .creator-check-grid {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.ms-app .creator-check {
  color: var(--text-secondary);
  cursor: pointer;
  align-items: center;
  gap: 10px;
  font-size: .82rem;
  display: flex;
}

.ms-app .creator-check--inline {
  margin-top: 14px;
}

.ms-app .creator-check input {
  accent-color: var(--accent-bright);
}

.ms-app .creator-tag-pills {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.ms-app .creator-tag-pill input {
  opacity: 0;
  pointer-events: none;
  position: absolute;
}

.ms-app .creator-tag-pill span {
  border-radius: var(--radius-pill);
  border: 1px solid var(--border-strong);
  color: var(--text-secondary);
  padding: 6px 14px;
  font-size: .75rem;
  transition: border-color .15s, background .15s, color .15s;
  display: inline-block;
}

.ms-app .creator-tag-pill input:checked + span {
  background: var(--accent-soft);
  color: var(--accent-bright);
  border-color: #c3f74f73;
}

.ms-app .creator-custom-add {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  display: flex;
}

.ms-app .creator-custom-add .creator-input {
  flex: 1;
  min-width: 180px;
}

.ms-app .creator-custom-items {
  display: contents;
}

.ms-app .creator-check--custom {
  color: var(--text-secondary);
}

.ms-app .creator-pending-badge {
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--text-muted);
  border: 1px dashed var(--border-strong);
  border-radius: 4px;
  margin-left: 4px;
  padding: 1px 6px;
  font-size: .65rem;
}

.ms-app .creator-tag-pill--custom span, .ms-app .creator-tag-pill--custom input:checked + span {
  border-style: dashed;
}

.ms-app .creator-pending-dot {
  color: var(--text-muted);
  opacity: .85;
  font-size: .65rem;
  font-style: normal;
}

.ms-app .creator-links {
  flex-direction: column;
  gap: 10px;
  margin-bottom: 12px;
  display: flex;
}

.ms-app .creator-link-row {
  align-items: center;
  gap: 10px;
  display: flex;
}

.ms-app .creator-link-row .creator-input:not(.creator-input--sm) {
  flex: 1;
}

.ms-app .creator-link-remove {
  border: 1px solid var(--border-default);
  width: 32px;
  height: 32px;
  color: var(--text-muted);
  border-radius: 8px;
  flex-shrink: 0;
  font-size: 1.1rem;
  line-height: 1;
}

.ms-app .creator-link-remove:hover {
  border-color: var(--status-error);
  color: var(--status-error);
}

.ms-app .creator-open-roles {
  flex-direction: column;
  gap: 12px;
  margin-bottom: 12px;
  display: flex;
}

.ms-app .creator-role-row {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  flex-direction: column;
  gap: 10px;
  padding: 14px;
  display: flex;
}

.ms-app .creator-role-row-header {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.ms-app .creator-role-row-label {
  font-family: var(--font-heading);
  color: var(--text-primary);
  font-size: .82rem;
}

.ms-app .creator-role-row-split {
  grid-template-columns: 140px 1fr;
  gap: 12px;
  display: grid;
}

.ms-app .creator-role-icon-field, .ms-app .creator-role-form-field {
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.ms-app .creator-role-form-field .creator-label {
  margin-top: 0;
}

@media (max-width: 640px) {
  .ms-app .creator-role-row-split {
    grid-template-columns: 1fr;
  }
}

.ms-app .creator-add-btn {
  font-size: .78rem;
}

.ms-app .creator-settings-row {
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  display: grid;
}

.ms-app .ms-notif-wrap {
  position: relative;
}

.ms-app .ms-notif-panel {
  z-index: 350;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  background: #121212fa;
  border: 1px solid #ffffff14;
  border-radius: 16px;
  width: min(380px, 100vw - 24px);
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  overflow: hidden;
  box-shadow: 0 20px 56px #0000008c;
}

.ms-app .ms-notif-panel-head {
  border-bottom: 1px solid var(--border-default);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 16px 18px 12px;
  display: flex;
}

.ms-app .ms-notif-panel-title {
  font-family: var(--font-heading);
  margin: 0;
  font-size: .95rem;
  font-weight: 700;
}

.ms-app .ms-notif-mark-all {
  color: var(--accent-bright);
  cursor: pointer;
  background: none;
  border: none;
  padding: 4px 0;
  font-size: .72rem;
  font-weight: 600;
}

.ms-app .ms-notif-mark-all:hover {
  text-decoration: underline;
}

.ms-app .ms-notif-list {
  max-height: min(400px, 60vh);
  overflow-y: auto;
}

.ms-app .ms-notif-empty {
  text-align: center;
  color: var(--text-muted);
  margin: 0;
  padding: 28px 18px;
  font-size: .82rem;
}

.ms-app .ms-notif-item {
  text-align: left;
  border: none;
  border-bottom: 1px solid var(--border-default);
  cursor: pointer;
  background: none;
  gap: 12px;
  width: 100%;
  padding: 14px 18px;
  transition: background .15s;
  display: flex;
}

.ms-app .ms-notif-item:last-child {
  border-bottom: none;
}

.ms-app .ms-notif-item:hover {
  background: var(--bg-elevated);
}

.ms-app .ms-notif-item--unread {
  background: #c3f74f0a;
}

.ms-app .ms-notif-item-dot {
  background: var(--accent-bright);
  opacity: 0;
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  margin-top: 6px;
}

.ms-app .ms-notif-item--unread .ms-notif-item-dot {
  opacity: 1;
}

.ms-app .ms-notif-item-body {
  flex-direction: column;
  gap: 3px;
  min-width: 0;
  display: flex;
}

.ms-app .ms-notif-item-top {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.ms-app .ms-notif-item-title {
  color: var(--text-primary);
  font-size: .78rem;
  font-weight: 700;
}

.ms-app .ms-notif-item-tag {
  letter-spacing: .06em;
  text-transform: uppercase;
  border-radius: 4px;
  flex-shrink: 0;
  padding: 2px 6px;
  font-size: .55rem;
  font-weight: 800;
}

.ms-app .ms-notif-item-tag--ms {
  color: var(--accent-bright);
  background: #c3f74f1f;
  border: 1px solid #c3f74f40;
}

.ms-app .ms-notif-item-tag--district {
  color: #b8d4ff;
  background: #5eb3ff1a;
  border: 1px solid #5eb3ff40;
}

.ms-app .ms-notif-item-msg {
  color: var(--text-primary);
  font-size: .85rem;
  font-weight: 600;
  line-height: 1.35;
}

.ms-app .ms-notif-item-hint {
  color: var(--text-muted);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: .74rem;
  line-height: 1.4;
  display: -webkit-box;
  overflow: hidden;
}

.ms-app .ms-notif-item-time {
  color: var(--text-subtitle);
  margin-top: 2px;
  font-size: .68rem;
}

.ms-app .ms-notif-panel-foot {
  border-top: 1px solid var(--border-default);
  padding: 10px 18px 12px;
}

.ms-app .ms-notif-foot-note {
  color: var(--text-muted);
  font-size: .65rem;
}

.ms-app .ms-toast-stack {
  z-index: 500;
  pointer-events: none;
  flex-direction: column;
  gap: 12px;
  max-width: min(320px, 100vw - 32px);
  display: flex;
  position: fixed;
  top: 72px;
  right: 24px;
}

.ms-app .ms-toast {
  pointer-events: auto;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  background: #101010f5;
  border: 1px solid #ffffff12;
  border-radius: 20px;
  padding: 22px 24px 20px;
  animation: .35s ms-toast-in;
  position: relative;
  box-shadow: 0 12px 40px #00000073;
}

.ms-app .ms-toast--out {
  animation: .28s forwards ms-toast-out;
}

@keyframes ms-toast-in {
  from {
    opacity: 0;
    transform: translateX(16px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes ms-toast-out {
  from {
    opacity: 1;
    transform: translateX(0);
  }

  to {
    opacity: 0;
    transform: translateX(16px);
  }
}

.ms-app .ms-toast-close {
  width: 28px;
  height: 28px;
  color: var(--text-muted);
  cursor: pointer;
  background: #ffffff0a;
  border: 1px solid #ffffff1f;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  line-height: 1;
  display: flex;
  position: absolute;
  top: 12px;
  right: 12px;
}

.ms-app .ms-toast-close:hover {
  color: var(--text-primary);
  border-color: #ffffff40;
}

.ms-app .ms-toast-title {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  margin-bottom: 10px;
  padding-right: 24px;
  font-size: 1rem;
  font-weight: 700;
}

.ms-app .ms-toast-body {
  color: var(--text-primary);
  margin-bottom: 6px;
  font-size: .92rem;
  font-weight: 500;
}

.ms-app .ms-toast-hint {
  color: var(--text-muted);
  font-size: .76rem;
  line-height: 1.45;
}

.ms-app .ms-modal-card--achievement {
  text-align: center;
  background: #141414fa;
  border: 1px solid #ffffff14;
  border-radius: 20px;
  max-width: 520px;
  padding: 44px 36px 36px;
}

.ms-app .ms-achievement-headline {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  margin: 0 0 16px;
  font-size: 1.35rem;
  font-weight: 800;
}

.ms-app .ms-achievement-text {
  color: var(--text-primary);
  margin: 0 0 8px;
  font-size: .95rem;
  line-height: 1.55;
}

.ms-app .ms-achievement-glow {
  background: linear-gradient(90deg, transparent 0%, var(--accent-bright) 50%, transparent 100%);
  filter: blur(22px);
  opacity: .75;
  max-width: 280px;
  height: 56px;
  margin: 20px auto 16px;
}

.ms-app .ms-achievement-rank {
  font-family: var(--font-heading);
  color: var(--accent-bright);
  margin: 0 0 28px;
  font-size: 1rem;
  font-weight: 700;
}

.ms-app .ms-achievement-btn {
  color: #111;
  cursor: pointer;
  background: #e6e6e6;
  border: none;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  min-width: 160px;
  padding: 12px 28px;
  font-size: .88rem;
  font-weight: 700;
  transition: filter .15s;
  display: inline-flex;
}

.ms-app .ms-achievement-btn:hover {
  filter: brightness(1.05);
}

.ms-app .creator-toast {
  z-index: 400;
  border-radius: var(--radius-pill);
  background: var(--bg-elevated);
  max-width: min(520px, 100vw - 32px);
  color: var(--accent-bright);
  text-align: center;
  border: 1px solid #c3f74f59;
  padding: 12px 20px;
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.45;
  position: fixed;
  bottom: 88px;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 8px 32px #00000073;
}

.ms-app .creator-toast.is-hidden {
  display: none;
}

.ms-app .is-hidden {
  display: none !important;
}

.ms-app .project-roles-section {
  border-top: 1px solid var(--border-default);
  margin-top: 28px;
  padding-top: 24px;
}

.ms-app .project-roles-header {
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 14px;
  display: flex;
}

.ms-app .project-roles-title {
  font-family: var(--font-heading);
  color: var(--text-primary);
  margin: 0;
  font-size: 1rem;
}

.ms-app .project-roles-count {
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .04em;
  white-space: nowrap;
  font-size: .72rem;
}

.ms-app .project-roles-list {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.ms-app .role-card {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  text-align: left;
  cursor: pointer;
  width: 100%;
  color: inherit;
  font: inherit;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  transition: border-color .15s, background .15s;
  display: flex;
}

.ms-app .role-card:hover {
  background: #c3f74f0a;
  border-color: #c3f74f59;
}

.ms-app .role-card--static {
  cursor: default;
  pointer-events: none;
  opacity: .88;
}

.ms-app .role-card--static:hover {
  border-color: var(--border-default);
  background: var(--bg-elevated);
}

.ms-app .role-card-icon {
  border-radius: var(--radius-sm);
  background: var(--bg-surface);
  width: 36px;
  height: 36px;
  color: var(--accent-bright);
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.ms-app .role-card-icon .ms-ico {
  width: 18px;
  height: 18px;
}

.ms-app .role-card-body {
  flex: 1;
  min-width: 0;
}

.ms-app .role-card-title {
  font-family: var(--font-heading);
  color: var(--text-primary);
  margin-bottom: 2px;
  font-size: .9rem;
}

.ms-app .role-card-desc {
  color: var(--text-muted);
  font-size: .78rem;
  line-height: 1.4;
}

.ms-app .role-card-arrow {
  color: var(--text-muted);
  flex-shrink: 0;
}

.ms-app .role-card-arrow .ms-ico {
  width: 16px;
  height: 16px;
}

.ms-app .role-card:hover .role-card-arrow {
  color: var(--accent-bright);
}

.ms-app .project-join-lead {
  color: var(--text-secondary);
  margin: 12px 0 16px;
  font-size: .82rem;
  line-height: 1.55;
}

.ms-app .project-join-lead--muted {
  color: var(--text-muted);
  margin-bottom: 0;
}

.ms-app .project-join-btn {
  width: 100%;
}

.ms-app .project-join-btn.is-disabled {
  opacity: .45;
  pointer-events: none;
  cursor: not-allowed;
}

.ms-app #project-join-panel .open-badge {
  margin-top: 0;
}

.ms-app .author-row-role {
  color: var(--text-muted);
  margin-top: 2px;
  font-size: .72rem;
}

.ms-app .ms-modal {
  z-index: 400;
  justify-content: center;
  align-items: center;
  padding: 24px;
  display: flex;
  position: fixed;
  inset: 0;
}

.ms-app .ms-modal.is-hidden {
  display: none !important;
}

.ms-app body.ms-modal-open {
  overflow: hidden;
}

.ms-app body.ms-modal-open .creator-toast {
  z-index: 1200;
}

.ms-app .ms-modal-backdrop {
  background: #000000a6;
  position: absolute;
  inset: 0;
}

.ms-app .ms-modal-card {
  background: var(--bg-surface);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  width: 100%;
  max-width: 440px;
  padding: 28px 24px 24px;
  position: relative;
  box-shadow: 0 16px 48px #00000080;
}

.ms-app .ms-modal-card.ms-modal-card--profile-edit {
  width: min(880px, 100vw - 48px);
  max-width: min(880px, 100vw - 48px);
}

.ms-app .ms-modal-card.ms-modal-card--profile-edit.ms-modal-card--profile-edit-wide {
  width: min(960px, 100vw - 32px);
  max-width: min(960px, 100vw - 32px);
}

.ms-app .ms-modal-card--picker {
  max-width: 480px;
}

.ms-app .ms-modal-card--stub {
  text-align: center;
  max-width: 400px;
}

.ms-app .ms-modal-sub--center {
  margin-bottom: 24px;
}

.ms-app .ms-settings-ok {
  min-width: 120px;
}

.ms-app .ms-modal-close {
  border: 1px solid var(--border-default);
  width: 32px;
  height: 32px;
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border-radius: 8px;
  font-size: 1.25rem;
  line-height: 1;
  position: absolute;
  top: 12px;
  right: 12px;
}

.ms-app .ms-modal-close:hover {
  border-color: var(--accent-bright);
  color: var(--text-primary);
}

.ms-app .ms-modal-title {
  font-family: var(--font-heading);
  color: var(--text-primary);
  margin: 0 0 6px;
  padding-right: 28px;
  font-size: 1.1rem;
}

.ms-app .ms-modal-sub {
  color: var(--text-muted);
  margin: 0 0 16px;
  font-size: .82rem;
  line-height: 1.5;
}

.ms-app .role-picker-list {
  flex-direction: column;
  gap: 8px;
  max-height: min(360px, 50vh);
  margin-bottom: 16px;
  display: flex;
  overflow-y: auto;
}

.ms-app .role-picker-item {
  background: var(--bg-elevated);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  text-align: left;
  cursor: pointer;
  width: 100%;
  color: inherit;
  font: inherit;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  transition: border-color .15s, background .15s;
  display: flex;
}

.ms-app .role-picker-item:hover {
  background: #c3f74f0a;
  border-color: #c3f74f59;
}

.ms-app .role-picker-form-hint {
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-top: 4px;
  font-size: .68rem;
}

.ms-app .role-picker-general {
  text-align: center;
  width: 100%;
}

.ms-app button.ms-menu-item[data-slot="button"], .ms-app a.ms-menu-item[data-slot="button"] {
  height: auto !important;
  box-shadow: none !important;
  background: none !important;
  border-radius: 0 !important;
}

.ms-app button.ms-icon-btn[data-slot="button"], .ms-app button.ms-icon-btn[data-slot="icon-button"], .ms-app a.ms-icon-btn[data-slot="icon-button"] {
  width: 36px !important;
  height: 36px !important;
  box-shadow: none !important;
  color: var(--text-secondary) !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
}

.ms-app button.btn-nowy[data-slot="button"], .ms-app a.btn-nowy[data-slot="button"] {
  background: var(--accent-bright) !important;
  height: auto !important;
  color: var(--text-dark) !important;
  box-shadow: none !important;
  border-radius: var(--radius-pill) !important;
  border: none !important;
}

.ms-app button.btn-primary[data-slot="button"] {
  background: var(--accent-bright) !important;
  color: var(--text-dark) !important;
  border: none !important;
}

.ms-app button.btn-ghost[data-slot="button"] {
  color: var(--text-secondary) !important;
  box-shadow: none !important;
  background: none !important;
  border: none !important;
  height: auto !important;
}

.ms-app button.creator-type-card[data-slot="button"] {
  white-space: normal !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  height: auto !important;
  display: flex !important;
}

.ms-app.ms-app--webview .app-shell.app-shell--ms-only {
  width: 100%;
  max-width: 100%;
  height: 100vh;
  display: flex;
  overflow: hidden;
}

.ms-app.ms-app--webview .app-shell--ms-only .main-area {
  flex: 1;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin-top: 0;
  padding-top: 0;
}

.ms-app.ms-app--webview .sidebar {
  width: 0 !important;
  min-width: 0 !important;
  display: none !important;
}

.ms-app.ms-app--webview .topbar {
  border: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: none !important;
}

@media (max-width: 900px) {
  .ms-app .app-shell {
    flex-direction: column;
  }

  .ms-app .ms-mobile-nav {
    display: flex;
  }

  .ms-app .main-area {
    padding-bottom: 64px;
  }
}

.ms-app .ms-mobile-nav {
  z-index: 50;
  border-top: 1px solid var(--border-default);
  background: var(--bg-primary);
  padding: 8px 4px calc(8px + env(safe-area-inset-bottom));
  justify-content: space-around;
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
}

.ms-app .ms-mobile-nav a {
  color: var(--text-muted);
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 4px 12px;
  font-size: .625rem;
  font-weight: 600;
  display: flex;
}

.ms-app .ms-mobile-nav a.active {
  color: var(--accent-bright);
}

.ms-app .ms-mobile-nav svg {
  width: 22px;
  height: 22px;
}

.ms-app.ms-app--auth {
  background: radial-gradient(at top, #252020 0%, #000 55%);
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  padding: 32px 16px;
  display: flex;
}

.ms-app.ms-app--auth .ms-auth-card {
  background: var(--bg-card);
  border: 1px solid var(--border-strong);
  border-radius: var(--radius-card);
  width: 100%;
  max-width: 420px;
  box-shadow: var(--glow);
  padding: 32px 28px;
}

.ms-app.ms-app--auth .ms-auth-brand {
  font-family: var(--font-heading);
  letter-spacing: .12em;
  color: var(--accent-bright);
  margin-bottom: 8px;
  font-size: .85rem;
  font-weight: 800;
}

.ms-app--auth [data-slot="card"] {
  width: 100%;
  max-width: 420px;
  background: var(--bg-card) !important;
  border: 1px solid var(--border-strong) !important;
  border-radius: var(--radius-card) !important;
  box-shadow: var(--glow) !important;
  color: var(--text-primary) !important;
}

.ms-app--auth [data-slot="card"] h1, .ms-app--auth [data-slot="card"] [data-slot="card-title"] {
  font-family: var(--font-heading);
  color: var(--text-primary) !important;
}

.ms-app--auth [data-slot="card"] [data-slot="card-description"], .ms-app--auth [data-slot="card"] p {
  color: var(--text-secondary) !important;
}

.ms-app--auth input, .ms-app--auth [data-slot="input"] {
  background: var(--bg-elevated) !important;
  border-color: var(--border-strong) !important;
  color: var(--text-primary) !important;
}

.ms-app--auth button[data-slot="button"] {
  background: var(--accent-bright) !important;
  color: var(--text-dark) !important;
  border: none !important;
  font-weight: 700 !important;
}

.ms-app--auth button[data-slot="button"][class*="ghost"], .ms-app--auth button[data-slot="button"][class*="outline"], .ms-app--auth button[data-slot="button"][class*="link"] {
  color: var(--accent-bright) !important;
  background: none !important;
}

.ms-app--auth label, .ms-app--auth [data-slot="label"] {
  color: var(--text-secondary) !important;
}

.ms-app--auth .ms-auth-card {
  background: var(--bg-card);
  border: 1px solid var(--border-strong);
  border-radius: var(--radius-card);
  width: 100%;
  max-width: 420px;
  box-shadow: var(--glow);
  padding: 28px 24px;
}

.ms-app .ms-tour-root {
  z-index: 70;
  pointer-events: none;
  position: fixed;
  inset: 0;
}

.ms-app .ms-tour-backdrop {
  pointer-events: auto;
  background: #080c148c;
  position: fixed;
  inset: 0;
}

.ms-app .ms-tour-spotlight {
  pointer-events: none;
  z-index: 75;
  border-radius: 10px;
  position: fixed;
  box-shadow: 0 0 0 9999px #080c148c, 0 0 0 2px #ffffffd9;
}

.ms-app .ms-tour-card {
  pointer-events: auto;
  background: var(--bg-elevated, #fff);
  color: var(--text-primary, #111);
  border: 1px solid var(--border-default, #e5e7eb);
  border-radius: 12px;
  padding: 16px 18px;
  box-shadow: 0 12px 40px #0000002e;
}

.ms-app .ms-tour-card-head {
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
  display: flex;
}

.ms-app .ms-tour-progress {
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--text-muted, #6b7280);
  margin: 0;
  font-size: 12px;
}

.ms-app .ms-tour-title {
  margin: 0 0 8px;
  font-size: 1.125rem;
  font-weight: 650;
  line-height: 1.3;
}

.ms-app .ms-tour-body {
  color: var(--text-secondary, #374151);
  margin: 0 0 14px;
  font-size: .925rem;
  line-height: 1.45;
}

.ms-app .ms-tour-ctas, .ms-app .ms-tour-actions {
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
  display: flex;
}

.ms-app .ms-tour-actions {
  justify-content: space-between;
}

