qcast-front/src/styles/_modal.scss
2024-09-30 09:45:56 +09:00

620 lines
9.6 KiB
SCSS

$pop-color: #fff;
$pop-normal-weight: 400;
$pop-bold-weight: 500;
$pop-normal-size: 12px;
$alert-color: #101010;
@keyframes mountpop {
from {
opacity: 0;
scale: 0.95;
}
to {
opacity: 1;
scale: 1;
}
}
@keyframes unmountpop {
from {
opacity: 1;
scale: 1;
}
to {
opacity: 0;
scale: 0.95;
}
}
.modal-pop-wrap {
position: fixed;
top: 200px;
right: 100px;
width: 100%;
min-width: 300px;
height: -webkit-fit-content;
height: -moz-fit-content;
height: fit-content;
border: 1px solid #000;
border-radius: 4px;
background-color: #272727;
z-index: 9999999;
overflow: hidden;
&.r {
width: 400px;
}
&.sm {
width: 580px;
}
&.ssm {
width: 380px;
}
&.xm {
width: 300px;
}
&.l {
width: 800px;
}
&.mount {
animation: mountpop .17s ease-in-out forwards;
}
&.unmount {
animation: unmountpop .17s ease-in-out forwards;
}
&.alert {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: transparent;
border: none;
.modal-head {
background-color: transparent;
padding: 0 0 8px;
.modal-close {
width: 20px;
height: 20px;
background: url(../../public/static/images/canvas/alert_close.svg) no-repeat center;
}
}
.modal-body {
background-color: #fff;
padding: 22px;
border-radius: 4px;
border: 1px solid #101010;
color: $alert-color;
.alert-title {
font-size: 13px;
font-weight: 700;
color: $alert-color;
margin-bottom: 15px;
}
}
}
}
.modal-head {
display: flex;
align-items: center;
padding: 10px 24px;
background-color: #000;
h1.title {
font-size: 13px;
color: $pop-color;
font-weight: 700;
}
.modal-close {
margin-left: auto;
color: $pop-color;
text-indent: -999999999px;
width: 10px;
height: 10px;
background: url(../../public/static/images/canvas/modal_close.svg) no-repeat center;
}
}
.modal-body {
padding: 24px;
.modal-btn-wrap {
display: flex;
align-items: center;
gap: 5px;
button {
flex: 1;
}
}
.modal-check-btn-wrap {
margin-top: 15px;
.check-wrap-title {
font-size: $pop-normal-size;
color: $pop-color;
font-weight: 600;
&.light {
font-weight: $pop-normal-weight;
}
}
.flex-check-box {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 15px;
&.for2 {
justify-content: flex-end;
button {
width: calc(50% - 5px);
}
&.btn {
gap: 5px;
button {
width: calc(50% - 2.5px);
}
}
}
&.for-line {
button {
flex: 1;
}
}
}
}
.outer-line-wrap {
border-top: 1px solid #3C3C3C;
margin-top: 10px;
padding-top: 15px;
margin-bottom: 15px;
> div {
margin-bottom: 15px;
&:last-child {
margin-bottom: 0;
}
}
}
.modal-guide {
display: block;
font-size: $pop-normal-size;
color: $alert-color;
font-weight: $pop-normal-weight;
}
}
.adsorption-point {
display: flex;
align-items: center;
background-color: #3A3A3A;
border-radius: 3px;
padding-left: 11px;
overflow: hidden;
transition: all 0.17s ease-in-out;
span {
font-size: $pop-normal-size;
color: #898989;
}
i {
display: flex;
align-items: center;
padding: 0 7px;
margin-left: auto;
height: 100%;
font-size: 13px;
color: #898989;
}
&.act {
i {
color: $pop-color;
background-color: #1083E3;
}
}
}
// grid-option
.grid-check-form {
display: flex;
align-items: center;
gap: 15px;
padding-bottom: 15px;
border-bottom: 1px solid #3C3C3C;
}
.grid-option-wrap {
padding: 15px 0;
border-bottom: 1px solid #3C3C3C;
.grid-option-box {
display: flex;
align-items: center;
background-color: #3D3D3D;
border-radius: 2px;
padding: 10px;
gap: 20px;
margin-bottom: 5px;
.grid-input-form {
display: flex;
align-items: center;
span {
flex: none;
font-size: $pop-normal-size;
color: $pop-color;
font-weight: $pop-bold-weight;
}
.input-grid {
width: 54px;
input {
width: 100%;
}
}
}
&:last-child {
margin-bottom: 0;
}
}
}
.grid-select {
flex: 1;
.sort-select {
width: 100%;
background-color: #313131;
}
}
.grid-btn-wrap {
padding-top: 15px;
text-align: right;
button {
padding: 0 20px;
}
}
// grid copy
.grid-option-tit {
font-size: $pop-normal-size;
color: $pop-color;
font-weight: $pop-normal-weight;
padding-bottom: 15px;
border-bottom: 1px solid #3C3C3C;
}
.grid-direction {
display: flex;
align-items: center;
gap: 5px;
flex: 1;
}
.direction {
width: 22px;
height: 22px;
background-color: #757575;
background-image: url(../../public/static/images/canvas/grid_option_arr.svg);
background-repeat: no-repeat;
background-position: center;
background-size: 16px 15px;
border-radius: 50%;
transition: all .15s ease-in-out;
opacity: 0.6;
&.down {
transform: rotate(180deg);
}
&.left {
transform: rotate(-90deg);
}
&.right {
transform: rotate(90deg);
}
&:hover,
&.act {
opacity: 1;
}
}
// grid-move
.move-form {
p {
font-size: $pop-normal-size;
color: $pop-color;
font-weight: $pop-bold-weight;
}
}
.input-move-wrap {
display: flex;
align-items: center;
gap: 5px;
span {
color: $pop-color;
font-size: $pop-normal-size;
}
.input-move {
width: 130px;
input {
width: 100%;
}
}
}
.direction-move-wrap {
flex: none;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 10px;
}
// 배치면 초기 설정
.placement-table {
table {
table-layout: fixed;
tr {
th {
display: flex;
align-items: center;
font-size: $pop-normal-size;
color: $pop-color;
font-weight: $pop-bold-weight;
padding: 18px 0;
border-bottom: 1px solid #424242;
}
td {
font-size: $pop-normal-size;
color: $pop-color;
border-bottom: 1px solid #424242;
padding-left: 20px;
}
&:first-child {
td,
th {
padding-top: 0;
}
}
}
}
.tooltip {
position: relative;
display: block;
width: 15px;
height: 15px;
margin-left: 5px;
background: url(../../public/static/images/canvas/pop_tip.svg) no-repeat center;
background-size: cover;
}
&.light {
padding: 0;
th, td {
color: $alert-color;
border-bottom: none;
border-top: 1px solid #EFEFEF;
}
th {
padding: 14px 0;
}
tr {
&:first-child {
td,
th {
padding-top: 14px;
}
}
&:last-child {
td,
th {
padding-bottom: 0px;
}
}
}
}
}
.pop-form-radio {
display: flex;
align-items: center;
gap: 10px;
}
.placement-option {
display: flex;
align-items: center;
gap: 20px;
}
.select-wrap {
div {
width: 100%;
}
}
.flex-ment {
display: flex;
align-items: center;
gap: 5px;
span {
font-size: $pop-normal-size;
color: $pop-color;
font-weight: $pop-normal-weight;
}
}
// 외벽선 그리기
.outline-wrap {
padding: 24px 0;
border-bottom: 1px solid #424242;
.outline-inner {
display: flex;
align-items: center;
margin-bottom: 14px;
&:last-child {
margin-bottom: 0;
}
}
}
.outline-form {
width: 50%;
display: flex;
align-items: center;
margin-right: 15px;
span {
width: 60px;
flex: none;
font-size: $pop-normal-size;
font-weight: $pop-bold-weight;
color: $pop-color;
margin-right: 10px;
}
.reset-btn {
flex: none;
width: 30px;
height: 30px;
background: transparent;
border: 1px solid #484848;
border-radius: 2px;
margin-left: 5px;
background-image: url(../../public/static/images/canvas/reset_ico.svg);
background-repeat: no-repeat;
background-size: 12px 12px;
background-position: center;
}
&:last-child {
margin-right: 0;
}
}
.cul-wrap {
display: flex;
.outline-box {
width: 50%;
margin-right: 15px;
.outline-form {
width: 100%;
margin-bottom: 14px;
margin-right: 0;
&:last-child {
margin-bottom: 0;
}
}
}
.cul-box {
display: flex;
align-items: center;
justify-content: center;
width: 50%;
background-color: #3D3D3D;
border-radius: 2px;
}
}
.properties-guide {
font-size: $pop-normal-size;
color: #AAA;
font-weight: $pop-normal-weight;
margin-bottom: 14px;
}
.properties-setting-wrap {
.setting-tit {
font-size: 13px;
color: $pop-color;
font-weight: $pop-bold-weight;
margin-bottom: 10px;
}
.setting-btn-wrap {
display: flex;
align-items: center;
padding: 14px 0;
border-top: 1px solid #424242;
border-bottom: 1px solid #424242;
.setting-btn {
display: block;
width: 100%;
height: 40px;
font-size: 13px;
color: #fff;
font-weight: 700;
border-radius: 2px;
transition: all .15s ease-in-out;
&.green {
background-color: #305941;
border: 1px solid #45CD7D;
&:hover {
background-color: #3a6b4e;
}
}
&.blue {
background-color: #2E5360;
border: 1px solid #3FBAE6;
&:hover {
background-color: #365f6e;
}
}
}
}
}