/* Lifecycle Continuity Disruption Mitigation Workspace */

:root {
    --dmg-navy: #001624;
    --dmg-navy-2: #071927;
    --dmg-ink: #0f172a;
    --dmg-text: #334155;
    --dmg-muted: #64748b;
    --dmg-line: #e2e8f0;
    --dmg-soft: #f8fafc;
    --dmg-white: #ffffff;
    --dmg-teal: #07988B;
    --dmg-teal-dark: #05756B;
    --dmg-gold: #d9b64c;
    --dmg-blue: #2f6fed;
    --dmg-red: #b42318;
    --dmg-amber: #b7791f;
}

body {
    background: var(--dmg-navy);
}

.dmg-page {
    background: var(--dmg-navy);
    color: var(--dmg-white);
}

.dmg-page h1,
.dmg-page h2,
.dmg-page h3,
.dmg-page h4,
.dmg-page h5,
.dmg-page h6 {
    text-align: left !important;
    letter-spacing: 0;
}

.dmg-hero {
    position: relative;
    overflow: hidden;
    padding: 9rem 0 4rem;
    background:
        linear-gradient(90deg, rgba(0,22,36,.92) 0%, rgba(0,22,36,.76) 48%, rgba(0,22,36,.54) 100%),
        linear-gradient(180deg, rgba(0,22,36,.18) 0%, rgba(0,22,36,.84) 100%),
        url("../assets/img/LXNBackground_faded.png") center / cover no-repeat;
}

.dmg-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(320px, .94fr);
    gap: 2rem;
    align-items: end;
}

.dmg-hero-copy {
    max-width: 820px;
}

.dmg-eyebrow {
    color: var(--dmg-teal);
    font-size: .82rem;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: .85rem;
    letter-spacing: 0;
}

.dmg-hero h1 {
    color: #ffffff !important;
    font-size: 3.55rem;
    line-height: 1.05;
    margin: 0 0 1.1rem;
    letter-spacing: 0;
}

.dmg-lede {
    color: rgba(255,255,255,.9) !important;
    font-size: 1.2rem;
    line-height: 1.62;
    margin: 0;
    max-width: 760px;
}

.dmg-support {
    color: rgba(255,255,255,.76) !important;
    font-size: .98rem;
    line-height: 1.68;
    margin: 1.2rem 0 0;
    max-width: 820px;
}

.dmg-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    margin-top: 1.6rem;
}

.dmg-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border-radius: 8px;
    padding: .82rem 1rem;
    font-size: .92rem;
    font-weight: 800;
    text-decoration: none;
    border: 1px solid transparent;
    transition: background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}

.dmg-button i,
.dmg-reset i {
    color: currentColor !important;
}

.dmg-button.primary {
    color: #ffffff !important;
    background: var(--dmg-teal);
    border-color: var(--dmg-teal);
    min-width: 13.75rem;
    padding: .95rem 1.22rem;
    box-shadow: 0 12px 28px rgba(7,152,139,.24);
}

.dmg-button.primary:hover,
.dmg-button.primary:focus {
    color: #ffffff !important;
    background: var(--dmg-teal-dark);
    border-color: var(--dmg-teal-dark);
    transform: translateY(-1px);
}

.dmg-button.secondary {
    color: #ffffff !important;
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.25);
    opacity: .9;
}

.dmg-button.secondary:hover,
.dmg-button.secondary:focus {
    color: #ffffff !important;
    background: rgba(255,255,255,.14);
    border-color: rgba(255,255,255,.36);
    transform: translateY(-1px);
}

.dmg-hero-panel {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 8px;
    padding: 1.25rem;
    box-shadow: 0 24px 58px rgba(0,0,0,.18);
}

.dmg-hero-question-panel {
    align-self: center;
}

.dmg-panel-kicker {
    display: inline-block;
    color: rgba(255,255,255,.7);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: .55rem;
}

.dmg-hero-question-panel h2 {
    color: #ffffff !important;
    font-size: 1.45rem;
    line-height: 1.2;
    margin: 0 0 .7rem;
}

.dmg-hero-question-panel p {
    color: rgba(255,255,255,.78) !important;
    font-size: .96rem;
    line-height: 1.58;
    margin: 0 0 1rem;
}

.dmg-hero-signal-list {
    display: grid;
    gap: .65rem;
}

.dmg-hero-signal-list div {
    background: rgba(0,22,36,.55);
    border: 1px solid rgba(255,255,255,.15);
    border-left: 3px solid var(--dmg-teal);
    border-radius: 8px;
    padding: .85rem;
}

