* { margin: 0; padding: 0; }
body { font: 16px Helvetica, Sans-Serif; line-height: 24px; }
.clear { clear: both; }
#page-wrap { width: 800px; margin: 40px auto 60px; }
#pic { float: right; margin: -30px 0 0 0; }
h1 { margin: 0 0 16px 0; padding: 16px 0 16px 0; font-size: 42px; font-weight: bold; letter-spacing: -2px; border-bottom: 1px solid #999; }
h2 { font-size: 20px; margin: 0 0 6px 0; position: relative; }
h2 span { position: absolute; bottom: 0; right: 0; font-style: italic; font-family: Georgia, Serif; font-size: 16px; color: #999; font-weight: normal; }
p { margin: 0 0 16px 0; }
a { color: #999; text-decoration: none; border-bottom: 1px dotted #999; }
a:hover { border-bottom-style: solid; color: black; }
ul { margin: 0 0 32px 17px; }
#objective { width: 500px; float: left; }
#objective p { font-family: Georgia, Serif; font-style: italic; color: #666; }
dt { font-style: italic; font-weight: bold; font-size: 18px; text-align: right; padding: 0 26px 0 0; width: 150px; float: left; height: 100px; border-right: 1px solid #999;  }
dd { width: 600px; float: right; }
dd.clear { float: none; margin: 0; height: 15px; }
label {}


.introduction {
    font-size: 18px
}

.option {
    font-size: 20px
}

.footer{ 
    font-size: 20px;
    
    position: fixed;     
    text-align: center;    
    bottom: 50px; 
    width: 100%;
}  

.body{
    margin: 0;
    padding: 0;
     /* background-color: #efefef;  */
     /* font-family: 'Open Sans', sans-serif; */
}

.page {
    display: grid;
    row-gap: 30px;
    column-gap: 30px;
    width: 100%;
    padding: 30px;
    margin: 0 auto;
    grid-template-areas:
      "step result";
    grid-template-columns: 1fr 1fr;
}

.step {
    grid-area: step;
}


.item {
    border-bottom: 2px solid #000000;
    display: grid;
    padding: 10px 0;
    font-size: 18px;
    line-height: 1.5;
    grid-template-columns: 1fr 4.5fr 7fr;
    grid-template-areas: 
      "quantity option title";
    row-gap: 8px;
  
}

.item-quantity {
    grid-area: quantity;
}
  
.item-title {
    grid-area: title;
}

.item-option {
    grid-area: option;
    font-weight: bold;
}

.item-description {
    font-size: 16px;
    grid-area: description;
    row-gap: 10px;
    display: grid;

    grid-template-columns: 0.75fr 3fr;
    grid-template-areas: 
    "item-description-name item-description-description";
}


.item-description-name {
    grid-area: item-description-name;
}
  
.item-description-description {
    grid-area: item-description-description;
}


.box {
    /* background-color: #eee1d5; */
    /* box-shadow: 0 1px 3px rgb(0 0 0 / 0.2); */
    border: 2px solid #000000;
    border-radius: 5px;
    padding: 15px;
    margin-bottom: 20px;
    width: 100%;
}

.box-title {
    /* color: #885a2d; */
    font-weight: normal;
    font-size: 20px;
  }


.user-input-label {
    /* color: #885a2d; */
    /* background-color: #eee1d5; */
    font-size: 16px;
    font-weight: normal;
}

.user-input {
    width: 50%;
    text-indent: 16px;
    font-size: 16px;
    left: 50px;
    position: absolute;
}

.user-option-box {
    /* color: #885a2d; */
    /* background-color: #eee1d5; */
    font-size: 16px;
    font-weight: normal;
}

.user-option {
    /* color: #885a2d; */
    /* background-color: #eee1d5; */
    font-size: 16px;
    font-weight: normal;
}

.result {
    grid-area: result;
}

.parameter {
    border-bottom: 2px solid #000000;
    display: grid;
    padding: 10px 0;
    font-size: 18px;
    line-height: 1.5;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: 
      "phase-field boundary-condition initial-condition";
  
    row-gap: 8px;
}

.parameter-phase-field {
    grid-area: phase-field;
}

.parameter-boundary-condition {
    grid-area: boundary-condition;
}

.parameter-initial-condition {
    grid-area: initial-condition;
}

.input-group {
    font-weight: normal;
    font-size: 16px;
    font-style: italic;
    padding-left: 8px;
}

.item-cite {
    font-size: 5px;
}
