.ct-ratio-picker { > ul + div { margin-top: 20px; } [class*="ct-ratio"] { display: flex; flex-wrap: wrap; align-items: center; } // reversed &.reversed button span { transform: rotate(-90deg); } .ct-notification { width: 100%; padding: 0; margin: 0; } } // predefined ratio .ct-ratio-predefined { ul { flex: 1; li { font-size: 12px; font-weight: 500; line-height: 1; letter-spacing: 0.05em; } } // rotate button button { display: flex; align-items: center; justify-content: center; padding: 0; margin-inline-start: 12px; appearance: none; border: none; cursor: pointer; background: transparent; &:focus { outline: none; } span { display: flex; align-items: center; justify-content: center; position: relative; width: 30px; height: 30px; transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1); &:before, &:after { position: absolute; content: ''; box-sizing: border-box; transition: z-index 0.15s cubic-bezier(0.4, 0, 0.2, 1), background 0.15s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.15s cubic-bezier(0.4, 0, 0.2, 1); } &:before { width: 13px; height: 25px; border-radius: 1px; background: transparent; border: 1px dashed rgba(114, 119, 124, 0.5); } &:after { width: 25px; height: 13px; margin: auto; border-radius: 2px; border: 1px dashed transparent; background: rgba(156, 163, 169, 1); } } &:hover { span { &:before { z-index: 2; border-radius: 2px; border-color: transparent; background: var(--ui-accent-color); } &:after { border-radius: 1px; background: transparent; border: 1px dashed rgba(114, 119, 124, 0.5); } } } } } // custom ratio .ct-ratio-custom { justify-content: space-between; .ct-option-input { width: 45%; } span { width: 10%; text-align: center; font-weight: 700; } .ct-notification { margin-top: 10px; } } // ratio modal .ct-ratio-preview { display: flex; align-items: center; justify-content: center; height: 30px; min-width: 75px; padding: 0 10px; border-radius: 3px; cursor: pointer; font-size: 12px; line-height: normal; box-sizing: border-box; background: var(--backgroundColor, #fff); border: 1px solid var(--optionBorderColor, #ddd); .ct-ratio-key { margin-inline-end: 8px; padding-inline-end: 8px; border-inline-end: 1px solid var(--optionBorderColor, #ccc); } .ct-width-key { margin-inline-start: 8px; padding-inline-start: 8px; border-inline-start: 1px solid var(--optionBorderColor, #ccc); } &:hover { border-color: var(--ui-accent-color); } } .ct-ratio-modal { position: absolute; z-index: 20; top: 19px; width: 295px; margin-bottom: 30px; background: #fff; border-radius: 6px; transform-origin: center top; box-shadow: 0 15px 15px rgba(0, 0, 0, 0.1); &:before { position: absolute; content: ''; top: -7px; inset-inline-end: 28px; width: 0; height: 0; border-style: solid; border-width: 0 6px 7px 6px; border-color: transparent transparent #ffffff transparent; } .ct-ratio-content { padding: 25px 20px; .ct-radio-option { padding-bottom: 20px; border-bottom: 1px dashed #eee; } } } // inner options .ct-ratio-content { .ct-control { margin-top: 20px; padding-top: 20px; padding-inline: 0; border-top: 1px solid var(--optionBorderColor); &:last-child { padding-bottom: 0; } } }