.dmg-hero-signal-list strong,
.dmg-hero-signal-list span {
    display: block;
}

.dmg-hero-signal-list strong {
    color: #ffffff;
    font-size: .9rem;
    margin-bottom: .25rem;
}

.dmg-hero-signal-list span {
    color: rgba(255,255,255,.7);
    font-size: .82rem;
    line-height: 1.45;
}

.dmg-method,
.dmg-app-section {
    background: #ffffff;
    color: var(--dmg-text);
}

.dmg-method {
    padding: 4.25rem 0;
    border-bottom: 1px solid var(--dmg-line);
}

.dmg-app-section {
    padding: 3.5rem 0 5rem;
}

.dmg-section-head {
    max-width: 940px;
    margin-bottom: 1.7rem;
}

.dmg-section-head.compact {
    margin-bottom: 1rem;
}

.dmg-workspace-head {
    max-width: none;
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
}

.dmg-section-head h2 {
    color: var(--dmg-ink) !important;
    font-size: 2rem;
    line-height: 1.18;
    margin: 0 0 .65rem;
}

.dmg-section-head p {
    color: var(--dmg-text) !important;
    font-size: 1rem;
    line-height: 1.62;
    margin: 0;
}

.dmg-workspace-help-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    min-height: 2.45rem;
    border: 1px solid rgba(7,152,139,.36);
    background: #f0fdfa;
    color: var(--dmg-teal);
    border-radius: 8px;
    padding: .55rem .75rem;
    font-size: .84rem;
    font-weight: 900;
    white-space: nowrap;
}

.dmg-workspace-help-button:hover,
.dmg-workspace-help-button:focus,
.dmg-workspace-help-button[aria-expanded="true"] {
    border-color: var(--dmg-teal);
    background: #e3f8f5;
}

.dmg-workspace-help-button:focus-visible {
    outline: 3px solid rgba(7,152,139,.18);
    outline-offset: 2px;
}

.dmg-workspace-help-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1041;
    background: rgba(15,23,42,.18);
    opacity: 0;
    pointer-events: none;
    transition: opacity 180ms cubic-bezier(.16,1,.3,1);
}

.dmg-workspace-help-backdrop.open {
    opacity: 1;
}

.dmg-workspace-help-panel {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1042;
    width: 460px;
    max-width: 100%;
    height: 100vh;
    background: #ffffff;
    border-left: 1px solid var(--dmg-line);
    box-shadow: -4px 0 16px rgba(15,23,42,.1);
    transform: translateX(100%);
    transition: transform 240ms cubic-bezier(.16,1,.3,1);
    display: flex;
    flex-direction: column;
    pointer-events: auto;
}

.dmg-workspace-help-panel.open {
    transform: translateX(0);
}

.dmg-workspace-help-panel::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 2px;
    height: 0;
    background: var(--dmg-teal);
    transition: height 300ms cubic-bezier(.16,1,.3,1);
}

.dmg-workspace-help-panel.open::before {
    height: 100%;
}

.dmg-workspace-help-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.65rem 1.75rem 1.1rem;
    border-bottom: 1px solid var(--dmg-line);
}

.dmg-workspace-help-title {
    color: var(--dmg-ink) !important;
    font-size: 1.25rem;
    line-height: 1.25;
    margin: 0;
    text-align: left !important;
}

.dmg-workspace-help-intro {
    color: var(--dmg-muted) !important;
    font-size: .92rem;
    line-height: 1.55;
    margin: .65rem 0 0;
}

.dmg-workspace-help-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 2rem;
    height: 2rem;
    border: 1px solid rgba(7,152,139,.28);
    background: #f0fdfa;
    color: var(--dmg-teal);
    border-radius: 999px;
    padding: 0;
    pointer-events: auto;
}

.dmg-workspace-help-close:hover,
.dmg-workspace-help-close:focus {
    border-color: var(--dmg-teal);
    background: #e3f8f5;
}

.dmg-workspace-help-close:focus-visible {
    outline: 3px solid rgba(7,152,139,.18);
    outline-offset: 2px;
}

.dmg-workspace-help-body {
    overflow-y: auto;
    padding: 1.35rem 1.75rem 1.75rem;
}

.dmg-workspace-help-steps {
    display: grid;
    gap: .95rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.dmg-workspace-help-steps li {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    gap: .75rem;
}

.dmg-workspace-help-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border: 1px solid rgba(7,152,139,.45);
    background: #f0fdfa;
    color: var(--dmg-teal);
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 900;
}

