body {
	/*background-color: #333333;*/
	background: linear-gradient(0deg, rgba(51, 51, 51, 0.9), rgba(51, 51, 51, 0.9)), url('rbio_bg.jpg') transparent no-repeat center center / cover;
	height: 100vh;
	font-family:Verdana, Geneva, sans-serif;
	    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
} 

h8 {
	color: #AC0D10;
	font-weight: bold;
	margin-top: 0px
}
.start_middle {
	width: 100%;
	text-align:center;
	height: 100%;
		}
.login_d {
	margin-top:30vw;
	margin-left: 15px
}
.login_fields {
	border: solid 1px #09C;
	border-radius: 6px;
	padding: 5px;
	font-size: 12px;
	width: 180px
}
.login_fields_d {
	margin: 8px
}
h6 {
	font-size: 16px;
	color: #FFFFFF
}
h1 {
	font-size: 16px;
	color: #333333
}
.main_dashboard {
	background-color: #F6F6F6;
	display: flex;

}
.flags {
	float:  left;
	margin-right: 5px;
	display: inline-block;
	
}
.main_top {
	width: 100%;
	background: url("images/utbg.png") repeat-x;
	height: 70px;
	background-color: #ffffff;
	
	display: flex; /* JAUNAIS */
	align-items: center; /* vertikālais centrējums */
	justify-content: space-between; /* vienmērīgi sadala */
	flex-wrap: nowrap; /* neļauj pārlekt uz otru rindu */
	overflow-x: auto; /* ja vajag, parādīs horizontālo scroll */
	gap: 10px; /* nedaudz brīvas vietas starp elementiem */
	margin-top: -18px !important;
}

