.dilemma-matrix { --matrix-line-color: #aaa; --matrix-line-width: 1.5px; width: 640px; margin: 0 auto; transform: translateX(-100px); color: #111; } .matrix-role-headings, .matrix-body { display: grid; grid-template-columns: 100px 80px 210px 210px; column-gap: 10px; } .matrix-role-headings { align-items: end; margin-bottom: 5px; font-size: .92em; font-weight: 600; text-align: center; } .column-player-heading { grid-column: 3 / 5; } .row-player-heading { grid-column: 1; grid-row: 1 / 4; align-self: start; height: 208px; margin-top: 49px; display: flex; align-items: center; justify-content: center; writing-mode: vertical-rl; transform: rotate(180deg); font-size: .92em; font-weight: 600; text-align: center; position: relative; left: 35px; } .row-labels, .choice-column { display: grid; } .row-labels { grid-column: 2 !important; grid-template-rows: 49px 104px 104px; position: relative; z-index: 2; background: transparent; } .choice-column { position: relative; z-index: 1; grid-template-rows: 46px 104px 104px; box-sizing: border-box; border: 3px solid transparent; border-radius: 0; overflow: hidden; background: white; } .choice-column.choice-left { grid-column: 3 !important; } .choice-column.choice-right { grid-column: 4 !important; } .choice-column.selected { z-index: 3; border-color: #c44d56; } .row-choice span { display: inline-block; transform: rotate(-90deg); } .column-choice, .row-choice, .payoff-cell { display: flex; align-items: center; justify-content: center; box-sizing: border-box; } .column-choice, .row-choice { background: transparent; font-size: 1.1em; font-weight: 650; } .row-choice { width: 60px; justify-self: end; } .top-row-choice { position: relative; } .top-row-choice::after { content: ""; position: absolute; top: 100%; right: 0; left: 0; border-top: var(--matrix-line-width) solid var(--matrix-line-color); } .bottom-row-choice { border-radius: 0; } .payoff-cell { background: white; } .column-choice + .payoff-cell { border-top: var(--matrix-line-width) solid var(--matrix-line-color); } .choice-column > .payoff-cell + .payoff-cell { border-top: var(--matrix-line-width) solid var(--matrix-line-color); border-bottom: var(--matrix-line-width) solid var(--matrix-line-color); } .payoff-pair { display: flex; justify-content: space-evenly; width: 100%; } .payoff-item { display: flex; min-width: 72px; flex-direction: column; align-items: center; line-height: 1.15; } .payoff-item strong { font-size: 1.28em; } .self-payoff { color: #F28C6F; } .other-payoff { color: #43B7A8; }