.dmg-workspace-help-steps strong {
    display: block;
    color: var(--dmg-ink);
    font-size: .94rem;
    line-height: 1.35;
    margin-bottom: .2rem;
}

.dmg-workspace-help-steps p {
    color: var(--dmg-text) !important;
    font-size: .88rem;
    line-height: 1.52;
    margin: 0;
}

.dmg-workspace-help-note {
    margin-top: 1.25rem;
    padding: .9rem 1rem;
    background: #f8fafc;
    border: 1px solid var(--dmg-line);
    border-left: 3px solid var(--dmg-teal);
    border-radius: 8px;
}

.dmg-workspace-help-note strong {
    display: block;
    color: var(--dmg-text);
    font-size: .88rem;
    line-height: 1.55;
    font-weight: 800;
}

.dmg-method-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
    gap: 1rem;
}

.dmg-method-overview {
    display: grid;
    gap: 1rem;
    margin-bottom: 1rem;
}

.dmg-method-summary {
    max-width: 980px;
    border-left: 3px solid var(--dmg-teal);
    padding-left: 1rem;
}

.dmg-method-summary h3 {
    color: var(--dmg-ink) !important;
    font-size: 1.2rem;
    margin: 0 0 .45rem;
}

.dmg-method-summary p {
    color: var(--dmg-text) !important;
    font-size: 1rem;
    line-height: 1.62;
    margin: 0;
}

.dmg-method-stage-flow {
    display: grid;
    gap: .75rem;
}

.dmg-method-chevron-row {
    display: grid;
    grid-template-columns: repeat(6, minmax(135px, 1fr));
    gap: .18rem;
    overflow-x: auto;
    padding-bottom: .2rem;
}

.dmg-method-chevron {
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    appearance: none;
    cursor: help;
}

.dmg-chevron-label {
    --dmg-chevron-fill: #ffffff;
    position: relative;
    display: flex;
    align-items: center;
    gap: .5rem;
    min-height: 4.75rem;
    padding: .8rem 1.25rem .8rem 1.05rem;
    background: transparent;
    border: 0;
    color: var(--dmg-ink);
    isolation: isolate;
    transition: background .18s ease, color .18s ease, transform .18s ease;
}

.dmg-chevron-shape {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
}

.dmg-chevron-shape polygon {
    fill: var(--dmg-chevron-fill);
    stroke: var(--dmg-line);
    stroke-linejoin: miter;
    stroke-width: 1.2;
    vector-effect: non-scaling-stroke;
    shape-rendering: geometricPrecision;
}

.dmg-method-chevron:hover .dmg-chevron-label,
.dmg-method-chevron:focus .dmg-chevron-label,
.dmg-method-chevron.active .dmg-chevron-label {
    --dmg-chevron-fill: #f0fdfa;
    color: var(--dmg-ink);
    transform: translateY(-1px);
}

.dmg-method-chevron:focus {
    outline: 0;
}

.dmg-method-chevron:focus-visible .dmg-chevron-label {
    box-shadow: 0 0 0 3px rgba(7,152,139,.22);
}

.dmg-chevron-number {
    position: relative;
    z-index: 2;
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 1.55rem;
    height: 1.55rem;
    border-radius: 50%;
    background: #e7fbf8;
    border: 1px solid rgba(7,152,139,.5);
    color: var(--dmg-teal);
    font-size: .76rem;
    font-weight: 900;
}

.dmg-chevron-label strong {
    position: relative;
    z-index: 2;
    display: block;
    color: var(--dmg-ink);
    font-size: .82rem;
    line-height: 1.24;
    margin: 0;
}

.dmg-method-stage-detail {
    display: none;
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-left: 3px solid var(--dmg-teal);
    border-radius: 8px;
    box-shadow: 0 18px 40px rgba(15,23,42,.08);
    padding: 1rem;
    margin: 0;
}

.dmg-method-stage-detail.active {
    display: block;
}

.dmg-method-stage-detail span {
    display: inline-block;
    color: var(--dmg-teal);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: .4rem;
}

.dmg-method-stage-detail h4 {
    color: var(--dmg-ink) !important;
    font-size: 1.08rem;
    line-height: 1.3;
    margin: 0 0 .45rem;
}

.dmg-method-stage-detail p {
    color: var(--dmg-text) !important;
    font-size: .94rem;
    line-height: 1.52;
    margin: 0;
}

.dmg-method-notes {
    display: grid;
    grid-template-columns: 1fr;
    gap: .75rem;
}

.dmg-method-note {
    background: var(--dmg-soft);
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: 1rem;
}

