@import url('../colorPalate.css');

#mainarea {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: flex-start;
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
}

ul {
    list-style-type: none;
    padding-left: 0;
    margin: 0;
}

.sidebar_area {
    padding-top: 50px;
    padding-left: 40px;
    box-sizing: border-box;
    flex-direction: column;
}

#maindiv {
    width: 100%;
    height: 100%;
    background: rgba(236, 245, 255, 1) !important;
    min-height: 100vh;
    min-width: 1000px;
}

.page-container {
    display: flex;
    flex-direction: column;
    max-width: 1000px;
    padding-left: 120px;
    padding-bottom: 10px;
}


.top-section {
    gap: 16px;
    align-items: stretch;
    background: rgba(236, 245, 255, 1);
    box-sizing: border-box;
    padding-top: 50px;
    margin-bottom: 30px;
}

.content_top {
    width: 100%;
    height: 100%;
    min-height: 350px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 1);
    border-radius: 16px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.08);
    position: relative;
    margin-bottom: 30px;
}

.circle-border {
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background-color: #ECF5FF;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 15px auto 0 auto;
}

.circle-border img {
    width: 46.5px;
    height: 47px;
}

.result_button_cover {
    width: 400px;
    height: 72px;
    border: none;
    background: var(--brand-primary);
    box-shadow: var(--button-shadow), var(--button-shadow-border-normal);
    color: var(--text-white);
    font-weight: bold;
    font-size: 20px;
    opacity: 1;
    border-radius: 16px;
    cursor: pointer;
    transition: 0.2s;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.result_button_cover img {
    width: 32px;
    height: 32px;
}

.result_button_cover:hover {
    background-color: var(--bg-white);
    color: var(--brand-hover-font);
    box-shadow: var(--button-shadow), var(--button-shadow-border-hover);
}

.result_button_cover:hover img {
    filter: invert(38%) sepia(93%) saturate(2731%) hue-rotate(195deg) brightness(95%) contrast(92%);
}

/* SVG overlay fills the card */
.dot-border {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.dot-rect {
    --stroke: 1.5px;
    --dot: 10px; /* px length of dash */
    --gap: 10px; /* px length of gap */

    fill: none;
    stroke: #42A5F5;
    stroke-width: var(--stroke);
    stroke-linecap: butt;
    stroke-dasharray: var(--dot) var(--gap);
    stroke-dashoffset: 6px; /* use px, not vh/vw/% */
    vector-effect: non-scaling-stroke;

    rx: 13;
    ry: 13;
    x: calc(var(--stroke) / 2);
    y: calc(var(--stroke) / 2);
    width: calc(100% - var(--stroke));
    height: calc(100% - var(--stroke));
}

#drop_zone {
    flex: 1;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

#stage-initial-upload {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
}

#formatErrorPanel {
    text-align: center;
    display: none;
    margin-bottom: 25px;
}

#stage-format-error {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
}

#stage-upload-ready {
    display: flex;
    flex-direction: column;
}

/* Reserve space for the file list so initial growth doesn't push the button */
#stage-upload-ready #result {
    overflow-y: auto;
    padding: 0;
    list-style: none;
}

.text-wrapper {
    text-align: center;
}

.text-wrapper-upload-progress {
    min-height: 140px;
    text-align: center;

}

.text-wrapper-error {
    min-height: 210px;
    text-align: center;
}

/* (Optional) center the button within its container */
.button-container {
    text-align: center;
}

.dditem {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 8px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.4;
    color: rgba(110, 110, 110, 1);
    padding-top: 6px;
}

