.instance.lobby { align-content: center; } .instance { overflow: hidden; display: grid; grid-template-columns: min-content minmax(min-content, 1fr); grid-template-rows: min-content 1fr; grid-template-areas: "vbox info" "constructs constructs"; .info { h2 { text-transform: uppercase; } svg { display: inline; height: 1em; } figure { display: inline; height: 0.5em; svg { margin-right: 0.5em; } } figcaption { font-size: 1em; display: inline-block; vertical-align: middle; } margin: 0 0 0 1em; grid-area: info; display: grid; grid-template-rows: 13em min-content; grid-template-areas: "item" "combos"; .combos { display: grid; grid-template-columns: repeat(6, 1fr); align-content: center; .table-button { display: grid; text-align: center; align-content: center; border-bottom: 2px solid #222; grid-template-areas: "item" "ingr"; cursor: pointer; &:hover { color: whitesmoke; background-color: @gray; } .item { border-top: 2px solid #222; border-bottom: 2px solid #222; flex: 1; grid-area: item; font-weight: bold; } div { border-right: 2px solid #222; svg { vertical-align: middle; } } &:first-child { div { border-left: 2px solid #222; } } } } } .constructs { grid-area: constructs; } } @keyframes action { 0% { color: palegoldenrod; } 100% { color: whitesmoke; } } /* CONSTRUCT LIST */ .instance-construct { flex: 1; display: grid; grid-template-rows: min-content min-content min-content 1fr min-content; grid-template-areas: "name " "skills " "specs " "avatar " "stats "; /*padding: 0.5em;*/ border: 2px solid #222; border-left-width: 0; &:first-child { margin-left: 0; border-left-width: 1px; } } .construct-list { grid-area: constructs; display: flex; button { &.highlight { color: black; background: @white; // border: 1px solid @white; (this bangs around the vbox) // overwrite the classes on white svg elements svg { stroke-width: 0.75em; } .white { stroke: black; } } } .name { grid-area: name; margin-bottom: 0.5em; text-align: center; } .skills { grid-area: skills; padding: 0 0.5em; margin-bottom: 0.75em; z-index: 2; display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 0 0.5em; button { height: 3em; } label { display: flex; } } .specs { grid-area: specs; padding: 0 0.5em; margin-bottom: 0.75em; z-index: 2; display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 0 0.5em; button { padding: 0.25em 0; } figure { flex: 1; align-items: center; text-align: center; } figcaption { // font-size: 75%; line-height: initial; } label { display: flex; } } .stats { grid-area: stats; display: flex; flex-flow: row; flex: 1; border-width: 0px; text-align: center; figcaption { // font-size: 75%; } // give speed some space div:nth-child(4n) { margin: 0 1em; } div { flex: 1; } } button { margin: 0; &.empty { border-style: dashed; } } } .label { flex: 1 0 100%; } .equipping, .receiving { animation: eq 0.75s cubic-bezier(0, 0, 1, 1) 0s infinite alternate; } @keyframes eq { from { background: @black; } to { background: @gray; } } .thresholds { display: flex; flex-flow: row; } .thresholds svg { stroke-width: 5px; } .thresholds hr { margin: 1em 0; } .spec-goal { margin-top: 0.5em; div { display: flex; margin: 0 1em 1em 0; } .bonus { justify-content: center; } } .thresholds figure svg { margin-right: 0.25em; height: 1.5em; } .thresholds .unmet { opacity: 0.5; } .faceoff { text-align: center; overflow: hidden; display: grid; grid-template-rows: 1fr 0.5fr 1fr; grid-template-areas: "opponent" "text" "player"; h1 { text-align: center; } button { grid-area: ready; justify-self: center; margin-top: 1em; } .winner { color: @yellow; font-weight: bold; } .team { display: grid; grid-template-columns: repeat(auto-fill, minmax(min-content, 33%)); max-height: 100%; } } .faceoff-text { grid-area: text; text-transform: uppercase; letter-spacing: 1em; font-weight: bold; display: flex; flex-flow: column; justify-content: center; color: @black; animation: faceoff 4s ease-in-out 0s 2 alternate; &.winner { animation: win 2s ease-in-out 0s 1; } .cancelled { color: white; } } .tutorial { button { width: 100%; } button.focus { animation: co 0.75s cubic-bezier(0, 0, 1, 1) 0s infinite alternate; } } @keyframes faceoff { from { color: @black; } to { color: @white; } } @keyframes win { from { color: @black; } to { color: @yellow; } }