.dmg-method-note h4 {
    color: var(--dmg-ink) !important;
    font-size: 1rem;
    margin: 0 0 .55rem;
}

.dmg-method-note p {
    color: var(--dmg-text) !important;
    font-size: .9rem;
    line-height: 1.58;
    margin: 0;
}

.dmg-method-note p + p {
    margin-top: .65rem;
}

.dmg-method-panel {
    background: var(--dmg-soft);
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: 1rem;
}

.dmg-method-panel h3 {
    color: var(--dmg-ink) !important;
    font-size: 1rem;
    margin: 0 0 .9rem;
}

.dmg-panel-intro {
    color: var(--dmg-muted) !important;
    font-size: .88rem;
    line-height: 1.5;
    margin: -.25rem 0 .8rem;
}

.dmg-domain-grid,
.dmg-use-modes {
    display: grid;
    gap: .65rem;
}

.dmg-domain-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.dmg-domain-pill,
.dmg-use-mode {
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .75rem;
    color: var(--dmg-text);
    font-size: .9rem;
    line-height: 1.45;
}

.dmg-domain-pill {
    width: 100%;
    min-height: 4.35rem;
    text-align: left;
    cursor: help;
    transition: border-color .16s ease, box-shadow .16s ease, min-height .16s ease;
}

.dmg-domain-pill strong {
    display: block;
    color: var(--dmg-ink);
    font-size: .9rem;
    line-height: 1.35;
}

.dmg-domain-pill span {
    display: block;
    max-height: 0;
    overflow: hidden;
    color: var(--dmg-text);
    opacity: 0;
    font-size: .84rem;
    line-height: 1.48;
    transition: max-height .18s ease, opacity .18s ease, margin-top .18s ease;
}

.dmg-domain-pill:hover,
.dmg-domain-pill:focus {
    border-color: rgba(7,152,139,.6);
    box-shadow: 0 6px 16px rgba(7,152,139,.12);
    outline: none;
}

.dmg-domain-pill:hover span,
.dmg-domain-pill:focus span {
    max-height: 8rem;
    opacity: 1;
    margin-top: .45rem;
}

.dmg-use-mode strong {
    display: block;
    color: var(--dmg-ink);
    margin-bottom: .25rem;
}

.dmg-app {
    display: grid;
    grid-template-columns: 340px minmax(0, 1fr);
    min-height: 760px;
    background: var(--dmg-soft);
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(15,23,42,.08);
}

.dmg-sidebar {
    background: #ffffff;
    border-right: 1px solid var(--dmg-line);
    padding: 1rem;
}

.dmg-sidebar-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    margin-bottom: .85rem;
}

.dmg-sidebar-head h3 {
    color: var(--dmg-ink) !important;
    font-size: 1rem;
    margin: 0;
}

.dmg-sidebar-intro {
    color: var(--dmg-text) !important;
    font-size: .86rem;
    line-height: 1.5;
    margin: -.25rem 0 .85rem;
}

.dmg-reset {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .38rem;
    min-height: 2.2rem;
    padding: .42rem .64rem;
    border: 1px solid var(--dmg-line);
    background: var(--dmg-soft);
    color: var(--dmg-text);
    border-radius: 8px;
    font-size: .82rem;
    font-weight: 800;
}

.dmg-reset:hover,
.dmg-reset:focus {
    border-color: rgba(7,152,139,.48);
    color: var(--dmg-teal);
}

.dmg-search {
    display: grid;
    gap: .35rem;
    margin-bottom: .9rem;
}

.dmg-search span {
    color: var(--dmg-muted);
    font-size: .76rem;
    text-transform: uppercase;
    font-weight: 800;
}

.dmg-search input {
    min-height: 2.85rem;
    width: 100%;
    border: 1px solid var(--dmg-line);
    background: #ffffff;
    color: var(--dmg-ink);
    border-radius: 8px;
    padding: .65rem .75rem;
    font-size: .9rem;
}

.dmg-search input:focus {
    outline: 3px solid rgba(7,152,139,.18);
    border-color: var(--dmg-teal);
}

.dmg-disruption-list {
    display: grid;
    gap: .65rem;
}