.content_bottom {
    width: 100%;
    height: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

.receipt_logo {
    width: 88px;
    height: 88px;
    background: rgba(236, 245, 255, 1);
    align-items: center;
}

.result_logo {
    width: 88px;
    height: 88px;
    background: rgba(236, 245, 255, 1);
    opacity: 1;
    position: absolute;
    top: 33px;
    left: 136px;
    border-top-left-radius: 106px;
    border-top-right-radius: 106px;
    border-bottom-left-radius: 106px;
    border-bottom-right-radius: 106px;
}

.setting_title {
    color: rgba(42, 42, 42, 1);
    position: static;
    left: 0px;
    margin: 5px;
    font-family: Noto Sans JP;
    font-weight: Bold;
    font-size: 24px;
    opacity: 1;
    text-align: center;
}

.receipt_title {
    width: 432px;
    color: rgba(42, 42, 42, 1);
    top: 10px;
    left: 0px;
    bottom: 15px;
    font-family: Noto Sans JP;
    font-weight: Bold;
    font-size: 24px;
    opacity: 1;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 3px;
}

.receipt_detail {
    width: 432px;
    color: rgba(110, 110, 110, 1);
    top: 15px;
    left: 0px;
    bottom: 15px;
    font-family: Noto Sans JP;
    font-weight: Regular;
    font-size: 16px;
    opacity: 1;
    text-align: center;
    padding-bottom: 30px;
}

/*receipt button*/
.receipt_button_cover {
    width: 400px;
    height: 56px;
    border: none;
    background: var(--brand-primary);
    box-shadow: var(--button-shadow), var(--button-shadow-border-normal);
    color: var(--text-white);
    font-weight: Bold;
    font-size: 20px;
    margin: 15px;
    opacity: 1;
    border-radius: 16px;
    cursor: pointer;
    transition: 0.2s;
}

.receipt_button_cover:hover {
    background-color: var(--bg-white);
    color: var(--brand-hover-font);
    box-shadow: var(--button-shadow), var(--button-shadow-border-hover);
}

.upload_button_cover:hover:not(:disabled) {
    background-color: var(--bg-white);
    color: var(--brand-hover-font);
    box-shadow: var(--button-shadow), var(--button-shadow-border-hover);
}

.tenken_button:hover {
    background-color: var(--bg-white);
    color: var(--brand-hover-font);
    box-shadow: var(--button-shadow), var(--button-shadow-border-hover);
}

.cancel_button:hover {
    background-color: var(--gray-100);
    box-shadow: 0 0 0 1px #aaa;
    color: rgba(80, 80, 80, 1);
}

.tenkenstart_button_cover:hover {
    background-color: var(--bg-white);
    color: var(--brand-hover-font);
    box-shadow: var(--button-shadow), var(--button-shadow-border-hover);
}

/*upload button*/
.upload_button_cover {
    width: 400px;
    height: 56px;
    border: none;
    background: var(--brand-primary);
    box-shadow: var(--button-shadow), var(--button-shadow-border-normal);
    color: var(--text-white);
    font-weight: Bold;
    font-size: 20px;
    margin: 15px;
    opacity: 1;
    border-radius: 16px;
    cursor: pointer;
    transition: 0.2s;
    margin-top: 75px;
}

.tenkenstart_button_cover {
    width: 400px;
    height: 56px;
    border: none;
    background: var(--brand-primary);
    box-shadow: var(--button-shadow), var(--button-shadow-border-normal);
    color: var(--text-white);
    font-family: Inter;
    font-weight: 700;
    font-size: 20px;
    margin: 0;
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
    align-self: center;
    transition: 0.2s;
}

/*upload button disabled*/
.upload_button_cover:disabled {
    background: #BFE1FF;
    color: #FFFFFF;
    border-color: #B3D6FF;
}

#progress {
    width: 350px;
    height: 6px;
    background: #cce0ff;
    border-radius: 3px;
    overflow: hidden;
    margin-top: 10px;
}

#bar {
    height: 100%;
    width: 0%;
    background: #60A5FA; /* main progress color */
    border-radius: 3px;
}

#counter {
    display: block;
    color: rgba(110, 110, 110, 1);
    font-family: Noto Sans JP;
    font-weight: 500;
    font-size: 16px;
    text-align: center;
    margin-bottom: 8px;
    margin-top: 8px;

}

#progressBarLinePlaceholder {
    height: 0.5vh;
}

/* Overlay (dim everything behind) */
.ui-widget-overlay,
.popup-overlay {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, .45) !important;
    z-index: 19990 !important;
}

/* Center the modal itself */
#message_view {
    position: fixed !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 20000 !important;

    /* card look */
    background: #fff;
    border-radius: 12px;
    padding: 20px 24px;
    width: min(720px, calc(100vw - 40px));
    box-shadow: 0 18px 50px rgba(0, 0, 0, .25);
}