.dash_ca {
	flex: 0 0 235px;
	min-height: 100vh;
	background-color: #242D37;
	border-top-right-radius: 15px;
	border-bottom-right-radius: 15px;
	margin-bottom: 10px;

	/* Sticky efekts */
	position: sticky;
	top: 0;
	align-self: flex-start; /* svarīgi Flex konteineros */
	z-index: 10; /* lai vienmēr būtu virs citiem, ja nepieciešams */
	
}
.dash_content {
	flex: 1;
	background-color: #F6F6F6;
	/*margin-left: 235px;*/	
		padding: 15px;
			/*border: solid 1px #ccc*/
	float: left;
}
.dash_ml {
	color: #81C1DD;
	text-decoration: none;
}
.dash_c_top {
	background: url("images/navi_top.png") repeat-x;
	height: 31px;
	width: 200px;
	color: #fff;
	font-size:12px;
	padding-left: 35px;
	padding-top:16px
}
.dash_c_cat1 {
	background: url("images/mdsak.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px
}
.dash_c_cat1:hover {
	background: url("images/mdsak.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px;
	filter: brightness(150%);
}

.dash_c_cat1_active {
	background: url("images/mdsak.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px;
	filter: brightness(150%);
}
.dash_c_cat_sett {
	background: url("images/mdsett.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px
}
.dash_c_cat_sett:hover {
	background: url("images/mdsett.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px;
	filter: brightness(150%);
}
.dash_c_cat_usr {
	background: url("images/mdusr.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px
}
.dash_c_cat_usr:hover {
	background: url("images/mdusr.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px;
	filter: brightness(150%);
}
.dash_c_cat_orders {
	background: url("images/md_ord.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px
}
.dash_c_cat_orders:hover {
	background: url("images/md_ord.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px;
	filter: brightness(150%);
}
.dash_c_cat_catalogs {
	background: url("images/mdcat.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px
}
.dash_c_cat_catalogs:hover {
	background: url("images/mdcat.png") repeat-x;
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:14px;
	padding-left: 45px;
	padding-top:12px;
	filter: brightness(150%);}
.dash_c_cat_cat_0 {
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:15px;
	padding-left: 39px;
	padding-top:12px;
}
.dash_c_cat_cat_0:hover {
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:15px;
	padding-left: 39px;
	padding-top:12px;
	filter: brightness(150%);
}
.dash_c_cat_cat_1 {
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:15px;
	padding-left: 55px;
	padding-top:12px
}
.dash_c_cat_cat_1:hover {
	height: 28px;
	width: 190px;
	color: #81C1DD;
	font-size:15px;
	padding-left: 55px;
	padding-top:12px;
	filter: brightness(150%);}
.btt_logout {
	float: right;
	background: url("images/lgout.png") no-repeat;
	width: 63px;
	height: 37px;
	color: #6D6D6D;
	text-align:left;
	padding-left: 40px;
	padding-top:23px;
	font-size: 12px;
}
.btt_logout:hover {
	float: right;
	background: url("images/lgout.png") no-repeat;
	width: 63px;
	height: 37px;
	color: #6D6D6D;
	text-align:left;
	padding-left: 40px;
	padding-top:23px;
	font-size: 12px;
	filter: brightness(95%);
}
.top_select_store {
	float: right;
	width: 200px;
	height: 37px;
	color: #6D6D6D;
	text-align:left;
	padding-left: 40px;
	padding-top:10px;
	font-size: 12px;
}

.top_select_store_selector {
	color: #333;
	border: solid 1px #333333;
	font-size: 14px;
	padding: 3px;
	border-radius: 3px;
	margin-top:5px;
	
}

.user_logo,
.main_top_search,
.user_right,
.top_select_store {
	flex-shrink: 1; /* ļauj samazināties līdz minimumam */
	white-space: nowrap; /* neļauj tekstam pārlekt uz otru rindu */
}

.user_logo {
    width: 200px;
    text-align: center;
    padding: 0px 0;
    
}
.logo_size {
    max-width: 200px;
    max-height: 55px;
    display: block;
    margin: 0 auto;
}
.main_top_search {
	font-size: 12px;
	color: #6D6D6D;
	padding-left: 20px;
}
.main_search_box {
	border:  solid 1px #ccc;
	border-radius:  5px;
	width: 100%;
	padding: 5px;
	font-size: 15px
}
.user_right {
	display: flex;
	align-items: center;
	gap: 10px;
}
.user_top_dati {
	font-size: 12px;
	color: #6D6D6D;
	padding-left: 10px;
	padding-right: 10px;
	background: url("images/cilv.png") no-repeat 0 0;
	background-size: 20px;
	padding-left: 30px;
	

}
.top_select_store h1, .top_select_store h3 {
	margin: 0;
	padding: 0px;
	font-size: 14px;
}
#timenow {
	color: #000000;
	font-size: 14px;
	text-align: center;
}
.a_t_l {

		background: url(images/a_t_l.png) left top no-repeat;

	height: 64px;

	width: 9px;

}

.a_t_r {

		background: url(images/a_t_r.png) left top no-repeat;

	height: 64px;

	width: 8px;

}

.a_t_b {

		background: url(images/a_t_b.png) repeat-x;

	height: 64px;

}
.add_butt_t {

	line-height: 65px;

	font-size: 9px;

}

.add_butt_t:hover {

	line-height: 65px;

	text-decoration:none;

	font-size: 9px;

}

.add_button {

	float: right;

	background: url(images/add_new.png) no-repeat center top;

	width:50px;

	height:32px;

		text-align: center;

	padding-left: 10px;

	padding-right: 10px;

		margin-top: 5px;

			border-left:#fff solid 1px;

	border-right:#ccc solid 1px;

}

.add_button:hover {

	float: right;

	background: url(images/add_new_h.png) no-repeat center top;

	width:50px;

	height:32px;

		text-align: center;

	padding-left: 10px;

	padding-right: 10px;

		margin-top: 5px;

			border-left:#fff solid 1px;

	border-right:#ccc solid 1px;

}

.save_button {
	float: right;
	background: url(images/save.png) no-repeat center top;
	width:45px;
	height:32px;	text-align: center;
	padding-left: 10px;
	padding-right: 10px;
	margin-top: 5px;
	border-left:#fff solid 1px;
	border-right:#ccc solid 1px;
}
.add_butt_t2 {
font-size: 9px;



}
.save_button:hover {
	float: right;
	background: url(images/save_h.png) no-repeat center top;
	width:45px;
	height:32px;
		text-align: center;
	padding-left: 10px;
	padding-right: 10px;
		margin-top: 5px;
			border-left:#fff solid 1px;
	border-right:#ccc solid 1px;
}

.saveclose_button {

	float: right;

	background: url(images/saveclose.png) no-repeat center top;

	width:70px;

	height:32px;

		text-align: center;

	padding-left: 10px;

	padding-right: 10px;

		margin-top: 5px;

			border-left:#fff solid 1px;

	border-right:#ccc solid 1px;

}

.saveclose_button:hover {

	float: right;

	background: url(images/saveclose_h.png) no-repeat center top;

	width:70px;

	height:32px;

	text-align: center;

	padding-left: 10px;

	padding-right: 10px;

		margin-top: 5px;

			border-left:#fff solid 1px;

	border-right:#ccc solid 1px;

}

.close_button {

	float: right;

	background: url(images/close.png) no-repeat center top;

	width:50px;

	height:32px;

	text-align: center;

	padding-left: 10px;

	padding-right: 10px;

		margin-top: 5px;

			border-left:#fff solid 1px;

	border-right:#ccc solid 1px;

}

.close_button:hover {

	float: right;

	background: url(images/close_h.png) no-repeat center top;

	width:50px;

	height:32px;

		text-align: center;

	padding-left: 10px;

	padding-right: 10px;

	margin-top: 5px;

	border-left:#fff solid 1px;

	border-right:#ccc solid 1px;

}
.product_list_div {
	border: solid 1px #ccc;
	width:100%;
	padding: 10px;
    box-sizing: border-box;
	border-radius:  10px;
	overflow:hidden;
	background-color:  #FFFFFF;

}
.p_list_top {
	font-size: 11px;
	font-weight:  bold;
	border: solid 1px #ccc;
	padding: 3px
}
.patch {
	height:  30px;
}
.product_listing{
border: 1px solid #ccc;
 border-collapse: collapse;
	font-size: 12px;
	color: #006699;
}
.product_list_code{
	border: 1px solid #ccc;
	width: 2%;
	padding:  3px;
	font-weight: bold
}
.product_list_name{
	border: 1px solid #ccc;
	padding:  3px
}
.product_list_atlikums{
	border: 1px solid #ccc;
	width: 3%;
	padding:  3px;
	text-align: center
}
.product_list_datums{
	border: 1px solid #ccc;
	width: 12%;
	padding:  3px
}	

.product_list_tips{
	border: 1px solid #ccc;
	width: 10%;
	padding:  3px
}
.product_list_comment{
	border: 1px solid #ccc;
	width: 20%;
	padding:  3px;
	text-align: left
}
.product_list_information{
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	width: 25%;
	padding:  3px;
	text-align:left
}
.product_list_addtocart{
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	width: 5%;
	padding:  3px;
text-align: left}
.product_list_bilde{
border: 1px solid #ccc;
	width: 5%;
	padding:  3px
}
.product_list_km{
border: 1px solid #ccc;
	width: 5%;
	padding:  3px
}
.filter_date {
	float:left;
	padding: 5px;
	color: #6D6D6D;
	text-align:left;
	font-size: 12px;

}
.filter_type {
	float:left;
	padding: 5px;
	color: #6D6D6D;
	text-align:left;
	font-size: 12px;
}
.user_main_sadala {
	width: 100%;
	padding:  5px;
	border-bottom: solid 1px #006699;
	color: #006699;
	font-size:  16px;
	font-weight:  bold;
}
.dash_content {
	flex: 1;
	background-color: #F6F6F6;
	/*margin-left: 235px;*/	
		padding: 15px;
			/*border: solid 1px #ccc*/
	float: left;
}
.product_list_div {
	margin-top: 20px;
	border: solid 1px #ccc;
	width:100%;
	padding: 10px;
    box-sizing: border-box;
	border-radius:  10px;
	overflow:hidden;

}
.adder_select {
	font-size: 11px;
	padding: 5px;
	border-radius: 5px;
}
.adder_textarea {
	width: 400px;
	height: 150px;
	border: solid 1px #ccc;
	border-radius: 5px;
}
.adder_time {
	font-size: 16px;
	width:20px;
	border-radius: 5px;
	padding: 5px;
	margin: 5px
}
.adder_year {
font-size: 16px;
width:40px;
border-radius: 5px;
padding: 5px;
	margin: 5px;
}
.com_sar {
background-color: #D0D0D0;
margin: 2px;
border-radius: 5px;
width:20px;
height: 50px
}


.add-temp {	
width: 70px
}

.status_bg_gr {
	background-color: #D0F0D2;
}
.status_bg_red {
	background-color: #F5DBDC;
}
.filtr_skats {
	border-radius: 3px;
	margin-top:  5px;
	padding: 3px;
	color: #4E4E4E;
	font-size: 11px
}
.filtr_opt {
	color: #4E4E4E;
	font-size: 11px
}
.add_new_btt {
	border-radius: 5px;
	border: 1px solid  #FFF;
	margin-top:  -3px;
	background-color:#54D2EA;
	padding: 8px;
	color: #FFFFFF;
	font-size: 10px;
	text-decoration: none;
}
.add_new_btt:hover {
	border-radius: 5px;
	border: 1px solid  #FFF;
	margin-top:  -3px;
	background-color: #1CB5D8;	
	padding: 8px;
	color: #FFFFFF;
	font-size: 10px;
	text-decoration: none;
}
.add_new_btt_2 {
	border-radius: 5px;
	border: 1px solid  #FFF;
	background-color:#54D2EA;
	padding: 3px;
	color: #FFFFFF;
	font-size: 10px;
	text-decoration: none;
}
.add_new_btt_2:hover {
	border-radius: 5px;
	border: 1px solid  #FFF;
	background-color: #1CB5D8;	
	padding: 3px;
	color: #FFFFFF;
	font-size: 10px;
		text-decoration: none;
}
.add_new_btt_3 {
	border-radius: 5px;
	border: 1px solid  #FFF;
	background-color:#54D2EA;
	padding: 5px;
	color: #FFFFFF;
	font-size: 10px;
	margin-top: 5px;
		text-decoration: none;
}
.add_new_btt_3:hover {
	border-radius: 5px;
	border: 1px solid  #FFF;
	background-color: #1CB5D8;	
	padding: 5px;
	color: #FFFFFF;
	font-size: 10px;
	margin-top: 5px;
	text-decoration: none;
}

.del_btt {
	border-radius: 5px;
	border: 1px solid  #FFF;
	margin-top:  -3px;
	background-color:#54D2FF;
	padding: 8px;
	color: #FFFFFF;
	font-size: 10px
}
.del_btt:hover {
	border-radius: 5px;
	border: 1px solid  #FFF;
	margin-top:  -3px;
	background-color: #1CB5D8;	
	padding: 8px;
	color: #FFFFFF;
	font-size: 10px
}

.page_next_a {
	
	border-radius: 5px;
	border: 1px solid  #FFF;
	margin:  10px;
	background-color:#54D2EA;
	padding: 8px;
	color: #FFFFFF;
	font-size: 10px
	
}
.page_next_a:hover {
	
	border-radius: 5px;
	border: 1px solid  #FFF;
	margin:  10px;
	background-color: #1CB5D8;	
	padding: 8px;
	color: #FFFFFF;
	font-size: 10px
	
}
.page_prev_a {
	border-radius: 5px;
	border: 1px solid  #FFF;
	margin:  10px;
	background-color:#54D2EA;
	padding: 8px;
	color: #FFFFFF;
	font-size: 10px
	
}
.page_prev_a:hover {
	float: left;
	border-radius: 5px;
	border: 1px solid  #FFF;
	margin:  10px;
	background-color: #1CB5D8;	
	padding: 8px;
	color: #FFFFFF;
	font-size: 10px
	
}
.pagenator {
            display: flex;
            justify-content: center;  /* Centers horizontally */
            background-color: #f4f4f4;
        }
        .container {
            display: flex;
            gap: 20px; /* Space between divs */
        }
        .box {
			color: #6D6D6D;
			font-size: 12px;
            display: flex;
            justify-content: center;
            align-items: center;

        }
.side-box {
            display: flex;
            justify-content: center;
            align-items: center;
            
        }
 .wrapper {
	 color: #6D6D6D;
			font-size: 12px;
            display: flex;
            width: 100%;             /* Full width */
            justify-content: space-between; /* Ensures left div is at left and others are centered */
            align-items: center;     
        }
.pagenator_c {
	float: left;
	border-radius: 5px;
	border: 1px solid  #1CB5D8;
	margin:  10px;
	background-color: #fff;	
	padding: 8px;
	color: #000;
	font-size: 12px;
	width: 20px
}
.tools_search {
	border-radius: 5px;
	border: solid 1px #4E4E4E;
	margin-top:  9px;
	padding: 4px;
	color: #4E4E4E;
	font-size: 15px;
	width: 400px;
	max-width: 400px;
	height: 25px

}


.tools_drop_list {
  display: none;
  position: absolute;
  background: white;
  border: 1px solid #ccc;
  max-height: 350px;
  overflow-y: auto;
  width: 350px;
  box-sizing: border-box;
  z-index: 999;
  padding: 0;
  margin: 0;
}
        .tools_drop_list .item {
            padding: 8px;
            cursor: pointer;
        }
        .tools_drop_list .item:hover {
            background: #f0f0f0;
        }
.tools_drop_list {
  display: none;
}

.tools_drop_list:empty {
  display: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: 0 !important;
}
.ier_hr {border-top: 1px dashed #EFEFEF}
.product_item {
            width: calc(50% - 5px);
            background-color: white;
            border: 1px solid #ddd;
            border-radius: 6px;
            padding: 7px;
            box-sizing: border-box;
            min-height: 100px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-family: Arial, sans-serif;
            color: #333;
            transition: box-shadow 0.2s ease;
        }
.product_item_big {
            width: calc(100% - 5px);
            background-color: white;
            border: 1px solid #ddd;
            border-radius: 6px;
            padding: 7px;
            box-sizing: border-box;
            min-height: 100px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-family: Arial, sans-serif;
            color: #333;
            transition: box-shadow 0.2s ease;
        }
        
        .product_item:hover {
            box-shadow: 0 2px 8px rgba(0,0,0,0.1);
        }
.product_list_div_2 {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            padding: 20px;
            background-color: #f5f5f5;
            border-radius: 8px;
	vertical-align:  top
        }
        
        .product_item {
    width: calc(50% - 5px); /* account for gap */
    box-sizing: border-box;
    padding: 7px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
	align-self: flex-start;
}
        
        .product_item:hover {
            box-shadow: 0 2px 8px rgba(0,0,0,0.1);
        }
        
     
           
        .status-darba {
            border-color: #28a745 !important;
            border-width: 3px !important;
        }
        
        .status-rezerve {
            border-color: #ffc107 !important;
            border-width: 3px !important;
        }
        
        .status-other {
            border-color: #dc3545 !important;
            border-width: 3px !important;
        }
        
        .inner_column h1 {
            margin: 0 0 10px 0;
            font-size: 16px;
            font-weight: bold;
        }
        
        .data_info {
            font-size: 12px;
            margin: 5px 0;
        }
.inner_columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 10px;
}

.inner_column {
    background-color: #f9f9f9;
    border: 2px solid #e0e0e0;
    border-radius: 4px;
    padding: 15px;
    text-align: left;
    mheight: 50px;
}

.data_stat_full {
    grid-column: 1 / -1; /* span both columns */
    background-color: #eef1f4;
    border-radius: 6px;
    border: 1px solid #ccc;
    padding: 5px;
  
	width: 100%;
}
.inner_columns,
.data_stat_full {
    width: 100%;
    box-sizing: border-box;
	min-height: 65px
}
.container_row {
     display: flex;
    width: 100%;
    gap: 10px; /* optional: controls spacing between boxes */
}

.container_box {
    width: calc((100% - 50px) / 6);
    height: 150px;
    background-color: #f9f9f9;
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 5px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

.fill_wrapper {
    width: 100%;
    height: 70%;
    background: #e0e0e0;
    border-radius: 4px;
    overflow: hidden;
    position: relative;
}

.fill_bar {
    width: 100%;
    background: #28a745;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: height 0.3s;
}

.fill_label {
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    margin-top: 5px;
}

.naoh_wrapper {
    display: flex;
    justify-content: center; /* center horizontally */
    align-items: center;
    gap: 20px;
    margin-top: 10px;
}

.naoh_box {
    width: 150px;
    height: 150px;
    border: 1px solid #ccc;
    border-radius: 6px;
    background-color: #f9f9f9;
    padding: 5px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

.fill_wrapper {
    width: 100%;
    height: 70%;
    background: #e0e0e0;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
}

.fill_bar {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: height 0.3s;
}

.fill_label {
    font-size: 12px;
    font-weight: bold;
    text-align: center;
}
.adder_input, .adder_select {
    padding: 6px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
   /* width: 100%;*/
    box-sizing: border-box;
}
.add-temp {
    padding: 6px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
    
    box-sizing: border-box;
}
.form_section {
    border: 1px solid #bbb;
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 6px;
    background: #f9f9f9;
}
.form_section label {
    font-weight: bold;
    display: block;
    margin-bottom: 4px;
	font-size: 12px
}
.product_listing {
    width: 100%;
    border-collapse: collapse;
}
.header_flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}


body.nfc_reader {
    background: #ffffff !important;
}

.nfc_box {
    max-width: 400px;
    margin: 80px auto;
    background: #ffffff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 0 15px rgba(0,0,0,0.15);
    text-align: center;
}

.nfc_box input {
    width: 100%;
    padding: 10px;
    margin: 10px 0;
    border-radius: 6px;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

.nfc_box .add_new_btt {
    padding: 10px 20px;
    font-size: 16px;
    border: none;
    border-radius: 8px;
    background-color: #2c7be5;
    color: white;
    cursor: pointer;
    width: 100%;
}

.logo_size {
    max-height: 55px;
    max-width: 105px;
    display: block;
    margin: 0 auto 15px auto;
}

.error {
    color: red;
    margin-bottom: 15px;
    font-weight: bold;
}

  .product_listing th, .product_listing td {
        border: 1px solid #ccc;
        padding: 8px;
        vertical-align: top;
    }
    .product_listing {
        border-collapse: collapse;
    }
    .desc-tooltip {
        position: relative;
        cursor: pointer;
    }
    .desc-tooltip .full-text {
        visibility: hidden;
        background-color: #f9f9f9;
        border: 1px solid #ccc;
        padding: 10px;
        position: absolute;
        z-index: 1;
        width: 300px;
        top: 100%;
        left: 0;
        white-space: normal;
    }
    .desc-tooltip:hover .full-text {
        visibility: visible;
   
}

.form_edit_group {
    margin-bottom: 15px;
}

.form_edit_group label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
}

.form_edit_input {
    width: 400px;
    padding: 6px 10px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 14px;
}
.form_edit_input_users {
    width: 140px;
    padding: 6px 10px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 14px;
}

.form_edit_textarea {
    width: 100%;
    max-width: 600px;
    height: 100px;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 14px;
}

.form_section_title {
    margin-top: 30px;
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: bold;
}

.form_section_note {
    font-size: 12px;
    color: #666;
    margin-bottom: 10px;
}
.tab-content {
    display: none;
}
.tab-content.active {
    display: block;
}
.login_container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh; /* pilns logs vertikāli */
    padding: 20px;
}

.login_card {
    background: white;
    padding: 30px 40px;
    border-radius: 16px;
    box-shadow: 0 0 15px rgba(0,0,0,0.1);
    max-width: 400px;
    width: 100%;
}

.login_title {
    margin-bottom: 25px;
    text-align: center;
    font-size: 22px;
}

.login_input_group {
    margin-bottom: 15px;
    display: flex;
    flex-direction: column;
}

.login_input_group label {
    font-size: 14px;
    margin-bottom: 5px;
}

.login_input {
    padding: 10px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 8px;
}

.login_button {
    background-color: #2b6cb0;
    color: white;
    border: none;
    padding: 10px 20px;
    font-size: 16px;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.2s ease;
}

.login_button:hover {
    background-color: #2c5282;
}

/* --- Tab style: prefixed with .tabx- to avoid conflicts --- */

.tabx-wrapper {
  width: 100%;
  min-height: 100vh;
  padding-bottom: 80px; /* ja poga apakšā aizklājas */
  box-sizing: border-box;
}

ul.tabx-tabs {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  height: 80px;
}
ul.tabx-tabs li {
  flex: 1;
}
ul.tabx-tabs li a {
  display: block;
  margin-top: 45px;
  padding: 5px 0 0 0;
  height: 30px;
  text-align: center;
  font-size: 12px;
  color: #444;
  background: #9EE7F4;
  text-decoration: none;
  border-radius: 8px 8px 0 0;
  transition: 0.2s ease;
  box-shadow: 0px 4px 10px rgba(0,0,0,0.2);
	border-top: 2px solid #72655F;
  border-left: 2px solid #72655F;
  border-right: 2px solid #72655F;
}
ul.tabx-tabs li a:hover {
  margin-top: 45px;
  padding-top: 5px;
}
ul.tabx-tabs li a.activeTab {
  margin-top: 45px;
  padding-top: 5px;
  background: #54D2EA;
  border-top: 2px solid #72655F;
  border-left: 2px solid #72655F;
  border-right: 2px solid #72655F;
  z-index: 10;
  color: #000;
}

.tabx-content-wrapper {
  background: #ffffff;
  padding: 20px;
  border: 2px solid #72655F;
  border-top: none;
  border-radius: 0 0 8px 8px;
  box-shadow: 0px 8px 15px rgba(0,0,0,0.2);
  margin-bottom: 30px;
}
.tabx-tab-content {
  display: none;
}
.tabx-tab-content.active {
  display: block;
}

 .container_row_visual {
    display: flex;
    justify-content: space-around;
    width: 100%;
    max-width: 100%;
    padding: 20px;
    box-sizing: border-box;
  }
  .container_box {
    text-align: center;
    width: 14%;
  }
  .fill_wrapper {
    height: 150px;
    width: 100%;
    background: #eee;
    border: 1px solid #ccc;
    position: relative;
    border-radius: 4px;
    overflow: hidden;
  }
  .fill_bar {
    position: absolute;
    bottom: 0;
    width: 100%;
  }
  .fill_label {
    margin-top: 5px;
    font-size: 14px;
  }


.kg_section {
  max-width: 760px;
  margin: auto;
  background: #f9f9f9;
  padding: 15px;
  border: 1px solid #ccc;
  border-radius: 8px;
  margin-bottom: 20px;
}
.kg_section label {
  font-weight: bold;
  font-size: 10px;
}
.kg_row {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 10px;
}
.kg_col {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
}
.kg_col input[type="text"] {
  width: 95px;
  padding: 6px;
  border-radius: 6px;
  border: 1px solid #aaa;
  text-align: center;
}
.kg_submit {
  margin-top: 20px;
  text-align: center;
}
.kg_radiation {
  font-size: 12px;
  margin-top: 5px;
  font-weight: normal;
}
.kg_col label {
  margin-bottom: 5px;
}
.top_select_shift {
    float: left;
    padding: 10px;
    margin: 5px;
    font-size: 14px;
}
#grafiksEditor {
    display: none;
    position: fixed;
    top: 5%;
    left: 5%;
    width: 90%;
    height: 90%;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 0 20px rgba(0,0,0,0.3);
    overflow: auto;
    z-index: 1000;
    padding: 20px;
}

.editable-cell span {
    display: inline-block;
    cursor: pointer;
    min-width: 20px;
    text-align: center;
}
.editable-cell input {
    display: none;
    width: 20px;
    text-align: center;
}
.text-center {
    text-align: center;
}
.name-cell {
    white-space: nowrap;
	overflow: hidden;
    text-overflow: ellipsis;
	 text-align: left !important;
}

.grafiks_listing {
  border: 1px solid #ccc;
  border-collapse: collapse;
  font-size: 9px;
  color: #006699;
  overflow-x: auto;
	width: 100%
}

.grafiks_listing th,
.grafiks_listing td {
  padding: 5px;
  white-space: nowrap;
  text-align: center;
	border: 1px solid #ccc;
}
.grafiks_table td,
.grafiks_table th {
    padding: 5px;
	text-align: center;
}

#editorPopup {
    display: none;
    position: fixed;
    top: 2%;
    left: 2%;
    width: 96%;
    height: 96%;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 0 25px rgba(0,0,0,0.3);
    overflow: hidden;
    z-index: 1000;
    padding: 0;
}

#editorPopup .popup_inner {
    width: 100%;
    height: 100%;
    overflow: auto;
    padding: 20px;
    box-sizing: border-box;
}
.today_highlight {
    background-color: #ccffcc !important;
}


.piebaro-cell input {
    display: inline-block;
    width: 60px;
    text-align: center;
    font-size: inherit;
    box-sizing: border-box;
    border: 1px solid #ccc;
}
.piebaro-cell input:focus {
    background-color: #ffffcc;
}

.rezerves_bloks {
  background-color: #f7fafd;
  border: 1px solid #c9e2f3;
  border-radius: 12px;
  padding: 20px;
  margin: 20px 0;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

.rezerves_bloks h3 {
  margin-top: 0;
  color: #256a92;
  font-size: 1.3em;
  border-bottom: 1px solid #c9e2f3;
  padding-bottom: 5px;
  margin-bottom: 15px;
}

.rezerves_bloks .add-temp {
  margin-bottom: 15px;
	width: 100%
}

.rezerves_bloks label {
  font-weight: bold;
  display: block;
  margin-bottom: 5px;
}

.rezerves_bloks input[type="text"] {
  width: 80%;
  max-width: 80%;
  padding: 5px;
  font-size: 14px;
  border: 1px solid #bcd6e6;
  border-radius: 6px;
  box-sizing: border-box;
  background-color: white;
}

.rezerves_bloks input[type="date"],
.rezerves_bloks select {
  width: 200px;
  max-width: 200px;
  padding: 5px;
  font-size: 14px;
  border: 1px solid #bcd6e6;
  border-radius: 6px;
  box-sizing: border-box;
  background-color: white;
}



.rezerves_bloks .add_new_btt {
  background-color: #3da7d4;
  color: white;
  padding: 10px 20px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-weight: bold;
  margin-top: 10px;
}

.rezerves_bloks .add_new_btt:hover {
  background-color: #3498c5;
}

.rezerves_bloks .success {
  background-color: #d1f0d1;
  border: 1px solid #9edc9e;
  padding: 10px;
  margin-top: 15px;
  border-radius: 6px;
}
.row-pieteikts {
  background-color: #fffacd; /* Light Yellow */
}
.row-apstiprinats {
  background-color: #f4cccc; /* Light Red */
}
.row-slegts {
  background-color: none; /* Light Grey */
}

.details-block {
  background-color: #f9f9f9;
  border: 1px dashed #bbb;
  padding: 10px;
  border-radius: 6px;
}

.details-row td {
  padding: 0;
}
.info-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}

.info-title {
  font-weight: bold;
  font-size: 1.1em;
}
.info-divider {
  border: none;
  border-top: 1px solid #ccc;
  margin: 5px 0 10px 0;
}

.edit-button {
  background-color: #3da7d4;
  color: white;
  padding: 6px 14px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-weight: bold;
}

.edit-button:hover {
  background-color: #3498c5;
}
/* Katra bloka stils */
.viewblock {
  background: #f8f8f8;
  padding: 10px;
  border-radius: 6px;
  border: 1px solid #ccc;
  min-height: 150px;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;margin: 1px;
}

/* Virsraksts katrā blokā */
.viewblock h4 {
  margin-top: 0;
  margin-bottom: 0px;
  color: #444;
  font-size: 1em;
  border-bottom: 1px solid #ddd;
  padding-bottom: 4px;
}
h4 {
	margin: 0px;
}

/* Teksta rindas */
.viewblock p {
  margin: 3px 0;
  font-size: 0.95em;
}

.info-table-full {
  width: 100%;
  border-collapse: collapse;
  margin-top: 10px;
  border: none;
}
.info-table-full td {

padding:10px;
	border: none
}
.success-box {
  background: #d4edda;
  padding: 10px;
  border: 1px solid #c3e6cb;
  color: #155724;
  margin-bottom: 10px;
  border-radius: 6px;
}
.dash_cat_root, .dash_cat_sub {
    width: 100%;
    box-sizing: border-box;
}

.dash_cat_root a,
.dash_cat_sub a {
    display: block;
    padding: 10px 14px;
    text-decoration: none;
    font-size: 12px;
    border-bottom: 1px solid #444;
    background-color: #2e2e2e;
    color: #f2f2f2;
    transition: background-color 0.2s ease;
    font-family: sans-serif;
}

.dash_cat_root a:hover,
.dash_cat_sub a:hover {
    background-color: #3a3a3a;
    color: #ffffff;
}

.dash_cat_root a {
    font-weight: bold;
    background-color: #1f1f1f;
    border-top: 1px solid #555;
}

.dash_cat_sub a {
    padding-left: 32px;
    background-color: #2b2b2b;
}

/* Hover efekts apakškategorijām */
.dash_cat_sub a:hover {
    background-color: #393939;
}

/* Papildus: izcelt "Aktuālie darbi" ar blink efektu, ja nepieciešams */
@keyframes blinkRed {
  0% { background-color: transparent !important; }
  50% { background-color: red; }
  100% { background-color: transparent!important; }
}

.alert-blink {
  animation: blinkRed 1s infinite;
border: 2px dashed red;
}

.wood_form_block {
    border: 1px solid #ccc;
    padding: 20px;
    margin-top: 15px;
    background: #f9f9f9;
    border-radius: 10px;
    max-width: 700px;
}

.wood_form_row {
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
}

.wood_form_row label {
    font-weight: bold;
    margin-bottom: 4px;
    color: #444;
}

.wood_input,
.wood_select {
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid #aaa;
    font-size: 14px;
    width: 100%;
    box-sizing: border-box;
}

.wood_submit_btn {
    background-color: #4CAF50;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 6px;
    font-size: 16px;
    cursor: pointer;
    margin-top: 10px;
}

.wood_submit_btn:hover {
    background-color: #45a049;
}

.wood_plus_btn {
    margin-left: 10px;
    background: #54D2EA;
    border: none;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 16px;
    cursor: pointer;
}
input[type="date"].wood_input {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid #aaa;
    font-size: 14px;
    width: 100%;
    box-sizing: border-box;
    background-color: white;
    color: #333;
}
.wood_week_group {
    margin-bottom: 30px;
}

.wood_week_group h3 {
    background: #d2f4e3;
	
    padding: 8px 12px;
    border-radius: 6px;
    border-left: 5px solid #4da3ff;
    margin: 12px 0 8px 0;
}

.wood_contract_row {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.wood_contract_box {
    border: 1px solid #aaa;
    padding: 10px;
    border-radius: 8px;
    background: #fff;
        display: inline-block;
    width: 31%;
    height: auto;
    overflow: hidden;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.wood_contract_header {
    font-weight: bold;
    margin-bottom: 10px;
    text-align: center;
}

.wood_contract_days {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.wood_day_box {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 2px;
}
.wood_day_box {
    border: 1px solid #ccc;
    padding: 6px;
    margin: 4px;
    min-width: 120px;
    font-size: 13px;
    background: #f9f9f9;
}
.wood_day_m3, .wood_day_kg, .wood_day_car {
    font-size: 12px;
    margin-top: 2px;
}
.wood_week_table_block {
    margin-bottom: 40px;
}

.wood_contract_table {
    margin-top: 10px;
    border: 1px solid #ccc;
    padding: 10px;
    background: #fff;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.05);
}

.contract_meta {
    font-size: 14px;
    margin-bottom: 10px;
}

.wood_table_view {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}
.wood_day_table {
    display: inline-block;
    width: 100%;
    height: auto;
    overflow: hidden;
}

.wood_table_view th,
.wood_table_view td {
    border: 1px solid #ccc;
    padding: 5px 5px;
    text-align: center;
}
.wood_table_view thead {
    background: #f1f1f1;
    font-weight: bold;
}
.wood_excel_table {
    width: 100%;
    border-collapse: collapse;
    font-size: 10px;
}
.wood_excel_table_dly {
    width: auto;
    border-collapse: collapse;
    font-size: 10px;
}
.wood_excel_table_dly th, .wood_excel_table_dly td {
    border: 1px solid #ccc;
    padding: 4px 6px;
    text-align: center;
}

.wood_excel_table_dly th {
    background-color: #f2f2f2;
    font-weight: bold;
}

.wood_excel_table th, .wood_excel_table td {
    border: 1px solid #ccc;
    padding: 4px 6px;
    text-align: center;
}

.wood_excel_table th {
    background-color: #f2f2f2;
    font-weight: bold;
}
.wood_contract_header {
    position: relative;
    padding-right: 30px;
}

.wood_contract_delete_btn {
    position: absolute;
    top: 0;
    right: 0;
    color: red;
    font-size: 18px;
    text-decoration: none;
    padding: 4px 8px;
    cursor: pointer;
}

.wood_contract_delete_btn:hover {
    background-color: #440000;
    color: white;
}
 .form_row {
    margin-bottom: 15px;
  }
  .form_row input[type="number"],
  .form_row input[type="date"] {
    padding: 6px;
    width: 200px;
  }
  .form_row label {
    margin-right: 10px;
  }


.stat-page-wrapper {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  width: 100%;
}
.stat-block {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow-x: auto;
  border-radius: 15px;
  background: #f9f9f9;
  padding: 10px 20px;
  margin-bottom: 10px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
  border: solid 1px #929292;
}

.stat-toggle-header {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 10px;
	 margin-top: 5px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
}

.stat-toggle-header .arrow {
  font-size: 14px;
  transform: translateY(1px);
}

.stat-block-content {
  display: block;
}

.stat-period-row {
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.stat-period-row select,
.stat-period-row input[type="date"] {
  padding: 6px 10px;
  border-radius: 6px;
  border: 1px solid #ccc;
  font-size: 14px;
}

.stat-columns-horizontal {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-top: 15px;
}

.stat-side {
  flex: 1;
  min-width: 280px;
}

.stat-side h5 {
  margin-bottom: 10px;
  font-size: 16px;
  color: #333;
}

.stat-side label {
  display: block;
  margin-bottom: 6px;
  font-size: 14px;
}

.stat-options-row {
  margin-top: 20px;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.stat-options-row label {
  font-size: 14px;
}

.stat-generate-btn {
  padding: 8px 16px;
  background: #54D2EA;
  color: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.2s ease;
}

.stat-generate-btn:hover {
  background: #3cbcd1;
}

/* == RS DATI sadaļa == */
.rsd_container {
  background: white;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  font-family: sans-serif;
}
.rsd_topbar {
  background: #f0f0f0;
  padding: 10px;
  text-align: right;
  border-bottom: 1px solid #ccc;
}
.rsd_close_btn {
  background: #ccc;
  border: none;
  padding: 6px 12px;
  cursor: pointer;
  font-weight: bold;
  border-radius: 4px;
}
.rsd_conditions {
  background: #eaeaea;
  padding: 5px;
  border-bottom: 1px solid #ccc;
}
.rsd_content {
  display: flex;
  width: 100%;
  height: calc(100% - 140px);
}
.rsd_graph_area {
  flex: 1;
  padding: 20px;
  overflow: auto;
  min-height: 300px;
  background: #fff;
}
.rsd_sidebar {
  width: 400px;
  background: #f5f5f5;
  padding: 20px;
  border-left: 1px solid #ccc;
  box-sizing: border-box;
}
.rsd_sidebar h3 {
  margin-top: 0;
}
.rsd_prediction_block,
.rsd_suggestion_block {
  padding: 5px;
  margin-bottom: 5px;
  border: 1px solid #ddd;
  border-radius: 4px;
}
.rsd_conditions {
  margin: 10px;
}
.rsd_conditions h2 {
  margin-bottom: 10px;
}
.rsd_conditions .rsd_device_box {
  border: 1px solid #ccc;
  padding: 8px;
  border-radius: 6px;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-size: 13px;
  background: #f9f9f9;
}
.rsd_conditions .rsd_device_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.rsd_conditions .rsd_device_box input[type="text"] {
  width: 50px;
}
.rsd_conditions_toggle { cursor: pointer; user-select: none; font-weight: bold; margin-bottom: 5px; }
.rsd_conditions .rsd_device_box {
  border: 1px solid #ccc;
  padding: 8px;
  border-radius: 6px;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-size: 13px;
  background: #f9f9f9;
}
.rsd_conditions .rsd_device_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.rsd_conditions .rsd_device_box input[type="text"] {
  width: 50px;
}
.udensblock-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-between;
    margin-top: 20px;
}

.udensblock-card {
    width: 45%; /* Katrs div aizņem ~50% ar nelielu atstarpi */
    background-color: #f9f9f9;
    border: 1px solid #d0d0d0;
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
    transition: transform 0.2s ease;
}

.udensblock-card:hover {
    transform: translateY(-3px);
    background-color: #f0fcff;
}


.udensblock-card p {
    margin: 4px 0;
    font-size: 0.95em;
    color: #444;
}
.udensblock-card h5 {
    margin-bottom: 0;
    font-size: 1.1em;
    color: #006699;
	margin-top: 0;
}

.udensblock-card small {
    display: block;
    margin-top: 0;
    font-size: 0.9em;
    color: #666;
}

  .stat_prev_container { font-family: Arial, sans-serif; padding: 20px; }
  .stat_prev_table { border-collapse: collapse; width: 100%; margin-top: 20px; }
  .stat_prev_table th,
  .stat_prev_table td { border: 1px solid #ccc; padding: 3px; text-align: center; font-size: 12px; }
  .stat_prev_table th { background: #eee; }
  .stat_prev_canvas {  width: 50%;  max-width: 100%;  margin: 30px 0;}
  .stat_prev_two_columns { display: flex; gap: 30px; align-items: flex-start; }
  .stat_prev_column { flex: 1; }
  .stat_prev_chart_row { display: flex; gap: 30px; flex-wrap: wrap; }
  .stat_prev_chart_col { width: 48%;
  max-width: 48%; }
.stat_prev_canvas_f {
  width: 100% !important;
  max-width: 100% !important;
  height: 800px; /* vai cik augstu vēlies */
  display: block;
  margin: 0 auto;
}

.actions-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  gap: 12px;
}
.actions-left,
.actions-right {
  display: flex;
  align-items: center;
  gap: 8px;
}

.dropdown {
  position: relative;
}
.dropdown-menu {
  position: absolute;
  top: 110%;
  left: 0;
  min-width: 240px;
  background: #fff;
  border: 1px solid #72655F;
  border-radius: 8px;
  box-shadow: 0 6px 16px rgba(0,0,0,0.15);
  display: none;
}
.dropdown.open .dropdown-menu {
  display: block;
}
.dropdown-menu a {
  display: block;
  padding: 10px 12px;
  text-decoration: none;
  color: #111;
  border-bottom: 1px solid #eee;
}
.dropdown-menu a:last-child {
  border-bottom: 0;
}

.settings-panel {
  display: none;
  padding: 12px;
  border: 1px solid #72655F;
  border-radius: 8px;
  background: #fff;
  margin: 10px 0 16px 0;
}
.settings-panel.visible {
  display: block;
}

.norikojumi-table {
  width: 100%;
  border-collapse: collapse;
}
.norikojumi-table th,
.norikojumi-table td {
  border: 1px solid #cfd8dc;
  padding: 5px;
  vertical-align: top;
	font-size: 12px
}

.badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
}
.badge-open {
  background: #E3F2FD;
}
.badge-closed {
  background: #E8F5E9;
}
.row-actions a {
  margin-right: 8px;
}
/* Remontdarbu veidlapas stils – viss ārējā CSS */
.rd-wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 20px auto;
}

.rd-header {
  margin-bottom: 12px;
  border-bottom: 2px solid #72655F;
  padding-bottom: 8px;
}
.rd-title {
  font-size: 20px;
  font-weight: 800;
  margin: 0 0 4px 0;
}
.rd-subtitle {
  color: #555;
  font-size: 14px;
}

.rd-section {
  width: 100%;
  background: #fff;
  border: 1px solid #000;
  border-radius: 8px;
  margin: 10px 0;
  padding: 12px;
  box-sizing: border-box;

}

.rd-section.red {
  width: 100%;
  background: #E9CECF;
  border: 2px solid #8A0508;
  border-radius: 8px;
  margin: 10px 0;
  padding: 12px;
  box-sizing: border-box;

}
.rd-section__title {
  font-weight: 700;
  margin-bottom: 8px;
  color: #111;
}
.rd-section__body {
  /* tukšs – saturu pievienosim pakāpeniski */
  min-height: 24px;
}

.rd-actions {
  display: flex;
  gap: 8px;
  margin-top: 16px;
}
.rd-btn-secondary {
  background: #9EE7F4;
  border: 1px solid #72655F;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 8px;
  color: #000;
}

/* Piemēram, vienotība ar .product_list_div saturu */
.product_list_div .rd-wrap {
  max-width: 100%;
}
.rd-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(240px, 1fr));
  gap: 12px;
	width: 100%;
}
.rd-col-2 { grid-column: span 2; }

.rd-field label {
  display: block;
  font-weight: 600;
  margin-bottom: 4px;
	font-size: 12px
}
.rd-field span {

  font-weight: 600;

	font-size: 12px
}

.rd-field input[type="text"],
.rd-field input[type="date"],
.rd-field input[type="time"],
.rd-field select {
  width: 100%;
  padding: 8px 10px;
  border: 1px solid #cfd8dc;
  border-radius: 6px;
	box-sizing: border-box;
}


.rd-note {
  margin-top: 6px;
  font-size: 12px;
  color: #666;
}

/* 03. Objekts */
.rd-object { display: grid; gap: 10px; }
.rd-object__row { display: flex; align-items: center; gap: 10px; }
.rd-object__km { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.rd-object__input {
  flex: 1;
  min-width: 280px;
  padding: 8px 10px;
  border: 1px solid #cfd8dc;
  border-radius: 6px;
}
.rd-check { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }

/* Lai neiet ārpus .product_list_div */
.product_list_div .rd-wrap {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
	vertical-align: top
}

/* RD sekcijas pielāgojums */


/* Mazais input numerācijai */
.small-input {
  max-width: 120px;
}
.large-input {
 width: 100%;
}
.rd-check {
	font-size: 12px
}

  .badge { padding:2px 8px; border-radius:999px; font-size:12px; display:inline-block; border:1px solid transparent; }
  .badge-open { background:#E8FFF2; border-color:#9BE5BA; }
  .badge-closed { background:#FFF1F1; border-color:#F3B6B6; }
  .row-actions a { text-decoration:none; margin-right:10px; }
  .row-actions .icon { margin-right:4px; }
 .norikojumi-table { width:100%; border-collapse:collapse; background:#fff; }
  .norikojumi-table th, .norikojumi-table td { padding:8px 10px; border-bottom:1px solid #eee; }
  .norikojumi-table th { background:#f7f7f7; text-align:left; white-space:nowrap; }
  .badge { padding:2px 8px; border-radius:999px; font-size:12px; display:inline-block; border:1px solid transparent; }
  .badge-open { background:#E8FFF2; border-color:#9BE5BA; }
  .badge-closed { background:#FFF1F1; border-color:#F3B6B6; }
  .row-actions a { text-decoration:none; margin-right:10px; }
  .row-actions .icon { margin-right:4px; }
  .pager { display:flex; gap:8px; align-items:center; justify-content:flex-end; margin-top:10px; flex-wrap:wrap; }
  .pager .pages a { padding:4px 8px; border:1px solid #ddd; border-radius:6px; text-decoration:none; }
  .pager .pages a.active { background:#54D2EA; border-color:#54D2EA; color:#000; }
  .pager .perpage select { padding:4px 8px; }
  .pager .perpage select { padding:4px 8px; }


/* ================================
   QUIZ MODULE STYLES (RBE Custom)
   ================================ */

.quiz-container {
    width: 100%;
    max-width: 1350px;
    margin: 0 auto;
    padding: 20px;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 0 10px #0001;
}

.quiz-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.quiz-header h2 {
    margin: 0;
    padding-left: 0;
    font-size: 26px;
    color: #333;
    font-weight: bold;
}

/* Poga */
.quiz-btn-jautajumi {
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 12px;
    text-decoration: none;
    color: #fff;
    cursor: pointer;
}

.quiz-btn-add {
    background: #28a745;
	margin-top: 20px
}

.quiz-btn-add:hover {
	margin-top: 20px
}


/* Tabula */
.quiz-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 15px;
}

.quiz-table th {
    background: #f0f0f0;
    text-align: left;
    padding: 10px;
    font-weight: bold;
    color: #444;
    border-bottom: 2px solid #ddd;
}

.quiz-table td {
    padding: 10px;
    border-bottom: 1px solid #eee;
    color: #333;
}

.quiz-table tr:hover td {
    background: #fafafa;
}

/* Links */
.quiz-link {
    color: #007bff;
    text-decoration: none;
}

.quiz-link:hover {
    text-decoration: underline;
}

.quiz-link-del {
    color: #d9534f;
}

.quiz-sep {
    padding: 0 6px;
    color: #888;
}

/* Error */
.quiz-error {
    padding: 12px;
    background: #ffefef;
    color: #b30000;
    border: 1px solid #ddc4c4;
    border-radius: 6px;
    margin-bottom: 15px;
}

.quiz-form {
    max-width: 600px;
    margin-top: 10px;
}

.quiz-form-row {
    margin-bottom: 18px;
    display: flex;
    flex-direction: column;
}

.quiz-form-row label {
    font-weight: bold;
    margin-bottom: 6px;
}

.quiz-form-row input[type="text"],
.quiz-form-row input[type="number"],
.quiz-form-row textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 15px;
}

.quiz-form-row textarea {
    height: 120px;
}

.quiz-form-actions {
    margin-top: 20px;
    display: flex;
    gap: 15px;
}
.quiz-block {
    margin-top: 30px;
    padding: 20px;
    border: 1px solid #ddd;
    background: #fafafa;
    border-radius: 8px;
}

.quiz-block h3 {
    margin-top: 0;
    font-size: 20px;
}
/* ==========================
   QUIZ TREE VIEW
   ========================== */

.quiz-tree {
    margin-top: 25px;
    padding-left: 10px;
    border-left: 3px solid #ccc;
	 font-size: 10px;
}

.quiz-tree-item {
    margin: 10px 0;
    padding-left: 20px;
    position: relative;
}

.quiz-tree-item:before {
    content: "";
    position: absolute;
    left: -12px;
    top: 8px;
    width: 10px;
    height: 1px;
    background: #aaa;
}

.quiz-tree-question {
    font-weight: bold;
    margin-bottom: 5px;
}

.quiz-tree-actions a {
    font-size: 13px;
    margin-right: 10px;
}

.quiz-tree-answers {
    margin: 5px 0 10px 20px;
    border-left: 2px dashed #ddd;
    padding-left: 10px;
}

.quiz-tree-answer {
    font-size: 10px;
    margin: 3px 0;
}

.quiz-tree-answer.gochild {
    color: #0b7dda;
}

.quiz-tree-answer.rootjump {
    color: #cc5b00;
}


.quiz-actions .qa-add { color: #0a7dda; width:5px }    /* ➕ */
.quiz-actions .qa-edit { color: #666; }      /* ✏️ */
.quiz-actions .qa-del { color: #cc0000; }    /* 🗑️ */
.quiz-tree-question {
    display: inline-block;
    vertical-align: middle;
}

.quiz-actions {
    display: inline-block;
    margin-left: 10px;
    vertical-align: middle;
}

.quiz-actions {
    display: inline-flex;
    align-items: center;
    margin-left: 10px;
}

.quiz-actions a {
    text-decoration: none;
    margin-right: 6px;
    font-size: 18px;
    cursor: pointer;
}

.quiz-actions a:hover {
    opacity: 0.7;
}

.qa-add  { color: #0a7dda; }
.qa-edit { color: #666; }
.qa-del  { color: #cc0000; }
.quiz-edit-box {
    background: #fff;
    padding: 20px;
    margin-bottom: 25px;
    border: 1px solid #ddd;
    border-radius: 6px;
    box-shadow: 0 0 4px rgba(0,0,0,0.07);
}

.quiz-input-text {
    width: 100%;
    height: 80px;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.quiz-save-btn {
    padding: 8px 16px;
    background: #0a7dda;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.quiz-save-btn:hover {
    background: #055a9c;
}
/* ============================
   QUIZ ANSWER EDIT / ADD FORM
   ============================ */

.quiz-edit-box,
.quiz-answer-box {
    background: #ffffff;
    padding: 18px 22px;
    margin-bottom: 25px;
    border: 1px solid #dcdcdc;
    border-radius: 6px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}

.quiz-answer-box h3 {
    margin-top: 0;
    font-size: 20px;
    margin-bottom: 15px;
}

.quiz-question-view {
    background: #f7f7f7;
    padding: 12px 15px;
    border-radius: 4px;
    border: 1px solid #e2e2e2;
    margin-bottom: 20px;
    font-size: 16px;
}

/* INPUTS */

.quiz-input-text,
.quiz-input {
    width: 100%;
    padding: 9px 10px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    font-size: 15px;
    background: #fff;
    box-sizing: border-box;
}

.quiz-input-text:focus,
.quiz-input:focus {
    outline: none;
    border-color: #0a7dda;
    box-shadow: 0 0 4px rgba(10,125,218,0.25);
}

/* BUTTONS */

.quiz-save-btn {
    padding: 9px 22px;
    background: #0a7dda;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 15px;
    transition: 0.15s;
}

.quiz-save-btn:hover {
    background: #055A9C;
}

/* Back link */

.quiz-back-link {
    margin-top: 20px;
    display: inline-block;
    color: #0a7dda;
    text-decoration: none;
    font-size: 15px;
}

.quiz-back-link:hover {
    text-decoration: underline;
}

/* =============================
   QUIZ TREE ELEMENTS (ICONS)
   ============================= */

.quiz-actions {
    display: inline-flex;
    align-items: center;
    margin-left: 10px;
}

.quiz-actions a {
    text-decoration: none;
    font-size: 18px;
    margin-right: 8px;
    cursor: pointer;
}

.quiz-actions a:hover {
    opacity: 0.7;
}

.qa-add  { color: #0a7dda; font-weight: bold; }
.qa-edit { color: #444444; }
.qa-del  { color: #cc0000; }

/* =============================
   QUIZ TREE STRUCTURE LINES
   ============================= */


.quiz-tree-question,
.quiz-tree-answer {
    display: inline-flex;
    align-items: center;
    font-size: 15px;
}
/* =============================== */
/* TESTA NOSAUKUMS */
/* =============================== */
.quiz-test-title {
    background: #e8f4ff;
    border: 1px solid #b4d4ff;
    padding: 12px 16px;
    border-radius: 8px;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
    position: relative;
}

.quiz-badge {
    position: absolute;
    top: -12px;
    left: 15px;
    background: #1976d2;
    color: white;
    padding: 3px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: bold;
}

/* =============================== */
/* JAUTAJUMA BLOKS */
/* =============================== */
.quiz-question-box {
    background: #fff7e6;
    border: 1px solid #ffd591;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
    position: relative;
}

.quiz-q-badge {
    position: absolute;
    top: -12px;
    left: 15px;
    background: #fa8c16;
    color: white;
    padding: 3px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: bold;
}

.quiz-q-text {
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 10px;
}

/* =============================== */
/* BILDE */
/* =============================== */
.quiz-q-image img {
    max-width: 150px;
    border-radius: 6px;
    cursor: pointer;
    transition: 0.2s;
}

.quiz-q-image img:hover {
    opacity: 0.8;
}

/* PREVIEW MODAL */
.quiz-img-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    top:0; left:0; right:0; bottom:0;
    background: rgba(0,0,0,0.7);
    justify-content: center;
    align-items: center;
}

.quiz-img-modal img {
    max-width: 80%;
    max-height: 80%;
    border-radius: 10px;
}

.quiz-img-modal-close {
    position: absolute;
    top: 25px;
    right: 40px;
    font-size: 35px;
    color: white;
    cursor: pointer;
}

/* =============================== */
/* ATBILU BLOKS */
/* =============================== */
.quiz-answer-box {
    background: #e6fffb;
    border: 1px solid #87e8de;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 25px;
    position: relative;
}

.quiz-a-badge {
    position: absolute;
    top: -12px;
    left: 15px;
    background: #13c2c2;
    color: #fff;
    padding: 3px 10px;
    border-radius: 6px;
    font-weight: bold;
    font-size: 12px;
}

.quiz-answer-option {
    background: white;
    border: 1px solid #d9f7be;
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 6px;
    cursor: pointer;
    display: block;
}

.quiz-answer-option input {
    margin-right: 8px;
}

/* =============================== */
/* POGA TURPINAT */
/* =============================== */
.quiz-btn-next {
    background: #52c41a;
    color: white;
    padding: 10px 20px;
    border-radius: 6px;
    border: none;
    font-size: 18px;
    cursor: pointer;
}

.quiz-btn-next:hover {
    background: #389e0d;
}
.quiz-finish-box {
    background: #ffffff;
    padding: 30px;
    border-radius: 12px;
    border: 1px solid #d8e0e8;
    max-width: 600px;
    margin: 40px auto;
    text-align: center;
    box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

.quiz-finish-title {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 15px;
    color: #0a7dda;
}

.quiz-finish-summary {
    font-size: 20px;
    margin: 20px 0;
}

.quiz-btn-finish {
    display: inline-block;
    padding: 6px 12px;
    background: #2ecc71;
    color: white;
    font-weight: 300;
    border-radius: 8px;
    text-decoration: none;
    transition: 0.2s;
}

.quiz-btn-finish:hover {
    background: #27ae60;
}
.quiz-admin-container {
    max-width: 800px;
    margin: 0 auto;
}

.quiz-admin-user-box {
    position: relative;
    border: 1px solid #ccc;
    padding: 10px;
    border-radius: 8px;
    margin-bottom: 12px;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

/* Mazaks, elegantaks badge */
.quiz-admin-user-badge {
    position: absolute;
    top: -10px;          /* pacelam beidiku uz border linijas */
    left: 12px;
    background: #2a77ff;
    color: #fff;
    padding: 2px 8px;    /* mazaks padding */
    font-size: 12px;     /* mazaks fonts */
    border-radius: 6px; /* viegli apal */
    line-height: 1.2;
    box-shadow: 0 1px 2px rgba(0,0,0,0.15);
}

.quiz-admin-result-text {
    margin-bottom: 10px;
	font-size: 12px; 
}

.quiz-admin-progress {
    width: 100%;
    height: 16px;
    background: #ddd;
    border-radius: 8px;
    overflow: hidden;
}

.quiz-admin-progress-fill {
    height: 100%;
    background: #4CAF50; /* zal */
}
.q-correct {
    background: #e6ffea;
    border-left: 4px solid #34c759;
}

.q-wrong {
    background: #ffecec;
    border-left: 4px solid #ff3b30;
}

.q-missed {
    background: #f7f7f7;
    border-left: 4px solid #999;
    color: #777;
}

.q-neutral {
    background: #ffffff;
    padding-left: 10px;
}

.quiz-popup-bg {
    position: fixed;
    top:0; left:0; right:0; bottom:0;
    background: rgba(0,0,0,0.45);
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:9999;
}
/* Pop-up overlay */
.quiz-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    display: none;
    z-index: 9999;
    align-items: center;
    justify-content: center;
}

/* Popup iekejais logs */
.quiz-popup-inner {
    background: white;
    padding: 25px;
    border-radius: 10px;
    max-width: 700px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    position: relative;
}

/* Aizveranas poga */
.quiz-popup-close {
    position: absolute;
    top: 10px;
    right: 10px;
    background: transparent;
    border: none;
    font-size: 22px;
    cursor: pointer;
}
.quiz-admin-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin: 10px 0 25px 0;
}

.quiz-admin-progress {
    flex: 1;
    background: #eaeaea;
    height: 20px;
    border-radius: 10px;
    overflow: hidden;
}

.quiz-admin-progress-fill {
    height: 100%;
    background: #66BB6A; /* zalais progress */
    border-radius: inherit;
}
.quiz-btn-details {
    background: #1976D2;
    color: white;
    padding: 4px 7px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
    white-space: nowrap;
    transition: 0.2s;
}

.quiz-btn-details:hover {
    background: #1565C0;
}

.quiz-popup-header {
    margin-bottom: 15px;
}

.quiz-user-info {
    font-size: 16px;
    margin-bottom: 10px;
}

.quiz-tree-line {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 4px 0;
    font-size: 13px;
    line-height: 1.2;
    position: relative;
	border-bottom: solid 1px #ccc
}

.quiz-tree-prefix {
    min-width: 30px;
    color: #999;
    font-family: monospace;
    white-space: pre;
}

.quiz-tree-question {
    font-weight: 600;
    flex: 1;
    word-break: break-word;
}

.quiz-tree-answer {
    flex: 1;
    word-break: break-word;
}

.quiz-actions {
    min-width: 80px;
    text-align: right;
    white-space: nowrap;
}

.quiz-actions a {
    margin-left: 8px;
    font-size: 18px;
    text-decoration: none;
}

.quiz-tree-container {
   
    border-left: 0px solid #ddd;
}


.quiz-node {
   
    margin: 5px 0;
	 box-sizing: border-box;
}
.node-content {
    box-sizing: border-box;
}

.quiz-node .node-content {
    width: 100%;
    background: white;
    border-radius: 8px;
    padding: 0px 15px;
    border: 1px solid #dcdcdc;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Jautajumi (biezaki, spilgtaki) */
.quiz-node.question .node-content {
    background: #f9f9f9;
    font-size: 12px;
    font-weight: bold;
}

/* Atbildes (mazaks fonts, nav border-left) */
.quiz-node.answer .node-content {
    font-size: 10px;
    background: #fcfcfc;
}

/* Limeni  tikai eit border-left !!! */
.level-0  { margin-left: 0; }
.level-1  { margin-left: 35px;  border-left: 1px solid #ddd; padding-left: 15px; }
.level-2  { margin-left: 70px;  border-left: 1px solid #ddd; padding-left: 15px; }
.level-3  { margin-left: 105px; border-left: 1px solid #ddd; padding-left: 15px; }
.level-4  { margin-left: 140px; border-left: 1px solid #ddd; padding-left: 15px; }
.level-5  { margin-left: 175px; border-left: 1px solid #ddd; padding-left: 15px; }
.level-6  { margin-left: 210px; border-left: 1px solid #ddd; padding-left: 15px; }

/* Ikonas  bez underline */
.actions a {
    text-decoration: none !important;
    margin-left: 8px;
    font-size: 18px;
    color: #6a6a6a;
}

.actions a:hover {
    color: #000;
}



.quiz-back-btn {
    display: inline-block;
    background: #0a7dda;
    color: white !important;
    padding: 6px 6px;
    border-radius: 3px;
    font-size: 12px;
    text-decoration: none;
    transition: 0.2s;
}

.quiz-back-btn:hover {
    background: #065a9e;
}

.quiz-btn {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 3px;
    font-size: 12px;
    text-decoration: none;
    color: white !important;
    margin-right: 6px;
    transition: 0.2s;
    font-weight:300;
}
.quiz-actions-row {
    display: flex;
    gap: 6px;
    flex-wrap: nowrap;
    white-space: nowrap;
}


.btn-edit { background: #f09c3c; }
.btn-assign { background: #007bff; }
.btn-results { background: #28a745; }
.btn-delete { background: #dc3545; }
.btn-copy { background: #6c63ff; }
.quiz-block-list {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 12px;
    padding: 0px;
    padding: 0px;
    margin-bottom: 25px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}
.quiz-block-list h2 {
    margin: 0;
    padding: 10px 10px;
    font-size: 20px;
    color: #333;
    font-weight: bold;
}
.quiz-block-list .quiz-header h2 {
    margin: 0;
    padding: 10px 10px;
    font-size: 20px;
    color: #333;
    font-weight: bold;
}



.popup-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
}

.popup-box {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    padding: 20px;
    width: 300px;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.popup-box h3 {
    margin-top: 0;
}

.popup-box input {
    width: 100%;
    padding: 8px;
    margin: 10px 0;
}

.popup-actions {
    text-align: right;
}

.popup-actions button {
    margin-left: 5px;
}
.edit-contract-total {
    cursor: pointer;           
    display: inline-block;
    margin-left: 3px;
    padding: 2px 2px;
    border: 1px solid #999;     
    border-radius: 4px;
    background: #f9f9f9;
    font-size: 14px;
    line-height: 1;
    transition: all 0.15s ease;
}

.edit-contract-total:hover {
    background: #e9e9e9;
    border-color: #333;
}

.km-title {
    background: #e6f2ff;          /* gaii zils */
    padding: 6px 10px;
    border-radius: 6px;
    border: 1px solid #b3d7ff;
    margin: 10px 0 6px 0;
}

.km-title-accent {
    background: #eaf4ff;
    padding: 8px 12px;
    border-radius: 6px;
    border-left: 5px solid #4da3ff;
    margin: 12px 0 8px 0;
}




/* ===== ATSKAITES ===== */

.atsk-title {
    margin-left: 10px;
    font-size: 22px;
    font-weight: 600;
}

.atsk-container {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    margin: 20px 10px;
}

/* Viena atskaite (karte) */
.atsk-card {
    width: 25%;
    min-width: 300px;
    background: #ffffff;
    border-radius: 14px;
    padding: 25px;
    text-decoration: none;
    color: #000;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    display: flex;
    align-items: center;
    gap: 20px;
    transition: all 0.2s ease-in-out;
}

/* Hover efekts */
.atsk-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 18px rgba(0,0,0,0.12);
}

/* Ikona */
.atsk-icon {
    font-size: 48px;
    line-height: 1;
}

/* Teksts */
.atsk-text {
    display: flex;
    flex-direction: column;
}

.atsk-name {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
}
.atsk-block {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    margin: 15px 10px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
}

.atsk-back {
    text-decoration: none;
    font-weight: 600;
    color: #0077aa;
}

.atsk-back:hover {
    text-decoration: underline;
}

.atsk-error {
    padding: 20px;
    color: #a00;
    font-weight: 600;
}


.atsk-filter-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px;
    gap: 10px;
}

.atsk-filter-left {
    display: flex;
    align-items: center;
    gap: 10px;
}

.atsk-select {
    padding: 6px 10px;
    border-radius: 6px;
    border: 1px solid #ccc;
}

.atsk-settings-btn {
    padding: 8px 14px;
    border-radius: 8px;
    border: none;
    background: #eaeaea;
    cursor: pointer;
    font-weight: 600;
}

.atsk-settings-btn:hover {
    background: #dcdcdc;
}

/* ===== KATLU MAJAS ===== */

.atsk-km-btn {
    padding: 8px 14px;
    border-radius: 8px;
    border: 1px solid #bbb;
    text-decoration: none;
    color: #000;
    font-weight: 600;
}

.atsk-km-btn.active {
    background: #54D2EA;
    border-color: #54D2EA;
}

/* ===== TABI ===== */

.atsk-tabs-wrapper {
    margin: 20px 10px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
}

.atsk-tabs {
    display: flex;
    width: 100%;
    border-bottom: 1px solid #ccc;
}

.atsk-tab {
    flex: 1;                 /* <-- svarigi: vienmerigs sadalijums */
    text-align: center;
    padding: 12px 10px;
    text-decoration: none;
    color: #000;
    font-weight: 600;
    border-right: 1px solid #ddd;
}

.atsk-tab:last-child {
    border-right: none;
}

.atsk-tab.active {
    background: #9EE7F4;
}

.atsk-tab-content {
    padding: 20px;
}

/* ===== ATGRIEZTIES ===== */

.atsk-back {
    margin-left: 10px;
    text-decoration: none;
    font-weight: 600;
    color: #0077aa;
}

.atsk-warning {
    padding: 20px;
    background: #fff3cd;
    border: 1px solid #ffeeba;
    border-radius: 10px;
    color: #856404;
    font-weight: 600;
}
.atsk-placeholder {
    padding: 15px;
    margin-top: 10px;
    border-radius: 8px;
    background: #f4f6f8;
    color: #555;
    font-style: italic;
}

.atsk-summary-block {
    position: relative;
    background: #ffffff;
    border: 2px solid #72655F;
    border-radius: 14px;
    padding: 24px 20px 20px 20px;
    margin-bottom: 25px;
}

/* Virsraksts ka ramja "beidziks" */
.atsk-summary-title {
    position: absolute;
    top: -14px;
    left: 20px;
    background: #ffffff;
    padding: 0 10px;
    font-weight: 700;
    font-size: 15px;
    color: #333;
}

/* Iekejais saturs */
.atsk-summary-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px 30px;
}

/* Rinda */
.atsk-summary-row {
    justify-content: space-between;
    font-size: 15px;
}

.atsk-summary-row span {
    color: #555;
}

.atsk-summary-row strong {
    font-weight: 700;
}

/* ===== ATSKAITES  TABULAS ===== */

.atsk-table-wrap {
    overflow-x: auto;
}

.atsk-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 10px;
}

.atsk-table th,
.atsk-table td {
    border: 1px solid #ddd;
    padding: 6px 8px;
}

.atsk-table thead th {
    background: #f0f4f7;
    font-weight: 700;
    text-align: center;
}

.atsk-table td.num,
.atsk-table th.num {
    text-align: right;
    white-space: nowrap;
}

.atsk-table tfoot th {
    background: #f9f9f9;
    font-weight: 700;
}
.atsk-head-kemek,
.atsk-kemek {
    background: #f2f2f2;
}

.atsk-head-qns,
.atsk-qns {
    background: #eef6ff;
}
.popup-body {
    background: #f5f6f8;
}

.popup-body .atsk-table {
    font-size: 11px;
}

.popup-header {
    padding: 16px 20px;
    background: #f7f9fb;
}

.popup-header h2 {
    margin: 0 0 10px 0;
    font-size: 22px;
}

.popup-meta {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px 20px;
    font-size: 12px;
}

.popup-header hr {
    margin-top: 14px;
    border: none;
    border-top: 2px solid #333;
}

.popup-table {
    width: 90%;
    border-collapse:collapse;
    margin:20px;
}
.popup-table th, .popup-table td {
    border:1px solid #ccc;
    padding:3px;
}
.popup-table .num {
    text-align:right;
}
.popup-table .avg-row {
    background:#f5f5f5;
}

.stat_list {
    list-style: none;
    margin: 3px;
    padding: 0;
	font-size: 10px
}

.stat_list li {
    margin: 3px;
    padding: 8px 4px;
    border: 1px solid #cfa3a4;
    border-radius: 6px;
    background: #E8BCBD;
    transition: background-color 0.15s ease;
}

.stat_list li:hover {
    background: #d9a6a7; /* tumaks hover */
}

.stat_list li a {
    display: block;
    text-decoration: none;
    color: #222;
}


/* ===== Atvalinajumi (jaunais skats) ===== */
.vac_block{
  width:100%;
  background:#fff;
  border:1px solid #72655F;
  border-radius:14px;
  box-shadow:0 2px 10px rgba(0,0,0,0.08);
  padding:14px;
  margin-top:18px;
	max-width: 100%;
  box-sizing: border-box;
}

.vac_top{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
}
.vac_title{ font-size:16px; font-weight:900; }

.vac_form{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
.vac_form select,
.vac_form input[type="date"]{
  padding:6px 8px;
  border:1px solid #ccc;
  border-radius:10px;
  font-size:13px;
}
.vac_sep{ width:10px; }

.vac_btn{
  border:1px solid #72655F;
  background:#9EE7F4;
  padding:7px 10px;
  border-radius:10px;
  cursor:pointer;
  font-weight:700;
}
.vac_btn:hover{ background:#54D2EA; }
.vac_btn_gray{ background:#eee; }
.vac_btn_gray:hover{ background:#ddd; }
.vac_btn_danger{ background:#ffd6d6; }
.vac_btn_danger:hover{ background:#ffbdbd; }

.vac_section_title{
  font-weight:900;
  margin:10px 0 8px 0;
}

/* Gantt main table */
.vac_gantt_main{
  width:100%;
  border-collapse:collapse;
  font-size:12px;
  table-layout:fixed;   /* lai neparsniedz platumu */
}
.vac_gantt_main th, .vac_gantt_main td{
  border:1px solid #ddd;
  padding:3px;
  vertical-align:middle;
}
.vac_gantt_main thead th{ background:#f7f7f7; }

.vac_col_name{ width:200px; }
.vac_col_bal{ width:45px; text-align:center; }
.vac_col_track{ width:auto; }

.vac_name{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.vac_used, .vac_left{ text-align:center; }

.vac_iconbtn{
  border:1px solid #72655F;
  background:#fff;
  border-radius:10px;
  width:28px;
  height:28px;
  margin-right:8px;
  cursor:pointer;
  font-weight:900;
}
.vac_iconbtn:hover{ background:#f5fdff; }

/* inline edit */
.vac_editable{
  cursor:pointer;
  text-align:center;
}
.vac_editable:hover{ background:#f7fbff; }
.vac_input{
  width:20px;
  padding:2px 3px;
  border:1px solid #bbb;
  border-radius:3px;
  text-align:center;
  font-size:12px;
}

/* Track full width */
.vac_track_cell{ padding:5px 5px; }
.vac_track{
  position:relative;
  height:25px;
  background:#fafafa;
  border:1px solid #e0e0e0;
  border-radius:5px;
  overflow:hidden;
  width:100%;
}
.vac_bar{
  position:absolute;
  top:0;
  bottom:0;
  border-radius:2px;
  opacity:0.95;
}
.vac_bar.planned{ background:#ffec99; }
.vac_bar.approved{ background:#a7f3d0; }
.vac_bar.rejected{ background:#fca5a5; }
.vac_bar.canceled{ background:#d1d5db; }

/* Excel frame - draggable horizontal */
.vac_grid_frame{
  border:1px solid #e0e0e0;
  border-radius:14px;
  overflow:auto;
  cursor:grab;
  user-select:none;
  max-width:100%;
}
.vac_grid_frame.grabbing{ cursor:grabbing; }

.vac_grid{
  border-collapse:collapse;
  font-size:11px;
  width:max-content;
  min-width:100%;
}
.vac_grid th, .vac_grid td{
  border:1px solid #e5e5e5;
  padding:5px;
  text-align:center;
}
.vac_grid_name_head{
  position:sticky;
  left:0;
  background:#fff;
  z-index:3;
  min-width:220px;
}
.vac_grid_name{
  position:sticky;
  left:0;
  background:#fff;
  z-index:2;
  text-align:left;
  min-width:220px;
  font-weight:800;
}
.vac_grid_month{ background:#f7f7f7; font-weight:900; }
.vac_grid_day{ background:#fafafa; font-weight:800; min-width:20px; }

.vac_grid_cell{ min-width:20px; font-weight:800; }
.vac_grid_cell.empty{ background:#fff; }
.vac_grid_cell.planned{ background:#fff3cd; }
.vac_grid_cell.approved{ background:#d1e7dd; }
.vac_grid_cell.rejected{ background:#f8d7da; }
.vac_grid_cell.canceled{ background:#e2e3e5; }

/* Modal */
.vac_modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.35);
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.vac_modal_inner{
  width:min(1200px, 96vw);
  max-height:90vh;
  background:#fff;
  border-radius:18px;
  box-shadow:0 10px 30px rgba(0,0,0,0.25);
  overflow:auto;
  padding:14px;
}
.vac_modal_head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  margin-bottom:10px;
}
.vac_modal_title{ font-size:18px; font-weight:900; }
.vac_modal_sub{ font-size:12px; color:#666; }

.vac_modal_blocktitle{ font-weight:900; margin-bottom:6px; }
.vac_modal_row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:end;
}
.vac_modal_row input[type="date"], .vac_modal_row select{
  padding:6px 8px;
  border:1px solid #ccc;
  border-radius:10px;
}

.vac_modal_table{
  width:100%;
  border-collapse:collapse;
  font-size:12px;
}
.vac_modal_table th, .vac_modal_table td{
  border:1px solid #e0e0e0;
  padding:6px;
}
.vac_modal_table thead th{ background:#f7f7f7; }
.vac_empty{ color:#777; padding:10px; }


.vac_top {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 15px;
	text-align: left
}

.vac_title_block {
    font-size: 18px;
    font-weight: 600;
}

.vac_controls_block {
    display: flex;
    align-items: center;
}

.vac_form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.vac_section_title {
    font-weight: 600;
    margin: 15px 0 8px 0;
}


.vac_track{
  position: relative;
}

.vac_month_grid{
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
}

.vac_month_line{
  position: absolute;
  top: 0;
  bottom: 0;
  width: 1px;
  background: rgba(0,0,0,0.18);
}

.vac_bar{
  position: absolute;
  top: 2px;
  bottom: 2px;
  z-index: 2; /* lai bari ir virs linijam */
}

/* ja gribi redzamus meneu nosaukumus */
.vac_month_label{
  position: absolute;
  top: -14px;
  left: 4px;
  font-size: 10px;
  color: rgba(0,0,0,0.6);
  white-space: nowrap;
}
.vac_col_track{
  position: relative;
}

.vac_month_header{
  padding: 0;
  height: 22px;
  position: relative;
}

.vac_month_scale{
  position: relative;
  width: 100%;
  height: 22px;
}

.vac_month_head_item{
  position: absolute;
  transform: translateX(-50%);
}

/* header month row */
.vac_month_header{ padding:0; }
.vac_month_row{
  display:flex;
  width:100%;
  height:22px;
}
.vac_month_cell{
  display:flex;
  align-items:center;
  justify-content:center;   /* CENTRA */
  font-size:11px;
  color:#555;
  border-left:1px solid rgba(0,0,0,0.12);
}
.vac_month_cell:first-child{
  border-left:none;
}

/* track lines */
.vac_track{ position:relative; }
.vac_month_grid{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
}
.vac_month_line{
  position:absolute;
  top:0;
  bottom:0;
  width:1px;
  background:rgba(0,0,0,0.12);
}
.vac_bar{
  position:absolute;
  top:2px;
  bottom:2px;
  z-index:2;
}


/* PID DB */

.pid_db_wrap {
    width: 100%;
    box-sizing: border-box;
    padding: 15px;
}

.pid_db_topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.pid_db_title {
    font-size: 24px;
    font-weight: 700;
    color: #2c2c2c;
}

.pid_db_filters {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.pid_filter_btn {
    display: inline-block;
    padding: 8px 16px;
    border-radius: 8px;
    background: #e9eef3;
    color: #222;
    text-decoration: none;
    font-weight: 600;
    transition: 0.2s;
}

.pid_filter_btn:hover {
    background: #d7e4ef;
}

.pid_filter_btn.active {
    background: #54D2EA;
    color: #000;
}

.pid_db_add_block {
    width: 100%;
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 14px;
    padding: 18px;
    box-shadow: 0 3px 12px rgba(0,0,0,0.06);
    margin-bottom: 25px;
    box-sizing: border-box;
}

.pid_db_block_title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
}

.pid_add_form {
    width: 100%;
}

.pid_form_row {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.pid_form_col {
    display: flex;
    flex-direction: column;
    min-width: 220px;
    flex: 1;
}

.pid_form_col label {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 6px;
    color: #444;
}

.pid_input {
    width: 100%;
    box-sizing: border-box;
    height: 42px;
    border: 1px solid #bfc7cf;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 14px;
    background: #fff;
}

.pid_form_col_btn {
    justify-content: flex-end;
}

.pid_save_btn {
    height: 42px;
    padding: 0 18px;
    border: none;
    border-radius: 8px;
    background: #54D2EA;
    color: #000;
    font-weight: 700;
    cursor: pointer;
}

.pid_save_btn:hover {
    opacity: 0.92;
}

.pid_msg {
    padding: 12px 14px;
    border-radius: 10px;
    margin-bottom: 15px;
    font-weight: 600;
}

.pid_msg_error {
    background: #ffd9d9;
    color: #8a1f1f;
    border: 1px solid #f0b1b1;
}

.pid_msg_success {
    background: #dff5df;
    color: #216b21;
    border: 1px solid #abd9ab;
}

.pid_screen_grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 20px;
}

.pid_screen_card {
    background: #fff;
    border: 1px solid #d9d9d9;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 3px 12px rgba(0,0,0,0.05);
}

.pid_screen_card_head {
    padding: 12px 14px 8px 14px;
    border-bottom: 1px solid #ececec;
}

.pid_screen_km {
    font-size: 12px;
    font-weight: 700;
    color: #666;
    margin-bottom: 4px;
    text-transform: uppercase;
}

.pid_screen_name {
    font-size: 18px;
    font-weight: 700;
    color: #222;
}

.pid_screen_image_wrap {
    width: 100%;
    background: #f7f7f7;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
}

.pid_screen_thumb {
    max-width: 100%;
    max-height: 200px;
    border-radius: 8px;
    display: inline-block;
}

.pid_screen_meta {
    padding: 10px 14px 0 14px;
    font-size: 12px;
    color: #666;
}

.pid_screen_actions {
    display: flex;
    gap: 10px;
    padding: 14px;
}

.pid_open_btn,
.pid_delete_btn {
    display: inline-block;
    padding: 8px 14px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    font-size: 14px;
}

.pid_open_btn {
    background: #54D2EA;
    color: #000;
}

.pid_delete_btn {
    background: #efc1c1;
    color: #6f1111;
}

.pid_open_btn:hover,
.pid_delete_btn:hover {
    opacity: 0.92;
}

.pid_empty_state {
    width: 100%;
    background: #fff;
    border: 1px dashed #cfcfcf;
    border-radius: 16px;
    padding: 30px;
    text-align: center;
    color: #777;
    font-size: 16px;
}

.pid_view_wrap {
    width: 100%;
    box-sizing: border-box;
    padding: 15px;
}

.pid_view_topbar {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.pid_view_title {
    font-size: 26px;
    font-weight: 700;
    color: #222;
    margin-bottom: 6px;
}

.pid_view_subtitle {
    font-size: 14px;
    color: #555;
}

.pid_view_top_actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.pid_back_btn,
.pid_add_btn {
    display: inline-block;
    padding: 10px 16px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 700;
    border: none;
    cursor: pointer;
}

.pid_back_btn {
    background: #dfe6ed;
    color: #222;
}

.pid_add_btn {
    background: #54D2EA;
    color: #000;
}

.pid_screen_main_block {
    width: 100%;
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 16px;
    padding: 20px;
    box-sizing: border-box;
    box-shadow: 0 3px 12px rgba(0,0,0,0.06);
}

.pid_screen_stage_outer {
    width: 100%;
    text-align: center;
    overflow: auto;
}

.pid_screen_stage {
    position: relative;
    display: inline-block;
    max-width: 100%;
}

.pid_screen_full_image {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 10px;
    user-select: none;
}

.pid_point_marker,
.pid_point_preview {
    position: absolute;
    width: 20px;
    height: 20px;
    margin-left: -10px;
    margin-top: -10px;
    border-radius: 50%;
    background: #e20000;
    border: 2px solid #ffffff;
    box-shadow: 0 0 0 2px rgba(0,0,0,0.20);
    z-index: 20;
}

.pid_point_marker {
    cursor: pointer;
}

.pid_point_marker:hover {
    transform: scale(1.08);
}

.pid_point_preview {
    display: none;
    background: #ff3b3b;
    cursor: grab;
    z-index: 30;
}

.pid_point_preview.dragging {
    cursor: grabbing;
}

.pid_side_panel {
    position: fixed;
    top: 90px;
    right: -420px;
    width: 380px;
    max-width: calc(100vw - 30px);
    height: calc(100vh - 110px);
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 16px 0 0 16px;
    box-shadow: -5px 0 25px rgba(0,0,0,0.15);
    z-index: 5000;
    transition: right 0.25s ease;
    display: flex;
    flex-direction: column;
}

.pid_side_panel.open {
    right: 0;
}

.pid_side_panel_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 18px;
    border-bottom: 1px solid #ececec;
}

.pid_side_panel_title {
    font-size: 20px;
    font-weight: 700;
    color: #222;
}

.pid_side_panel_close {
    width: 36px;
    height: 36px;
    border: none;
    background: #f0f0f0;
    border-radius: 50%;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}

.pid_side_panel_body {
    padding: 18px;
    overflow: auto;
    box-sizing: border-box;
}

.pid_modal_overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.45);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    padding: 20px;
    box-sizing: border-box;
}

.pid_modal_box {
    background: #fff;
    border-radius: 16px;
    width: 100%;
    max-height: 90vh;
    overflow: auto;
    box-shadow: 0 10px 30px rgba(0,0,0,0.20);
}

.pid_modal_box_xl {
    max-width: 1200px;
}

.pid_modal_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid #ececec;
}

.pid_modal_title {
    font-size: 20px;
    font-weight: 700;
    color: #222;
}

.pid_modal_close {
    width: 36px;
    height: 36px;
    border: none;
    background: #f0f0f0;
    border-radius: 50%;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}

.pid_modal_body {
    padding: 20px;
    box-sizing: border-box;
}

.pid_modal_hint {
    background: #eef8fb;
    border: 1px solid #cfe9ef;
    color: #245260;
    padding: 12px 14px;
    border-radius: 10px;
    margin-bottom: 18px;
}

.pid_form_grid {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.pid_form_grid_panel {
    flex-direction: column;
    gap: 12px;
}

.pid_form_col {
    display: flex;
    flex-direction: column;
    min-width: 220px;
    flex: 1;
}

.pid_form_col label {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 6px;
    color: #444;
}

.pid_input {
    width: 100%;
    box-sizing: border-box;
    height: 42px;
    border: 1px solid #bfc7cf;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 14px;
    background: #fff;
}

.pid_modal_footer {
    margin-top: 18px;
    text-align: right;
}

.pid_save_btn {
    height: 42px;
    padding: 0 18px;
    border: none;
    border-radius: 8px;
    background: #54D2EA;
    color: #000;
    font-weight: 700;
    cursor: pointer;
}

.pid_msg {
    padding: 12px 14px;
    border-radius: 10px;
    margin-bottom: 15px;
    font-weight: 600;
}

.pid_msg_error {
    background: #ffd9d9;
    color: #8a1f1f;
    border: 1px solid #f0b1b1;
}

.pid_msg_success {
    background: #dff5df;
    color: #216b21;
    border: 1px solid #abd9ab;
}

.pid_point_detail_title {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 16px;
}

.pid_point_info_table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 18px;
}

.pid_point_info_table td {
    border: 1px solid #e4e4e4;
    padding: 10px;
    vertical-align: top;
}

.pid_history_title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
}

.pid_history_table {
    width: 100%;
    border-collapse: collapse;
}

.pid_history_table th,
.pid_history_table td {
    border: 1px solid #dddddd;
    padding: 10px;
    text-align: left;
    vertical-align: top;
}

.pid_history_table th {
    background: #f3f6f8;
}

.pid_history_comment_row td {
    background: #fafafa;
    color: #444;
}

.pid_no_history {
    padding: 14px;
    background: #fafafa;
    border: 1px dashed #d5d5d5;
    border-radius: 10px;
    color: #666;
}

.pid_modal_btn_row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.pid_small_btn {
    display: inline-block;
    padding: 8px 14px;
    border-radius: 8px;
    background: #54D2EA;
    color: #000;
    text-decoration: none;
    font-weight: 700;
    border: none;
    cursor: pointer;
}

.pid_small_btn_delete {
    background: #efc1c1;
    color: #6f1111;
}

.pid_dimmed {
    color: #888;
    font-style: italic;
}

.pid_small_btn_green {
    background: #bfe8bf;
    color: #184f18;
}

.pid_form_col_full {
    width: 100%;
    flex: 0 0 100%;
}

.pid_textarea {
    width: 100%;
    min-height: 100px;
    box-sizing: border-box;
    border: 1px solid #bfc7cf;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 14px;
    background: #fff;
    resize: vertical;
}

.pid_small_btn_green {
    background: #bfe8bf;
    color: #184f18;
}

.pid_form_col_full {
    width: 100%;
    flex: 0 0 100%;
}

.pid_textarea {
    width: 100%;
    min-height: 100px;
    box-sizing: border-box;
    border: 1px solid #bfc7cf;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 14px;
    background: #fff;
    resize: vertical;
}

.pid_table_edit_btn {
    display: inline-block;
    padding: 6px 10px;
    border-radius: 6px;
    background: #54D2EA;
    color: #000;
    font-weight: 700;
    border: none;
    cursor: pointer;
    font-size: 12px;
}

.pid_modal_overlay_top {
    z-index: 10050;
}

.pid_small_btn_green {
    background: #bfe8bf;
    color: #184f18;
}

.pid_form_col_full {
    width: 100%;
    flex: 0 0 100%;
}

.pid_textarea {
    width: 100%;
    min-height: 100px;
    box-sizing: border-box;
    border: 1px solid #bfc7cf;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 14px;
    background: #fff;
    resize: vertical;
}

.pid_table_edit_btn {
    display: inline-block;
    padding: 6px 10px;
    border-radius: 6px;
    background: #54D2EA;
    color: #000;
    font-weight: 700;
    border: none;
    cursor: pointer;
    font-size: 12px;
}

.pid_modal_overlay_top {
    z-index: 10050;
}

.pid_side_panel {
    position: fixed;
    top: 90px;
    right: -420px;
    width: 380px;
    max-width: calc(100vw - 30px);
    height: calc(100vh - 110px);
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 16px 0 0 16px;
    box-shadow: -5px 0 25px rgba(0,0,0,0.15);
    z-index: 5000;
    transition: right 0.25s ease;
    display: flex;
    flex-direction: column;
}

.pid_side_panel.open {
    right: 0;
}

.pid_side_panel.floating {
    transition: none;
    border-radius: 16px;
}

.pid_side_panel_header {
    cursor: move;
    user-select: none;
}
