.Dialog { position: fixed; box-sizing: border-box; background: none; border: 0; inset: 0; display: grid; padding: 0; place-items: center; min-height: 100vh; min-width: 100vw; overflow-y: auto; color: inherit; z-index: 40; .DialogContent { $multiplier: 4; // animation: $duration-modal-open cubic-bezier(0.16, 1, 0.3, 1) 0s 1 normal // none running openModalDesktop; background: var(--dialog-bg); border-radius: $card-corner; box-sizing: border-box; border: 0.5px solid rgba(0, 0, 0, 0.18); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18); display: flex; flex-direction: column; gap: $unit * $multiplier; height: auto; min-width: $unit * 48; // min-height: $unit-12x; overflow-y: scroll; // height: 80vh; max-height: 80vh; min-width: 580px; max-width: 42vw; // padding: $unit * $multiplier; position: relative; a:hover { text-decoration: underline; } @include breakpoint(phone) { // animation: slideUp; // animation-duration: 3s; // animation-fill-mode: forwards; // animation-play-state: running; // animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); border-bottom-left-radius: 0; border-bottom-right-radius: 0; min-width: inherit; min-height: 90vh; transform: initial; left: 0; right: 0; top: 5vh; height: auto; width: 100%; } .Scrollable { overflow-y: auto; } .DialogHeader { background: var(--dialog-bg); box-shadow: 0 2px 8px rgba(0, 0, 0, 0); border-bottom: 1px solid rgba(0, 0, 0, 0); display: flex; align-items: center; gap: $unit-2x; justify-content: space-between; padding: $unit-4x ($unit * $multiplier); position: sticky; top: 0; z-index: 10; &.Short { padding-top: $unit-3x; padding-bottom: $unit-3x; } .left { display: flex; flex-direction: column; flex-grow: 1; gap: $unit; p { font-size: $font-small; line-height: 1.25; } } .DialogImage { border-radius: $input-corner; width: $unit-10x; } } .DialogClose { background: transparent; border: none; &:hover { cursor: pointer; svg { fill: $error; } } svg { fill: $grey-50; float: right; height: 24px; width: 24px; } } .DialogTitle { color: var(--text-primary); font-size: $font-xlarge; h1 { color: var(--text-primary); font-size: $font-xlarge; font-weight: $medium; text-align: left; } } .DialogTop { display: flex; flex-direction: column; flex-grow: 1; gap: calc($unit / 2); .SubTitle { color: var(--text-secondary); font-size: $font-small; font-weight: $medium; } } .DialogDescription { color: var(--text-secondary); flex-grow: 1; } .DialogFooter { align-items: flex-end; background: var(--dialog-bg); bottom: 0; box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.16); border-top: 1px solid rgba(0, 0, 0, 0.24); display: flex; flex-direction: column; padding: ($unit * 1.5) ($unit * $multiplier) $unit-3x; position: sticky; .Buttons { display: flex; gap: $unit; &.Span { width: 100%; .Button { width: 100%; } } } } .actions { display: flex; justify-content: flex-end; width: 100%; } &.Conflict { $weapon-diameter: 14rem; .Content { display: flex; flex-direction: column; gap: $unit-4x; padding: $unit-4x $unit-4x $unit-2x $unit-4x; & > p { font-size: $font-regular; line-height: 1.4; strong { font-weight: $bold; } &:lang(ja) { line-height: 1.4; } } } .weapon, .character { display: flex; flex-direction: column; gap: $unit; text-align: center; width: $weapon-diameter; font-weight: $medium; img { border-radius: 1rem; width: $weapon-diameter; height: auto; } span { line-height: 1.3; } } .Diagram { display: grid; grid-template-columns: 1fr auto 1fr; align-items: flex-start; &.CharacterDiagram { align-items: center; } ul { align-items: center; display: flex; flex-direction: column; gap: $unit-2x; } .wrapper { display: flex; justify-content: center; width: 100%; } .arrow { align-items: center; color: $grey-55; display: flex; font-size: 4rem; text-align: center; height: $weapon-diameter; justify-content: center; } } footer { display: flex; flex-direction: row; gap: $unit; .Button { font-size: $font-regular; padding: ($unit * 1.5) ($unit * 2); width: 100%; &.btn-disabled { background: $grey-90; color: $grey-70; cursor: not-allowed; } &:not(.btn-disabled) { background: $grey-90; color: $grey-50; &:hover { background: $grey-80; } } } } } } }