/* Message text */
#msg {
    text-align: center;
    line-height: 1.6;
    font-size: 18px;
    margin: 0;
}

/* Button rows: center, keep inside the box */
#msgbutton_confirm,
#msgbutton {
    display: none;
    justify-content: center !important;
    gap: 12px !important;
    margin-top: 32px !important;
}


/* Make sure buttons are absolutely positioned by theme rules */
#btn_yes, #btn_no {
    position: static !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 84px;
    padding: 8px 16px;
    border-radius: 8px;
    box-shadow: var(--button-shadow);
    border: none;
}

#btn_yes:hover,
#btn_no:hover {
    background-color: var(--bg-white);
    color: var(--brand-hover-font);
    box-shadow: var(--button-shadow), var(--button-shadow-border-hover);
}

/* Optional: stop background from scrolling while modal is open */
body.mc-modal-open {
    overflow: hidden;
}

.hidden {
    display: none !important;
}

/* */
.table-section {
    min-height: 320px;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
    border-radius: 16px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.07999999821186066);
    border: 1px solid #DBE2E8;
    border-bottom: none;
    padding-bottom: 10px;
    background: var(--bg-white)
    
}

/* */
.checking_status_title {
    padding-left: 12px;
    height: 40px;
    line-height: 40px;
    opacity: 1;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    background: rgba(195, 229, 255, 1);
    color: rgba(42, 42, 42, 1);
    font-family: Noto Sans JP;
    font-weight: Bold;
    font-size: 16px;
    text-align: left;
}

.checking_status_header_font {
    top: 11px;
    left: 16px;
    font-family: Noto Sans JP;
    font-weight: Bold;
    font-size: 16px;
    opacity: 1;
    text-align: left;
}

.checking_status_list_content {
    height: auto;
    background: rgba(255, 255, 255, 1);
    border-bottom-right-radius: 16px !important;
    border-bottom-left-radius: 16px !important;
}

.read_checking_status_table,
.read_receipt_summary_table,
.read_Facility_Standard_table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

table.read_checking_status_table thead,
table.read_receipt_summary_table thead,
table.read_Facility_Standard_table thead {
    width: 100%;
    height: 40px;
    position: sticky;
    top: 0;
    background: rgba(245, 245, 245, 1);
    z-index: 2;
}

.read_checking_status_table tbody,
.read_receipt_summary_table tbody,
.read_Facility_Standard_table tbody {
    overflow-y: auto;
}


.read_checking_status_table tbody tr:nth-child(even) {
	background: var(--brand-bg) !important;
}

.read_checking_status_table tbody tr:last-child td:first-child {
    border-bottom-left-radius: 16px !important;
}

.read_checking_status_table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 16px !important;
}

table.read_checking_status_table thead th {
	height: 60px;
}

table.read_checking_status_table thead th,
table.read_receipt_summary_table thead th,
table.read_Facility_Standard_table thead th {
    display: table-cell;
    top: 0;
    background: transparent;
    background: #f9f9f9;
    color: rgba(110, 110, 110, 1);
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    font-size: 16px;
    text-align: left;
    margin-left: 5px;
    z-index: 2;
}

.read_checking_status_table th, .read_checking_status_data td,
.read_receipt_summary_table th, .read_receipt_data td,
.read_Facility_Standard_table th, .read_Facility_Standard td {
    padding: 0 3px 0 3px;
    vertical-align: middle;
}

.table_scroll.checking_status_list_container {
	padding-top: 0px;
}

.table_scroll.receipt_summary_list_container,
.table_scroll.read_Facility_Standard_container {
    padding-top: 0px;
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
    /* 	border-width:0px 2px 2px 2px; */
}

