body {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    height: 100vh;
    align-content: baseline ;
    font-size : 1em;
    font-family: 'Inter', sans-serif;
    line-height: 1;
}

*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
    display: revert;
    box-sizing: border-box;

  }

button {
    text-align : center ;
    justify-content: center ;
}


select, button {
    background-color: transparent;
    border : none;
    all: unset;
    /* font-family : sans-serif; */
    padding : 0.65em 1em;
    border-radius : 4px;
    display : flex;
    

}

select {
    border : 1px solid rgba(33, 55, 79, 0.2);
    background-position: calc(100% - 16px) center ;
    background-repeat : no-repeat ;
    background-color: #fff;
    width: 180px;
    background-image : url("data:image/svg+xml,%3Csvg width='15' height='9' viewBox='0 0 15 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.792893 0.792893C1.18342 0.402369 1.81658 0.402369 2.20711 0.792893L7.5 6.08579L12.7929 0.792893C13.1834 0.402369 13.8166 0.402369 14.2071 0.792893C14.5976 1.18342 14.5976 1.81658 14.2071 2.20711L8.20711 8.20711C7.81658 8.59763 7.18342 8.59763 6.79289 8.20711L0.792893 2.20711C0.402369 1.81658 0.402369 1.18342 0.792893 0.792893Z' fill='%232F3039'/%3E%3C/svg%3E%0A");
}

button {
    border : 1px solid rgba(33, 55, 79, 0.2);
    background-color : #3949DB;    
    color : #fff;
}

div[data-title=header] button {
    margin-left: 20px;
}

input {
    font-size: 1em;
}

button:hover, select:hover {
    cursor : pointer;
}

div[data-id=container] {
    display : flex;
    width : 100% ;
    justify-content : center ;
    padding : 1em 0

}

div[data-title=header] {
    background-color: rgba(33, 55, 79, 0.05);
    margin-bottom: 2em;
}

table {
    border : 1px solid rgba(33, 55, 79, 0.1);
}


div[data-viewport=default] {
    display: none ;
}

div[role=modal] {
    background-color : rgba(33, 55, 79, 0.8);
    position : fixed;
    left : 0; 
    bottom : 0;
    width : 100%;
    height : 100vh;
    display : flex ;
    justify-content : center ;
    /* font-family : 'sans-serif'; */
    align-items: baseline;
}

div[data-modal=content] {
    background-color: #fff;
    border-radius : 8px;
    flex :  0 0 540px;
    padding : 1em 1.5em;
    margin-top: 1em;
}

div[data-modal=content][data-auth] {   
    flex :  0 0 420px;
   
}


div[data-modal=content][data-auth] button {   
    width : 100%;
    justify-content: center ;
    text-align: center ;
   
}

div[data-modal=content][data-auth] h2 {
    font-size : 1.65em;
    font-weight : 700;
    margin-top : 1em;
}

div[data-modal=content] h2 {
    margin: 0;
    font-size : 1.25em;
    font-weight: 600;
}

div[data-modal=content] textarea {
    width: 100% ;
    height : 500px;
    border : 1px solid rgba(33, 55, 79, 0.3);
    padding : 1em;
    margin-top: 2em;

}

div[data-page=form]{
    margin-top : 2em ;
}

 
div[data-header] {
    display : flex ;
    flex-wrap: wrap;
    align-items : center ;
    justify-content : space-between ;
}

div[data-header] button {
    padding : 0;
    background-color : transparent;
    border : 1px solid transparent;
}


form div {
    width : 100% ;
    margin-bottom: 1.5em ;
}

label {
    display: block;
    font-weight : 500;
    margin-bottom: 0.5em ;
    text-transform : capitalize ;

}
div[data-modal=content]  input, div[data-modal=content] select {
    display : block ;
    padding : 0.75em 1em;
    width : 100%;
    border-style : solid;
    border-width: 1px;
    border-color : rgba(33, 55, 79, 0.3);
    border-radius : 4px;
}

div[data-modal=content]  input[data-error], div[data-modal=content] select[data-error] {

    border-color :  rgb(235, 58, 58);
    
}


div[data-form=actions] {
    display: flex;
    justify-content : space-between ;
}

div[data-form=actions] button[data-id=close]{
    background-color : #fff ;
    border-color : rgba(33, 55, 79, 0.3);
    color : rgba(33, 55, 79, 1)
}
div[data-form=actions] button[data-id=save] {
    color : #fff;
    background-color : #3949DB;
}


span[data-helper] {
    color : rgb(235, 58, 58);
    font-size : 0.875em
}


div[data-edit=actions] {
    display : flex ;
    justify-content: center ;
    gap : 1em
}

div[data-edit=actions] button {
    
    border-color : rgba(33, 55, 79, 0.3);
    background-color: #fff;
    color : rgba(33, 55, 79, 0.8);
}

div[role=alert] {

    position: fixed;
    bottom: 0;
    padding: 1em;
    left: 0;
    width: 100%;
    background-color: rgb(40, 163, 40);
    color: #fff;
    z-index: 1000;
}


