.growth-shell { padding-bottom: calc(var(--space-12) + var(--space-12) + env(safe-area-inset-bottom)); }
.growth-layout, .growth-list, .growth-main { display: grid; gap: var(--space-4); min-width: 0; }
.growth-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: var(--space-4); }
.growth-toolbar, .growth-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: end; }
.growth-toolbar .ui-field { flex: 1 1 160px; min-width: 0; }
.growth-list-item { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: start; justify-content: space-between; }
.growth-list-item__main { min-width: 0; flex: 1 1 200px; overflow-wrap: anywhere; }
.growth-list-item__score { font-family: var(--font-title); font-size: var(--font-size-xl); color: var(--color-brand); }
.growth-muted { color: var(--color-text-muted); font-size: var(--font-size-sm); }
.growth-stepper { display: flex; gap: var(--space-2); flex-wrap: wrap; margin-block: var(--space-4); }
.growth-step { flex: 1 1 100px; color: var(--color-text-muted); }
.growth-step[aria-current="step"] { color: var(--color-brand); font-weight: 600; }
.growth-item-editor { min-width: 0; margin-block: var(--space-3); }
.growth-rule-fields { display: grid; gap: var(--space-2); }
.growth-member-row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4); padding-block: var(--space-3); border-bottom: 1px solid var(--color-border); }
.growth-member-row > span { flex: 1 1 120px; overflow-wrap: anywhere; }
.growth-member-row label { display: inline-flex; align-items: center; gap: var(--space-2); }
.growth-table-wrap { min-width: 0; overflow-x: auto; }
.growth-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.growth-table th, .growth-table td { padding: var(--space-3) var(--space-2); text-align: left; overflow-wrap: anywhere; border-bottom: 1px solid var(--color-border); }
.growth-table caption { text-align: left; color: var(--color-text-secondary); padding-block: var(--space-3); }
.growth-certificate { margin-block: var(--space-4); border-color: var(--color-accent); }
.growth-certificate h3 { font-family: var(--font-title); color: var(--color-brand); }
.growth-shell :is(p, li, h2, h3) { overflow-wrap: anywhere; }
.growth-shell :is(input, select, textarea) { max-width: 100%; }
.growth-shell .ui-field { margin-block: var(--space-3); }
.growth-shell [hidden] { display: none; }
.growth-shell :is(ul, ol):not(.growth-stepper) { padding-inline-start: var(--space-6); }
.growth-stepper { list-style: none; padding: 0; }
@media (min-width: 840px) {
  .growth-layout { grid-template-columns: minmax(180px, 240px) minmax(0, 1fr); align-items: start; }
  .growth-sidebar { position: sticky; top: var(--space-4); }
}
@media print {
  body * { visibility: hidden; }
  .growth-print-target, .growth-print-target * { visibility: visible; }
  .growth-print-target { position: absolute; inset: 0; border: 0; box-shadow: none; }
  .growth-print-target button { display: none; }
}