/*
div.checking_status_list_container.table_scroll >div{
	border-width:0px 2px 1px 2px;
	border-color: #f3eec0;
	border-style: solid;
}
*/
/*
div.table_scroll{
  position: relative;
  border: 0px solid #f3eec0;
  padding-top: 25px;
  background: transparent;
  overflow-x: hidden;
}
div.table_scroll > div {
  overflow-y: auto;
}
*/
/*
div.table_scroll > div > table {
  border-radius: 0px;
  border-spacing: 0px;
  width:100%;
  border-color: #f3eec0;
  border-width: 0px 2px 2px 2px;
  border-style: solid;
}
div.table_scroll td + td {
  border-left:2px solid #f3eec0;
}
div.table_scroll td,
div.table_scroll th {
  border-bottom:2px solid #f3eec0;
}
*/
div.table_scroll table {
    margin-bottom: 0px;
}

div.table_scroll thead tr {
    border: 0px;
}

div.table_scroll th:first-child div {
    border: none;
    margin-left: -2px;
}

div.table_scroll th div span {
    line-height: 8px;
}

div.table_scroll.double_th {
    padding-top: 40px;
}

div.table_scroll.double_th th div {
    height: 40px;
}

div.table_scroll.double_th th div span {
    line-height: 20px;
}

div.table_scroll.triple_th {
    padding-top: 60px;
}

div.table_scroll.triple_th th div {
    height: 60px;
}

div.table_scroll.triple_th th div span {
    line-height: 40px;
}

div.table_scroll.double_th th.twoline div,
div.table_scroll.triple_th th.threeline div {
    padding-top: 5px;
}

div.table_scroll.triple_th th.twoline div {
    padding-top: 15px;
}

div.table_scroll th.twoline div span,
div.table_scroll th.threeline div span {
    line-height: 16px;
    text-align: center;
    display: inline-block;
}


/* Panels ---------------------- */

/* line 83, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
.panel > :first-child {
    margin-top: 0;
}

/* line 84, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
.panel > :last-child {
    margin-bottom: 0;
}

.panel.master {
    background: #2ba6cb;
    color: #fff;
    border-color: #2284a1;
    -webkit-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5);
    -moz-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5);
    box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5);
    margin: 0 0 0 0;
    padding: 5px;
}

/* line 86, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
.panel.callout {
    background: #2ba6cb;
    color: #fff;
    border-color: #2284a1;
    -webkit-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5);
    -moz-box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5);
    box-shadow: inset 0px 1px 0px rgba(255, 255, 255, 0.5);
}

/* line 87, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
.panel.callout a {
    color: #fff;
}

/* line 88, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
.panel.callout .button {
    background: white;
    border: none;
    color: #2ba6cb;
    text-shadow: none;
}

/* line 90, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
.panel.callout .button:hover, .panel.callout .button:focus {
    background: rgba(255, 255, 255, 0.8);
}

/* line 94, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
.panel.radius {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
}

table.read_checking_status_table,
table.read_checking_status_table th,
table.read_checking_status_table td,
div.table_scroll > div > table,
div.table_scroll td + td,
div.table_scroll td,
div.table_scroll th,
div.table_scroll th div {
    border: none !important;
    box-shadow: none !important;
    width: 100%;
    table-layout: fixed;
}


/*receipt table*/
.read_checking_status_table thead tr th {
	height: 30px !important;
}

.read_checking_status_table thead tr th.execute_start_date_cell {
	width: 23%;
}

.read_checking_status_table thead tr th.checking_status_cell {
    width: 10%;
}

.read_checking_status_table thead tr th.checking_message_cell {
    width: 22%;
    padding-left: 10px;
}

html body .read_checking_status_table thead tr th.checking_message_cell div[style] {
    left: 0px !important;
}

.read_checking_status_table thead tr th.checking_insurance_cell {
    width: 5%;
}

.read_checking_status_table thead tr th.checking_admission_cell {
    width: 10%;
}

.read_checking_status_table thead tr th.checking_complete_cell {
    width: 5%;
}

.read_checking_status_table thead tr th.checking_warning_cell {
    width: 5%;
}

.read_checking_status_table thead tr th.checking_start_date_cell {
    width: 20%;
}


.read_checking_status_table th.execute_start_date_cell,
.read_checking_status_table td.execute_start_date_cell {
    padding-left: 15px;
    vertical-align: middle;
}

.read_checking_status_table th.checking_status_cell,
.read_checking_status_table td.checking_status_cell {
    vertical-align: middle;
    text-align: center;
}