.dmg-disruption-option {
    width: 100%;
    border: 1px solid var(--dmg-line);
    background: #ffffff;
    color: var(--dmg-text);
    border-radius: 8px;
    padding: .85rem;
    text-align: left;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

.dmg-disruption-option:hover,
.dmg-disruption-option:focus {
    border-color: rgba(7,152,139,.54);
    box-shadow: 0 4px 14px rgba(7,152,139,.1);
}

.dmg-disruption-option.active {
    border-color: var(--dmg-teal);
    background: #f0fdfa;
    box-shadow: inset 3px 0 0 var(--dmg-teal);
}

.dmg-disruption-option strong {
    display: block;
    color: var(--dmg-ink);
    font-size: .94rem;
    line-height: 1.32;
    margin-bottom: .3rem;
}

.dmg-disruption-option span {
    display: block;
    color: var(--dmg-muted);
    font-size: .8rem;
    line-height: 1.42;
}

.dmg-workspace {
    min-width: 0;
    background: var(--dmg-soft);
}

.dmg-workspace-inner {
    display: grid;
    gap: 1rem;
    padding: 1rem;
}

.dmg-activation-header {
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: 1rem;
}

.dmg-header-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, .42fr);
    gap: 1rem;
    align-items: start;
}

.dmg-activation-header h3 {
    color: var(--dmg-ink) !important;
    font-size: 1.5rem;
    line-height: 1.22;
    margin: 0 0 .5rem;
}

.dmg-activation-header p {
    color: var(--dmg-text) !important;
    margin: 0;
    line-height: 1.56;
}

.dmg-pathway-subtitle {
    color: var(--dmg-ink) !important;
    font-weight: 800;
    margin-bottom: .65rem !important;
}

.dmg-pathway-description {
    max-width: 58rem;
    color: var(--dmg-text) !important;
    font-size: .95rem;
    line-height: 1.62 !important;
}

.dmg-trigger-box {
    background: #f8fafc;
    border: 1px solid var(--dmg-line);
    border-left: 3px solid var(--dmg-teal);
    border-radius: 8px;
    padding: .85rem;
}

.dmg-trigger-box strong,
.dmg-meta-item strong {
    display: block;
    color: var(--dmg-muted);
    font-size: .74rem;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: .28rem;
}

.dmg-trigger-box span,
.dmg-meta-item span {
    display: block;
    color: var(--dmg-ink);
    font-size: .9rem;
    line-height: 1.45;
}

.dmg-meta-stack {
    display: grid;
    gap: .6rem;
}

.dmg-meta-item {
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .75rem;
}

.dmg-mode-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .55rem;
}

.dmg-mode-tab,
.dmg-stage-tab {
    border: 1px solid transparent;
    background: transparent;
    color: var(--dmg-text);
    border-radius: 8px;
    font-weight: 800;
    line-height: 1.2;
}

.dmg-mode-tab {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    min-height: 2.45rem;
    padding: .55rem .75rem;
}

.dmg-mode-tab i {
    color: currentColor !important;
}

.dmg-mode-tab:hover,
.dmg-mode-tab:focus,
.dmg-stage-tab:hover,
.dmg-stage-tab:focus {
    background: var(--dmg-soft);
    color: var(--dmg-teal);
}

.dmg-mode-tab.active,
.dmg-stage-tab.active {
    background: var(--dmg-teal);
    color: #ffffff;
    border-color: var(--dmg-teal);
}

.dmg-stage-tabs {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: .5rem;
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .55rem;
}

.dmg-stage-tab {
    min-height: 4.35rem;
    padding: .55rem;
    text-align: left;
}

.dmg-stage-tab span {
    display: inline-flex;
    width: 1.4rem;
    height: 1.4rem;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid currentColor;
    font-size: .75rem;
    margin-bottom: .35rem;
}

.dmg-stage-tab strong {
    display: block;
    font-size: .78rem;
}

.dmg-content-grid {
    display: grid;
    grid-template-columns: minmax(0, .98fr) minmax(320px, .72fr);
    gap: 1rem;
}

.dmg-panel {
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: 1rem;
}

.dmg-panel h4 {
    color: var(--dmg-ink) !important;
    font-size: 1.06rem;
    margin: 0 0 .75rem;
}

.dmg-panel p {
    color: var(--dmg-text) !important;
    font-size: .94rem;
    line-height: 1.6;
    margin: 0 0 .9rem;
}

.dmg-panel p:last-child {
    margin-bottom: 0;
}

.dmg-subsection,
.dmg-subsection-wrap {
    margin-top: .85rem;
}

.dmg-subsection {
    border-top: 1px solid var(--dmg-line);
    padding-top: .85rem;
}

.dmg-subsection h4 {
    color: var(--dmg-ink) !important;
    font-size: .98rem;
    margin: 0 0 .65rem;
}

.dmg-path {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
}

.dmg-path-chip {
    display: inline-flex;
    align-items: center;
    min-height: 2.35rem;
    border: 1px solid #cbd5e1;
    background: #ffffff;
    color: var(--dmg-ink);
    border-radius: 8px;
    padding: .48rem .62rem;
    font-size: .84rem;
    font-weight: 800;
}

