:root{
    --color-theme: #05f;
    --color-text: #32373b;
    --color-bright: #f5f5f7;
    --color-line: #ddd;
    --color-descript: #8a90a2;
}

/* bootstrap override */
.container { max-width: 1140px!important; } /* 컨테이너가 너무 넓으므로, xl사이즈만 벌어지도록 한다. */
.container-sm { max-width: 540px!important; } /* 컨테이너가 너무 넓으므로, 540까지만 벌어지도록 한다. */
.table { text-align: center; }

/* bootstrap addition */
.btn-theme, .btn-theme:hover { background-color: var(--color-theme); color: white; }
.btn-control, .btn-control:hover { background-color: var(--bs-border-color); color: white; }
.btn-outline-control, .btn-outline-control:hover { background-color: white;  border-color: var(--bs-border-color); color: var(--color-text); }
.btn-orange { color: #fff; background-color: #ff784b; border-color: #ff784b; }
.selected { background-color: var(--color-theme); color: white; border: none; }


/* tags */
a {text-decoration: none; color: var(--color-text);}
nav { color: var(--color-text); position:fixed; width: 100%; border-bottom: 1px solid #ccc; }

.color-theme { color: var(--color-theme); }
.color-theme-important { color: var(--color-theme)!important; }
.color-descript {color: var(--color-descript)}
.btn-link {text-decoration: underline; cursor: pointer;}
.btn-gaplink {border-bottom: 1px solid var(--color-text); margin-bottom: 3px;}

/* 기능 */
[pulldown="expander"] {display: none; position: absolute; top: 100%; right: 0; white-space: nowrap;}
[pulldown="trigger"] {position: relative;}
[pulldown="trigger"]:hover [pulldown="expander"] {display: unset;}
.pulldown {padding: 0.5rem 1.2rem; border: 1px solid var(--color-line); background-color: white;}
.list-container:not(:empty)+.list-empty-label { display: none!important; } /*빈 리스트의 표시 배너*/

/* 폰트사이즈 */
.fontsize-8 {font-size: 0.8rem;}
.color-gray-80 {color: rgb( calc(256*0.8),calc(256*0.8),calc(256*0.8) );}
.color-gray-70 {color: rgb( calc(256*0.7),calc(256*0.7),calc(256*0.7) );}
.color-gray-75 {color: rgb( calc(256*0.75),calc(256*0.75),calc(256*0.75) );}
.color-gray-65 {color: rgb( calc(256*0.65),calc(256*0.65),calc(256*0.65) );}
.color-gray-60 {color: rgb( calc(256*0.6),calc(256*0.6),calc(256*0.6) );}

/* 테이블 */
.table-frame {width:100%;}
.table-frame, .table-frame td, .table-frame th {
    border-top : 1px solid var(--bs-border-color); height: 2.5rem; text-align: center;
    border-bottom : 1px solid var(--bs-border-color); height: 2.5rem; text-align: center;
}
.table-frame td, .table-frame th { padding: 0.75rem; }
.table-frame thead th { background-color: rgba(var(--bs-light-rgb)); }
.table-frame.th-top-border thead th { border-top-color:#6c757d; }
.table-frame.th-top-border tr:first-child td { border-top-color:#6c757d; }
.table-frame.td-left td {text-align: left;}


/* 낮은 방향으로 잡아 주는 스타일 */
@media (max-width: 768px) {

    .table-frame, .table-frame td, .table-frame th { border-top : none; height: unset; text-align: center; border-bottom : none;}
    .table-frame .table-frame-thumb { max-width: 6rem; }
    .table-frame td:first-child { min-width: 7rem; } /* 최소 크기만 지정해 주면 반응형에서 문제가 없다. */

    .border-bottom-none { border: none!important; }

}


/* 임시라벨 관련 */
.splash-label+*{ display: none; }


/* 가격을 위한 속에 라인이 없는 테이블 */
.table-simple {width:100%;}


/* 유저 관련 */
.profile-thumb-min {width: 24px; height: 24px; border-radius: 50%;}
.profile-thumb {width: 32px; height: 32px; border-radius: 50%;}

/* CKEditor 관련 */
.ck [contenteditable][role="textbox"]:not(figcaption) {height: 35rem;}
.ck-source-editing-area {height: 35rem;}
.ck-readonly [contenteditable][role="textbox"]:not(figcaption) {height: unset;}
.ck-readonly .ck-toolbar {display: none!important;}
.ck-readonly [role="textbox"] {border: none!important}
/* .ck-toolbar-none-flex .ck-toolbar_grouping > .ck-toolbar__items {flex-wrap: wrap!important;} */
.ck-toolbar__items {flex-wrap: wrap!important;}

/* CKEditor 로 인한 id_image_csrf_token 인풋들을 감춰 준다. */
#id_image_csrf_token, [for="id_image_csrf_token"] { display: none; }

/* form */
label.hide-django-label {display: none;}
label.hide-django-label + .errorlist {display: none;}
form label[readonly] {color:#aaa;}
form input[readonly] {border:none!important; border-radius: unset;}
form input[readonly] {border-bottom: 1px solid var(--bs-border-color)!important;}


/* survey */
.question:not(:last-child) { border-bottom: dashed 1px #ddd; }


/* 메세지 뷰의 로고 관련 처리. */

.logo_n {width: 2rem; height: 2rem; cursor: pointer;}
.logo_text_n {font-family: 'Abril Fatface', serif; font-size: 1.3rem;}

.logo_message {width: 1.7rem; height: 1.7rem;}
.logo_text_message {font-family: 'Abril Fatface', serif; font-size: 1.2rem;}


/* 메세지 뷰의 타이틀 */
.title_message { margin-bottom: 0.5rem; }
.helptext { font-size: 0.8rem; color: #aaa!important; }