.read_checking_status_table th.checking_message_cell,
.read_checking_status_table td.checking_message_cell {
    vertical-align: middle;
    padding-left: 10px;
}

.read_checking_status_table th.checking_insurance_cell,
.read_checking_status_table td.checking_insurance_cell,
.read_checking_status_table th.checking_admission_cell,
.read_checking_status_table td.checking_admission_cell,
.read_checking_status_table th.checking_complete_cell,
.read_checking_status_table td.checking_complete_cell,
.read_checking_status_table th.checking_warning_cell,
.read_checking_status_table td.checking_warning_cell {
    vertical-align: middle;
}

.read_checking_status_table td.checking_warning_cell {
    color: #FF7272;
}

.read_checking_status_table th.checking_start_date_cell,
.read_checking_status_table td.checking_start_date_cell {
    vertical-align: middle;
}

.read_checking_status_table th.userid,
.read_checking_status_table td.userid {
    padding-left: 15px;
    vertical-align: middle;
}

.read_checking_status_table th.username,
.read_checking_status_table td.username {
    vertical-align: middle;
}

.read_checking_status_table th.userclass,
.read_checking_status_table td.userclass {
    vertical-align: middle;
}

.read_checking_status_table th.userupdate,
.read_checking_status_table td.userupdate {
    vertical-align: middle;
}

.read_checking_status_table th.userdelete,
.read_checking_status_table td.userdelete {
    vertical-align: middle;
}

.read_checking_status_table th.doctor_code_cell,
.read_checking_status_table td.doctor_code_cell {
    color: var(--text-secondary);
    padding-left: 15px;
    vertical-align: middle;
    width: 300px;
}

.read_checking_status_table th.doctor_name_cell,
.read_checking_status_table td.doctor_name_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    word-break: keep-all;
}

.read_checking_status_table th.doctor_user_id_cell,
.read_checking_status_table td.doctor_user_id_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 300px;
}

.read_checking_status_table th.doctor_action_cell,
.read_checking_status_table td.doctor_action_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 100px;
}

.read_receipt_summary_table th.read_item_cell,
.read_receipt_summary_table td.read_item_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    padding-left: 15px;
    width: 300px;
}

.read_receipt_summary_table th.payment_cell,
.read_receipt_summary_table td.payment_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 100px;
}

.read_receipt_summary_table th.inout_cell,
.read_receipt_summary_table td.inout_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 100px;
}

.read_receipt_summary_table th.read_date_cell,
.read_receipt_summary_table td.read_date_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 300px;
}

.read_receipt_summary_table th.available_num_cell,
.read_receipt_summary_table td.available_num_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 200px;
}

.read_receipt_summary_table th.icon_cell,
.read_receipt_summary_table td.icon_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 150px;
}

.read_receipt_summary_table tbody tr:hover {
    background: var(--brand-primary-hover) !important;
}

.read_receipt_summary_table tbody tr:hover td {
    background: var(--brand-primary-hover) !important;
}

.read_Facility_Standard_table th.facilitySDList_Code_cell,
.read_Facility_Standard_table td.facilitySDList_Code_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    padding-left: 15px;
    width: 100px;
    height: 60px;
}

.read_Facility_Standard_table th.facilitySDList_Contents_cell,
.read_Facility_Standard_table td.facilitySDList_Contents_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 500px;
    height: 60px;
}

.read_Facility_Standard_table th.facilitySDList_Equipment_Category_cell,
.read_Facility_Standard_table td.facilitySDList_Equipment_Category_cell {
    color: var(--text-secondary);
    vertical-align: middle;
    width: 300px;
    height: 60px;
}

.read_Facility_Standard_table tbody tr:hover {
    background: var(--brand-primary-hover) !important;
}

.read_Facility_Standard_table tbody tr:hover td {
    background: var(--brand-primary-hover) !important;
}