.dmg-path-arrow {
    color: var(--dmg-muted);
    font-weight: 800;
}

.dmg-entry-point-intro {
    color: var(--dmg-text) !important;
    font-size: .88rem;
    line-height: 1.55;
    margin: -.1rem 0 .7rem;
    overflow-wrap: anywhere;
}

.dmg-start-key-grid {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.dmg-start-key {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    border: 1px solid rgba(7,152,139,.35);
    color: #075e57;
    background: #f0fdfa;
    border-radius: 8px;
    padding: .35rem .55rem;
    font-size: .8rem;
    font-weight: 800;
}

.dmg-decision-panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.dmg-decision-card {
    display: grid;
    gap: .55rem;
    align-content: start;
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .85rem;
}

.dmg-decision-card > span {
    display: block;
    color: var(--dmg-muted);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.dmg-decision-card p {
    margin: 0;
}

.dmg-decision-prompt {
    color: var(--dmg-text) !important;
    font-size: .86rem;
    line-height: 1.5;
    margin: 0;
    overflow-wrap: anywhere;
}

.dmg-decision-field {
    display: grid;
    gap: .35rem;
}

.dmg-decision-field input,
.dmg-decision-field textarea {
    width: 100%;
    border: 1px solid rgba(7,152,139,.36);
    border-radius: 8px;
    background: #f0fdfa;
    color: var(--dmg-ink);
    padding: .65rem .7rem;
    font-size: .9rem;
    line-height: 1.45;
}

.dmg-decision-field input::placeholder,
.dmg-decision-field textarea::placeholder {
    color: var(--dmg-muted);
    opacity: 1;
}

.dmg-decision-field textarea {
    min-height: 5.5rem;
    resize: vertical;
}

.dmg-decision-field input:focus,
.dmg-decision-field textarea:focus {
    outline: 3px solid rgba(7,152,139,.18);
    border-color: var(--dmg-teal);
    background: #ffffff;
}

.dmg-uncertainty-groups {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.dmg-uncertainty-group {
    display: grid;
    gap: .55rem;
}

.dmg-uncertainty-group > strong {
    color: var(--dmg-ink);
    font-size: .9rem;
}

.dmg-list {
    display: grid;
    gap: .55rem;
    padding: 0;
    margin: 0;
    list-style: none;
}

.dmg-list li {
    color: var(--dmg-text) !important;
    background: var(--dmg-soft);
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .7rem .75rem;
    font-size: .91rem;
    line-height: 1.5;
}

.dmg-muted-note {
    color: var(--dmg-muted) !important;
    font-size: .88rem !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

.dmg-status-tag {
    display: inline-flex;
    align-items: center;
    min-height: 1.35rem;
    margin-right: .45rem;
    padding: .1rem .38rem;
    border: 1px solid var(--dmg-line);
    border-radius: 999px;
    background: #ffffff;
    color: var(--dmg-muted);
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.dmg-state-summary {
    display: flex;
    flex-direction: column;
    gap: .45rem;
}

.dmg-panel .dmg-state-summary {
    display: flex !important;
    flex-direction: column !important;
}

.dmg-state-count {
    display: grid;
    grid-template-columns: 2.35rem minmax(0, 1fr);
    align-items: center;
    gap: .6rem;
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .55rem .65rem;
    min-height: 2.75rem;
    width: 100%;
}

.dmg-state-count strong {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--dmg-ink);
    font-size: 1rem;
    min-width: 2rem;
    min-height: 2rem;
    background: var(--dmg-soft);
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
}

.dmg-state-count span {
    display: block;
    color: var(--dmg-muted);
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.dmg-summary-action {
    display: grid;
    gap: .45rem;
    margin-top: .85rem;
    padding-top: .85rem;
    border-top: 1px solid var(--dmg-line);
}

.dmg-summary-action span {
    color: var(--dmg-muted);
    font-size: .78rem;
    line-height: 1.45;
}

.dmg-inline-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    min-height: 2.45rem;
    width: fit-content;
    border: 1px solid rgba(7,152,139,.36);
    background: #f0fdfa;
    color: var(--dmg-teal);
    border-radius: 8px;
    padding: .55rem .75rem;
    font-size: .84rem;
    font-weight: 900;
}

.dmg-inline-action:hover,
.dmg-inline-action:focus {
    border-color: var(--dmg-teal);
    background: #e3f8f5;
}

.dmg-data-section {
    display: grid;
    gap: .75rem;
}

.dmg-data-group {
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    overflow: hidden;
    background: #ffffff;
}

.dmg-data-group-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .75rem;
    align-items: center;
    padding: .85rem;
    background: #f8fafc;
    border-bottom: 1px solid var(--dmg-line);
}

.dmg-data-group-head h4 {
    margin: 0;
}

.dmg-data-group-head span {
    color: var(--dmg-muted);
    font-size: .78rem;
    font-weight: 800;
}

.dmg-data-use {
    padding: .85rem;
    border-bottom: 1px solid var(--dmg-line);
    background: #ffffff;
}

.dmg-data-use p {
    color: var(--dmg-text) !important;
    font-size: .94rem;
    line-height: 1.58;
    margin: 0;
}

.dmg-data-row {
    display: grid;
    grid-template-columns: minmax(190px, .68fr) minmax(260px, 1fr);
    gap: .8rem;
    padding: .75rem .85rem;
    border-top: 1px solid var(--dmg-line);
}

.dmg-data-row:first-of-type {
    border-top: 0;
}

.dmg-data-label {
    color: var(--dmg-ink);
    font-size: .91rem;
    font-weight: 750;
    line-height: 1.45;
}

.dmg-status-controls {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.dmg-status-button {
    border: 1px solid var(--dmg-line);
    background: #ffffff;
    color: var(--dmg-text);
    border-radius: 8px;
    min-height: 2rem;
    padding: .34rem .5rem;
    font-size: .72rem;
    font-weight: 850;
}

.dmg-status-button:hover,
.dmg-status-button:focus {
    border-color: rgba(7,152,139,.46);
    color: var(--dmg-teal);
}

.dmg-status-button.active[data-status="verified"] {
    background: #ecfdf3;
    color: #067647;
    border-color: #75e0a7;
}

.dmg-status-button.active[data-status="current"] {
    background: #eff8ff;
    color: #175cd3;
    border-color: #84caff;
}

.dmg-status-button.active[data-status="assumed"] {
    background: #fffaeb;
    color: var(--dmg-amber);
    border-color: #fedf89;
}

.dmg-status-button.active[data-status="missing"] {
    background: #fef3f2;
    color: var(--dmg-red);
    border-color: #fda29b;
}

.dmg-status-button.active[data-status="conflicting"] {
    background: #fff1f3;
    color: #c01048;
    border-color: #fda4af;
}

.dmg-guidance-block,
.dmg-guidance-use {
    display: grid;
    gap: .65rem;
}

.dmg-guidance-use {
    margin-top: .85rem;
    padding: .85rem;
    background: #f8fafc;
    border: 1px solid var(--dmg-line);
    border-left: 3px solid var(--dmg-teal);
    border-radius: 8px;
}

.dmg-guidance-block h5,
.dmg-guidance-use h5 {
    color: var(--dmg-ink) !important;
    font-size: .88rem;
    font-weight: 900;
    margin: 0;
}

.dmg-guidance-use p {
    margin: 0 !important;
}

.dmg-guidance-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.dmg-full {
    grid-column: 1 / -1;
}

.dmg-summary-panel {
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: 1rem;
}

.dmg-summary-head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: start;
    padding-bottom: .85rem;
    border-bottom: 1px solid var(--dmg-line);
    margin-bottom: .85rem;
}

.dmg-summary-head h4 {
    color: var(--dmg-ink) !important;
    font-size: 1.08rem;
    margin: 0 0 .35rem;
}

.dmg-summary-head p {
    color: var(--dmg-muted) !important;
    font-size: .86rem;
    line-height: 1.5;
    margin: 0;
}

.dmg-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.dmg-summary-block {
    background: #f8fafc;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .85rem;
}

.dmg-summary-block h5 {
    color: var(--dmg-ink) !important;
    font-size: .9rem;
    font-weight: 900;
    margin: 0 0 .55rem;
}

.dmg-summary-block p {
    color: var(--dmg-text) !important;
    font-size: .88rem;
    line-height: 1.5;
    margin: 0 0 .45rem;
}

.dmg-summary-block p:last-child {
    margin-bottom: 0;
}

.dmg-compact-list {
    display: grid;
    gap: .35rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.dmg-compact-list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .45rem .55rem;
    color: var(--dmg-text);
    font-size: .84rem;
}

.dmg-compact-list strong {
    color: var(--dmg-ink);
}

.dmg-activation-table {
    display: grid;
    gap: .75rem;
}

.dmg-activation-step {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr) minmax(220px, .6fr);
    gap: .8rem;
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: .85rem;
}

.dmg-activation-step strong {
    color: var(--dmg-ink);
    font-size: .92rem;
}

.dmg-activation-step p,
.dmg-activation-step span {
    color: var(--dmg-text) !important;
    font-size: .9rem;
    line-height: 1.52;
    margin: 0;
}

.dmg-activation-step span {
    display: block;
    color: var(--dmg-muted) !important;
}

.dmg-escalation {
    border: 1px solid #fda29b;
    border-left: 3px solid var(--dmg-red);
    background: #fffbfa;
    border-radius: 8px;
    padding: 1rem;
}

.dmg-escalation h4 {
    color: var(--dmg-red) !important;
}

.dmg-empty-state {
    background: #ffffff;
    border: 1px solid var(--dmg-line);
    border-radius: 8px;
    padding: 1.4rem;
    margin: 1rem;
}

.dmg-empty-state h3 {
    color: var(--dmg-ink) !important;
    font-size: 1.1rem;
    margin: 0 0 .5rem;
}

.dmg-empty-state p {
    color: var(--dmg-text) !important;
    margin: 0;
}

@media (max-width: 1200px) {
    .dmg-hero-grid,
    .dmg-content-grid,
    .dmg-header-grid {
        grid-template-columns: 1fr;
    }

    .dmg-method-notes {
        grid-template-columns: 1fr;
    }

    .dmg-app {
        grid-template-columns: 300px minmax(0, 1fr);
    }

    .dmg-stage-tabs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .dmg-activation-step {
        grid-template-columns: 180px minmax(0, 1fr);
    }

    .dmg-activation-step span {
        grid-column: 2;
    }
}

@media (max-width: 980px) {
    .dmg-hero {
        padding: 7.5rem 0 3rem;
    }

    .dmg-hero h1 {
        font-size: 2.7rem;
    }

    .dmg-method-grid,
    .dmg-app,
    .dmg-guidance-grid,
    .dmg-decision-panel,
    .dmg-uncertainty-groups,
    .dmg-summary-grid {
        grid-template-columns: 1fr;
    }

    .dmg-sidebar {
        border-right: 0;
        border-bottom: 1px solid var(--dmg-line);
    }

    .dmg-disruption-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dmg-data-row {
        grid-template-columns: 1fr;
    }

    .dmg-method-chevron {
        cursor: pointer;
    }

    .dmg-summary-head {
        flex-direction: column;
    }

    .dmg-workspace-head {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 700px) {
    .dmg-hero {
        padding: 6.5rem 0 2.5rem;
    }

    .dmg-hero h1 {
        font-size: 2.15rem;
    }

    .dmg-lede {
        font-size: 1.05rem;
    }

    .dmg-disruption-list,
    .dmg-stage-tabs,
    .dmg-domain-grid,
    .dmg-method-chevron-row,
    .dmg-method-notes {
        grid-template-columns: 1fr;
    }

    .dmg-method-chevron-row {
        overflow-x: visible;
        gap: .55rem;
    }

    .dmg-chevron-label,
    .dmg-method-chevron:first-child .dmg-chevron-label {
        background: var(--dmg-chevron-fill);
        border: 1px solid var(--dmg-line);
        border-radius: 8px;
    }

    .dmg-chevron-shape {
        display: none;
    }

    .dmg-domain-pill span {
        max-height: none;
        opacity: 1;
        margin-top: .45rem;
    }

    .dmg-workspace-inner,
    .dmg-sidebar {
        padding: .75rem;
    }

    .dmg-activation-step {
        grid-template-columns: 1fr;
    }

    .dmg-activation-step span {
        grid-column: auto;
    }

    .dmg-mode-tabs {
        display: grid;
        grid-template-columns: 1fr;
    }

    .dmg-workspace-help-button {
        width: 100%;
        white-space: normal;
    }

    .dmg-workspace-help-panel {
        width: 100%;
        height: 100dvh;
    }

    .dmg-workspace-help-header {
        padding: 1.35rem 1.2rem 1rem;
    }

    .dmg-workspace-help-body {
        padding: 1.1rem 1.2rem 1.35rem;
    }

    .dmg-workspace-help-steps li {
        grid-template-columns: 1.8rem minmax(0, 1fr);
        gap: .65rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dmg-button,
    .dmg-disruption-option,
    .dmg-mode-tab,
    .dmg-stage-tab,
    .dmg-status-button,
    .dmg-workspace-help-backdrop,
    .dmg-workspace-help-panel,
    .dmg-workspace-help-panel::before {
        transition: none !important;
    }
}