/* Tables ---------------------- */
/* line 232, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table {
    background: #fff;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    margin: 0 0 0px;
    border: 1px solid #ddd;
}

/* line 234, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table thead, table tfoot {
    background: #f5f5f5;
}

/* line 239, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table thead tr th,
table tfoot tr th,
table tbody tr td,
table tr td,
table tfoot tr td {
    display: table-cell;
    font-family: Noto Sans JP;
    font-size: 16px;
    line-height: 18px;
    text-align: left;
}

/* line 241, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table thead tr th,
table tfoot tr td {
    font-size: 16px;
    font-weight: bold;
    color: #222;
}

/* line 242, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table thead tr th:first-child, table tfoot tr td:first-child {
    border-left: 16px;
}

/* line 243, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table thead tr th:last-child, table tfoot tr td:last-child {
    border-right: none;
}

/* line 246, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table tbody tr.even,
table tbody tr.alt {
    background: #f9f9f9;
}

/* line 247, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table tbody tr:nth-child(even) > td,
table tbody tr:nth-child(even) > th {
    border-radius: 0 !important;
    box-shadow: none !important;
}

table tbody tr:nth-child(even) > td:first-child,
table tbody tr:nth-child(even) > th:first-child {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

table tbody tr:nth-child(even) > td:last-child,
table tbody tr:nth-child(even) > th:last-child {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

table tbody tr:nth-child(even)::before,
table tbody tr:nth-child(even)::after {
    content: none !important;
}

/* line 248, ../../../../../../../Library/Ruby/Gems/2.0.0/gems/zurb-foundation-3.2.5/scss/foundation/components/modules/_ui.scss */
table tbody tr td {
    color: #333;
    padding-top: 10px;
    padding-bottom: 10px;
    vertical-align: top;
    border: none;
}

.status_badge {
    display: inline-block;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    line-height: 1;
    border-radius: 8px;
    text-decoration: none;
    text-align: center;
    padding: 5px 8px;
    white-space: nowrap;
}

.status_badge_complete {
    border: 3px solid rgba(112, 187, 246, 1);
    color: rgba(29, 128, 205, 1);
    background: #fff;
    transition: 0.2s;
}

.status_badge_complete:hover {
    background: rgba(112, 187, 246, 1);
    color: #fff;
}

.status_badge_checking {
    border: 3px solid rgba(228, 169, 43, 1);
    color: rgba(162, 110, 0, 1);
    background: #fff;
    transition: 0.2s;
}

.status_badge_checking:hover {
    background: rgba(228, 169, 43, 1);
    color: #fff;
    cursor: default;
}

/* PopAlert Styles */
div.alert-box {
    box-sizing: border-box;
    display: flex;
    height: 56px;
    align-items: center;
    padding: 10px 20px;
    font-weight: bold;
    font-size: 16px;
    color: white;
    background-color: #2ba6cb;
    border: 1px solid rgba(0, 0, 0, 0.1);
    margin: 5px;
    border-radius: 5px;
}

div.alert-box.success {
    background-color: var(--success-primary);
    border: 1px solid var(--success-dark);
    color: var(--text-white);
}

div.alert-box.alert {
    background-color: var(--error-primary);
    border: 1px solid var(--error-dark);
    color: var(--text-white);
}

div.alert-box.secondary {
    background-color: var(--warn-primary);
    border: 1px solid var(--warn-dark);
    color: var(--text-primary);
}

div.alert-box a.close {
    color: inherit;
    font-size: 17px;
    padding: 4px;
    margin-left: auto;
}

div.alert-box a.close:hover, div.alert-box a.close:focus {
    opacity: 0.4;
}

.popup {
    min-width: 1000px;
    background-color: white;
    display: none;
    border: solid 1px rgba(0, 0, 0, 0.2);
    border-radius: 10px;
    box-shadow: 1px 1px white, inset 0 1px 1px rgba(255, 255, 255, 0.4);
    /* Override JavaScript positioning - use CSS viewport centering */
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 2000 !important;
}

.popup#message_view {
    padding: 32px;
    text-align: center;
    position: relative;
}

.popup#confbox,
.popup#infobox {
    width: 365px;
    min-height: 150px;
    padding: 32px;
    text-align: center;
    box-shadow: 0px;
}

.popup#infobox.dosage-coefficient .message {
    font-size: 15px;
    line-height: 20px;
}

.popup#confbox.change-password {
    background-color: rgba(255, 255, 255, 1);
    border-radius: 15px;
}

.popup#confbox.change-password .message {
    font-size: 15px;
    font-weight: bold;
}

.popup#confbox.change-password .button {
    width: 190px;
    height: 50px;
    border-radius: 10px;
    font-size: 15px;
}

.popup#confbox.survey,
.popup#confbox.graph {
    background-color: #fdffec;
    border-radius: 15px;
    width: 720px;
    max-width: 720px;
    top: 100px !important;
}

.popup#confbox.survey {
    height: 780px;
    max-height: 780px;
}

.popup#confbox.graph {
    height: 650px;
    max-height: 670px;
}

.popup#confbox.dosage-coefficient-bold {
    border-radius: 15px;
    width: 790px;
    max-width: 790px;
    height: 430px;
    max-height: 430px;
    top: 50%;
    text-align: center;
    padding: 0px;
}

.popup#confbox.survey .message,
.popup#confbox.graph .message,
.popup#confbox.dosage-coefficient-bold .message {
    font-weight: bold;
}

.popup#confbox.survey .button,
.popup#confbox.graph .button,
.popup#confbox.dosage-coefficient-bold .button {
    width: 200px;
    height: 50px;
    border-radius: 10px;
    font-size: 25px;
}

/* @Add 2015/01/09 AIS.DTanaka St [#7353] */
.popup#confbox_addDiseaseCond {
    width: 450px;
    min-height: 150px;
    padding: 20px;
    text-align: left;
    box-shadow: 0px;
}

/* @Add 2015/01/09 AIS.DTanaka Ed */

.popup#icd10_detail {
    width: 850px;
    min-width: 805px;
    min-height: 350px;
    padding: 20px;
    text-align: center;
    box-shadow: 0px;
}

.popup#icd10_detail #icd10_val {
    display: inline;
    width: 150px;
    font-weight: bolder;
    color: #321114;
}

#msg {
    text-align: center;
    width: 100%;
}

#message_view #msg {
    color: #6E6E6E;
    font-size: 18px;
    font-weight: bold;
}

#message_view #msg .msg-first {
    padding-bottom: 25px
}

#message_view #msg .msg-second {
    padding-bottom: 25px
}

.popup#message_view #msgbutton_confirm center {
    display: inline-flex;
    align-items: center;
    gap: 22px;
}

.popup#message_view #msgbutton_confirm .button {
    width: 190px;
    height: 50px;
    border-radius: 10px;
    font-size: 15px;
    border: none;
    background: var(--brand-primary);
    box-shadow: var(--button-shadow), var(--button-shadow-border-normal);
    color: var(--text-white);
    transition: 0.2s;
}

.popup#message_view #msgbutton_confirm .button:hover {
    background-color: var(--bg-white);
    color: var(--brand-hover-font);
    box-shadow: var(--button-shadow), var(--button-shadow-border-hover);
}

.loading-circle {
    -webkit-animation: rotate-r .9s infinite linear;
    -moz-animation: rotate-r .9s infinite linear;
    -ms-animation: rotate-r .9s infinite linear;
    -o-animation: rotate-r .9s infinite linear;
    animation: rotate-r .9s infinite linear;
    border: 3px solid #6cf;
    border-radius: 50%;
    border-right-color: transparent;
    border-right-width: 1px;
    box-sizing: border-box;
    position: relative;
    height: 40px;
    width: 40px;
}

@-webkit-keyframes rotate-r {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}

@-moz-keyframes rotate-r {
    from {
        -moz-transform: rotate(0deg);
    }
    to {
        -moz-transform: rotate(360deg);
    }
}

@keyframes rotate-r {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.button {
    width: auto;
    background: var(--brand-primary);
    border: none;
    color: var(--text-white);
    cursor: pointer;
    display: inline-block;
    font-family: inherit;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
    margin: 0;
    padding: 10px 20px 11px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.15s ease-in-out;
    box-shadow: var(--button-shadow), var(--button-shadow-border-normal);
}

.button:hover {
    background: #1565C0;
}

.row {
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0 auto;
}

.row.extramargin-bottom {
    margin-bottom: 2%;
}

.center {
    text-align: center;
}

.popup .button {
    margin: 0 5px;
}

.clickable {
    cursor: pointer;
}