
@media print {
  body.printing > :not(#print-sandbox) { display: none !important; }
  #print-sandbox { display: block !important; }
  
  #print-sandbox, 
  #print-sandbox * {
    color: #000 !important;
    text-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
  
  #print-sandbox .background-gray {
    background: #fdfdfd !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2) !important;
    padding: 10px !important;
    border-radius: 4px !important;
  }
  
  #print-sandbox .text-color-green,
  #print-sandbox .text-color-red {
    color: #000 !important;
  }
  
  .no-print { display:none !important; }
  .no-border { border: 0px !important; }
}

*, *::before, *::after {
	box-sizing: border-box;
}

html, body {
	margin: 0px;
	padding: 0;
	width: 100%;
	overflow-x: hidden;
	scroll-behavior: smooth;
}

body {
	display: flex;
	flex-direction: column;
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
	background: #f5f5f5;
}

.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.45);z-index:9999}
.modal.open{display:flex}
.modal-dialog{background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2);width:min(92vw,420px);max-width:420px}
.modal-header{padding:16px 20px;font-weight:600;border-bottom:1px solid #eee}
.modal-body{padding:16px 20px;font-size:14px;line-height:1.4}
.modal-actions{display:flex;gap:10px;justify-content:flex-end;padding:12px 20px;border-top:1px solid #eee}
.modal-actions .btn{padding:10px 14px;border-radius:8px;border:0;cursor:pointer}
.modal-actions .btn-primary{background:#28a745;color:#fff}
.modal-actions .btn-secondary{background:#e9ecef}

.button-separator {
	height: 2px;
	width: 100%;
	margin-top: 35px;
	margin-bottom: 15px;
	background: linear-gradient(135deg, #007bff, #28a745);
	border-radius: 4px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.font-size-14 {
  font-size: 14px !important;
}

.font-size-16 {
  font-size: 16px !important;
}

.padding-top-30 {
  padding-top: 30px;
}

.padding-top-25 {
  padding-top: 25px;
}

.padding-top-20 {
  padding-top: 20px;
}

.padding-top-19 {
  padding-top: 19px;
}

.padding-top-10 {
  padding-top: 10px;
}

.margin-bottom-10 {
  margin-bottom: 10px;
}

.margin-bottom-30 {
  margin-bottom: 30px;
}

.scan-rfid-poruka {
  max-width: 450px;
  padding: 10px 12px;
  border-radius: 4px;
  border: 1px solid #ffe1b3;
  background: #fff4e5;
  color: #8a6d3b;
}

.scan-rfid-button {
  background: linear-gradient(135deg, #0056b3, #1e7e34) !important;
  border-radius: 4px !important;
  height: 100px;
  padding: 0 16px;
  display: inline-flex;   
  align-items: center;    
  justify-content: center;
  gap: .5rem;             
  line-height: 1;
  text-align: center;
}

.scan-rfid-button svg {
  display: block;
  width: 64px;
  height: 64px;
}

.center-button .scan-rfid-button {
  display: flex; 
  margin: 0 auto;
}

.background-gray {
  background: #fdfdfd;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  padding: 10px;
  border-radius: 4px;
}

.button-print {
  position: absolute;
  top: 25px;
  right: 25px;
  background: none;
  border: none;
  color: #555;
  font-size: 18px;
  cursor: pointer;
  transition: color 0.2s ease-in-out;
}

.button-print:hover { 
  color: #000; 
}

.nazad-to-top {
  position: fixed;
  bottom: 25px;
  right: 25px;
  background: #28a745;
  color: white;
  padding-left: 14px;
  padding-right: 14px;
  padding-bottom: 9px;
  padding-top: 12.5px;
  font-size: 1rem;
  border-radius: 4px;
  text-decoration: none;
  display: none;
  z-index: 1000;
}

.text-color-red {
  color: #ff0000 !important;
}

.text-color-green {
  color: #339900 !important;
}

.operator-banner {
  width: 100%;
  background: linear-gradient(135deg, #0056b3, #1e7e34);
  color: #fff;                                          
  box-shadow: 0 2px 6px rgba(0,0,0,0.2);
  padding-top:    11px;
  padding-right:  16px;
  padding-bottom: 12px;
  padding-left:   16px;
  text-align: center;
  box-sizing: border-box;
}

.operator-banner small {
  color: rgba(255,255,255,0.9);
  font-weight: 600;
}

.font-weight-600 {
  font-weight: 600 !important;
}

.font-weight-500 {
  font-weight: 500 !important;
}

.accordion-summary::-webkit-details-marker { display: none; }
.accordion-summary::marker             { content: none; }

.accordion-container {
  max-width: 800px;
  margin: 1.5em auto;
  border-radius: 8px;
  overflow: visible;
}

.accordion-container details {
  margin-bottom: 1em;
}

.accordion-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #fff;
  padding: 1em 1.2em;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s, box-shadow 0.2s;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  position: relative;
  z-index: 2;
}

.accordion-summary:hover {
  background: #f9f9f9;
}

.accordion-summary::after {
  content: "▸";
  font-size: 1.2em;
  margin-left: 1em;
  transition: transform 0.2s;
}

details[open] > .accordion-summary {
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
details[open] > .accordion-summary::after {
  transform: rotate(90deg);
}

.accordion-content {
  background: #fff;
  padding: 1em 1.2em;
  line-height: 1.5;
  margin-top: -1px;             
  border: 1px solid #e0e0e0;
  border-top: none;             
  border-radius: 0 0 8px 8px;
  animation: fadeIn 0.2s ease-in;
  position: relative;
  z-index: 1;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-5px); }
  to   { opacity: 1; transform: translateY(0);  }
}

.match-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 0.5rem;
  margin-top: 1rem;
}

.match-card {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 0.5rem;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  transition: transform 0.15s, box-shadow 0.15s;
}

.match-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.match-card .match-btn {
  display: block;
  width: 100%;
  text-align: left;
  padding: 0.75rem;
  background: none;
  border: none;
  font: inherit;
  cursor: pointer;
}

.text-align-center {
  text-align: center !important;
}

.match-card .match-btn strong {
  color: #2c3e50;
}

.match-card .match-btn small {
  color: #7f8c8d;
  font-size: 0.85em;
}

.ispravak-podataka-div {
  text-align: center;
  margin-top: 50px;
  margin-left: 20px;
  margin-right: 20px;
}

.button-ispravak {
  background-color: #000;        
  color: #fff;                   
  font-size: 1.0rem;             
  padding: 12px 24px;            
  border: none;                  
  border-radius: 4px;   
  font-weight: 600;
  cursor: pointer;               
  transition: opacity 0.2s ease; 
}

.button-ispravak:hover {
  opacity: 0.8;
}

.button-aktiviraj {
  background-color: #000 !important;        
  color: #fff;                   
  font-size: 1.0rem;             
  padding: 12px 24px;            
  border: none;                  
  border-radius: 4px;   
  font-weight: 600;
  cursor: pointer;               
  transition: opacity 0.2s ease; 
}

.button-aktiviraj:hover {
  opacity: 0.8;
}

.button-zatvori {
  background-color: #28a745;        
  color: #fff;                   
  font-size: 1.0rem;             
  padding: 12px 24px;            
  border: none;                  
  border-radius: 4px;   
  font-weight: 600;
  cursor: pointer;               
  transition: opacity 0.2s ease; 
}

.button-zatvori:hover {
  opacity: 0.8;
}

.button-prihvati-izmjene {
  background-color: #000;        
  color: #fff;                   
  font-size: 1.0rem;             
  padding: 12px 24px;            
  border: none;                  
  border-radius: 4px;            
  cursor: pointer;               
  transition: opacity 0.2s ease; 
  font-weight: 600;
}

.button-prihvati-izmjene:hover {
  opacity: 0.8;
}

.button-ponisti {
  background-color: #e74c3c;        
  color: #fff;                   
  font-size: 1.0rem;             
  padding: 12px 24px;            
  border: none;       
  font-weight: 600;
  border-radius: 4px;            
  cursor: pointer;               
  transition: opacity 0.2s ease; 
}

.button-ponisti:hover {
  background: #c0392b;
}

.button-odustani {
  background-color: #e74c3c;        
  color: #fff;                   
  font-size: 1.0rem;             
  padding: 12px 24px;            
  border: none;       
  font-weight: 600;
  border-radius: 4px;            
  cursor: pointer;               
  transition: opacity 0.2s ease; 
}

.button-odustani:hover {
  background: #c0392b;
}

.button-rijesio {
  background-color: #007bff;
  color: #fff;    
  font-size: 1.0rem;             
  padding: 12px 24px;            
  border: none;       
  font-weight: 600;
  border-radius: 4px;            
  cursor: pointer;               
  transition: opacity 0.2s ease; 
}
.button-rijesio:hover { 
  background: #006fe8; 
}

.label-izgled {
  font-size: 16px;
  font-weight: 600;
}

.label-izgled-pronadi-korisnika {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 30px;
}

.input-izgled {
  display: block;
  width: 100%;           
  padding: 0.8em 1em;
  font-size: 0.9rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
  text-transform: uppercase;
}

.text-transform-lowercase {
  text-transform: lowercase !important;
}

.alert {
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  font-size: 1rem;
  line-height: 1.5;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.alert-warning {
  color: #856404;                  
  background-color: #fff3cd;       
  border-color: #ffeeba;           
}

.input-izgled-email {
  display: block;
  width: 100%;           
  padding: 0.8em 1em;
  font-size: 0.9rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
  text-transform: lowercase;
}

.select-izgled {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  width: 100%;
  padding: 0.8em 1em;
  padding-right: 2.5em;
  font-size: 0.9rem;
  color: #000;             
  text-transform: uppercase;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23666'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1em center;
  background-size: 0.8em 0.5em;
}

.textare-izgled {
  display: block;
  width: 100%;           
  padding: 0.8em 1em;
  font-size: 0.9rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
  text-transform: uppercase;
  resize: vertical;
}

.remember-me {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  margin: 8px 0;
}

.remember-me input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  width: 1.5em;
  height: 1.5em;
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 4px;
  position: relative;
  margin-right: 0.5em;
  vertical-align: middle;
  cursor: pointer;
  background: #fff;
  transition: background .2s ease, border-color .2s ease;
}

.remember-me input[type="checkbox"]:checked {
  background: linear-gradient(135deg, #007bff, #28a745);
  border-color: #28a745;
}

.remember-me input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 0.38em;
  top: 0.08em;
  width: 0.65em;
  height: 1em;
  border: solid #fff;
  border-width: 0 0.2em 0.2em 0;
  transform: rotate(45deg);
}

.header {
	background: linear-gradient(135deg, #007bff, #28a745);
	color: #fff;
	padding: 15px 0;
	text-align: center;
	flex: 0 0 auto;
	cursor: default;
}
.header h1 {
	margin: 0;
	font-size: 1.8rem;
	letter-spacing: 1px;
	cursor: default;
}

.content {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow-y: auto;           
	padding: 10px; 
	margin-top: 50px;
}

.content-rucni {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow-y: auto;           
	padding: 10px; 
	margin-top: 50px;
}

.content-rucni-pregled {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow-y: auto;           
	padding: 10px; 
	margin-top: 50px;
}

.content-pronadi-korisnika {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow-y: auto;           
	padding: 10px; 
	margin-top: 30px;
}

.content-pronadi-korisnika-ostatak {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow-y: auto;           
	padding: 10px;
}

@media (orientation: landscape) and (pointer: coarse) and (hover: none) {
	.content {
		flex: 0 0 auto;
		display: flex;
		align-items: center;
		justify-content: center;
		overflow-y: auto;           
		padding: 10px; 
		margin-top: 50px;
	}
}

.margin-top-30 {
    padding-top: 30px !important;
}

.rfidcheck {
  display:none;
  color:#b00020;
  font-size:12px;
  margin-top:12px;
  margin-left:4px;
}

.content-login {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow-y: auto;           
	padding: 10px; 
}

.form-container {
	background: #fff;
	padding-top: 17px;
	padding-left: 20px;
	padding-right: 20px;
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.1);
	width: 100%;
	max-width: 400px;
	padding-bottom: 40px;
}

.form-container-table {
	background: #fff;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
	padding-right: 20px;
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.1);
	width: 100%;
	max-width: 700px;
	padding-bottom: 10px;
}

.form-container input[type="file"] {
	display: none;
}

.file-label {
	display: block;
	width: 100%;
	padding: 16px;
	margin-top: 10px;
	background: #007bff !important;
	color: #fff;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
}
.file-label:active,
.file-label:focus,
.file-label:hover {
	opacity: 0.9;
	background: #006de6 !important;
}

.pregledzahtjeva-button {
	display: block;
	width: 100%;
	padding: 16px;
	margin-top: 10px;
	background: #28a745 !important;
	color: #fff;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
}
.pregledzahtjeva-button:active,
.pregledzahtjeva-button:focus,
.pregledzahtjeva-button:hover {
	opacity: 0.9;
	background: #23943d !important;
}

.pronadikorisnika-button {
	display: block;
	width: 100%;
	padding: 16px;
	margin-top: 10px;
	background: #737373 !important;
	color: #fff;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
}
.pronadikorisnika-button:active,
.pronadikorisnika-button:focus,
.pronadikorisnika-button:hover {
	opacity: 0.8;
}

.ocitajrfid-button {
	display: block;
	width: 100%;
	padding: 16px;
	margin-top: 10px;
	background: #28a745 !important;
	color: #fff;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
}
.ocitajrfid-button:active,
.ocitajrfid-button:focus,
.ocitajrfid-button:hover {
	opacity: 0.9;
	background: #23943d !important;
}

.pregledpovijesti-button {
	display: block;
	width: 100%;
	padding: 16px;
	margin-top: 10px;
	background: #007bff !important;
	color: #fff;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
}
.pregledpovijesti-button:active,
.pregledpovijesti-button:focus,
.pregledpovijesti-button:hover {
	opacity: 0.9;
	background: #007bff !important;
}

.form-container button {
	display: block;
	width: 100%;
	padding: 16px;
	margin-top: 20px;
	background: #28a745;
	color: #fff;
	border: none;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
}
.form-container button:active,
.form-container button:focus,
.form-container button:hover {
	opacity: 0.9;
	background: #23943d;
}

.login-card {
    background: #fff; padding: 20px; border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    width: 90%; max-width: 320px;
}
.login-card h2 { 
	margin-bottom: 10px; 
	text-align: center; 
	font-weight: 600;
}
.login-card input {
    width: 100%; padding: 12px; margin: 8px 0;
    border: 1px solid #ccc; border-radius: 4px;
    font-size: 1.2rem;
}
.login-card button {
    width: 100%; padding: 16px; margin-top: 12px;
    background: #007bff; color: #fff; border: none; border-radius: 4px;
    font-size: 1.1rem; cursor: pointer;
}
.login-card .error {
    color: #b00; margin-top: 8px; text-align: center;
}

.logout-button {
	margin-top: 30px;
    display: inline-block;
    padding: 10px 40px;
    background-color: #e74c3c;
    color: #fff;
	font-size: 1.1rem;
    text-decoration: none;
    border-radius: 4px;
	font-weight: 500;
}
.logout-button:hover {
    background-color: #c0392b;
}
  
.margin-top-15 {
    margin-top: 15px;
}

.padding-left-5 {
  padding-left: 5px !important;
}

.padding-left-5-right-5 {
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.padding-left-10-right-10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.padding-left-20-right-20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.result-card {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  padding: 20px;
  margin: 20px auto;
  max-width: 600px;
}

.result-card h2 {
  margin-top: 0;
  font-size: 1.5rem;
  border-bottom: 2px solid #28a745;
  padding-bottom: 8px;
  color: #333;
}

.result-card h3 {
  margin-top: 0;
  font-size: 1.1rem;
  border-bottom: 2px solid #28a745;
  padding-left: 5px;
  padding-right: 5px;
  padding-bottom: 8px;
  color: #333;
}

.result-card-odvoz {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 20px;
  padding-bottom: 0px;
  margin: 20px auto;
  max-width: 600px;
}

.result-card-odvoz h2 {
  margin-top: 0;
  font-size: 1.2rem;
  border-bottom: 2px solid #28a745;
  padding-bottom: 8px;
  color: #333;
}

.result-card-odvoz h3 {
  margin-top: 0;
  font-size: 1.1rem;
  border-bottom: 2px solid #28a745;
  padding-bottom: 8px;
  color: #333;
}

h3 {
  margin-top: 0;
  font-size: 1.15rem;
  border-bottom: 2px solid #28a745;
  padding-bottom: 8px;
  color: #333;
}

.result-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.result-list dt {
  float: left;
  clear: left;
  width: 40%;
  font-weight: bold;
  color: #555;
}

.result-list dd {
  margin: 0 0 10px 42%;
  color: #333;
}

.building-info {
  margin-top: 30px;
}

.building-info h3 {
  font-size: 1.3rem;
  color: #007bff;
  border-bottom: 1px solid #ccc;
  padding-bottom: 6px;
  margin-bottom: 12px;
}

@media (min-width: 769px) {
  .mobile-only {
    display: none;
  }
}

@media (max-width: 768px) {
  .desktop-only {
    display: none;
  }
}

.margin-bottom-100 {
	margin-bottom: 100px;
}

.font-weight-400 {
  font-weight: 400 !important;
}

#imageInput {
  display: none;
}

#takePhotoBtn { 
  display:none;
}

#loadingOverlay {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 10000;
}

#loadingOverlay .spinner {
  border: 8px solid #28a745;
  border-top: 8px solid #218838;
  border-radius: 50%;
  width: 60px; height: 60px;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

#loadingOverlay .loading-text {
  margin-top: 15px;
  color: #fff;
  font-weight: 600;
  font-size: 1rem;
  text-align: center;
}

.file-name {
  margin-top: 20px;
  font-size: 0.95rem;
  font-weight: 500;
  color: #333;
  text-align: center;
  word-break: break-all;
}
.submit-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.error-screen {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: #f5f5f5;
}

.error-message {
  text-align: center;
  font-size: 1.2rem;
  color: #b00;
  background: #fff;
  padding: 16px 24px;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.back-button-container {
  position: static;
  transform: none;
  margin: 20px auto;
  text-align: center;
  max-width: 400px;
}
.back-button-container button {
  width: 100%;
  background: #28a745;
  color: #fff;
  padding: 12px;
  border: none;
  border-radius: 4px;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
}
.back-button-container button:hover {
  background: #23943d;
}

#backBtnContainer {
  position: fixed;
  bottom: 25px;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  text-align: center;
  max-width: 400px;
  z-index: 1000;
}

.back-button-container1 button {
  width: 100%;
  background: #28a745;
  color: #fff;
  padding: 12px;
  border: none;
  border-radius: 4px;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
}
.back-button-container button:hover {
  background: #23943d;
}

.result-table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto 20px;
  max-width: 600px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.result-table th,
.result-table td {
  padding: 12px 8px;
  text-align: left;
  vertical-align: top;
}

.result-table th {
  width: 35%;
  color: #555;
  font-weight: 600;
  background: #f9f9f9;
}

.result-table td {
  color: #333;
  word-break: break-word; 
}

@media (max-width: 600px) {
  .result-table th {
    width: 30%;
  }
  .accordion-summary {
    font-size: 12px !important;
  }
  
  .form-container-table {
	background: #fff;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 8px;
	padding-right: 8px;
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.1);
	width: 100%;
	max-width: 700px;
	padding-bottom: 10px;
}
}

.content input[type="text"],
.content input[type="password"],
.content input[type="file"] {
  border: 1px solid #ccc;
  transition: border-color .2s, box-shadow .2s;
}

.content input[type="text"]:focus,
.content input[type="password"]:focus,
.content input[type="file"]:focus {
  outline: none;
  border-color: #28a745;
  box-shadow: 0 0 0 3px rgba(40,167,69,0.3);
}

.prijava-button {
	display: block !important;
	width: 100% !important;
	padding: 16px !important;
	margin-top: 20px !important;
	background: linear-gradient(135deg, #0056b3, #1e7e34) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 4px !important;
	font-size: 1.1rem !important;
	cursor: pointer !important;
}
.prijava-button:active,
.prijava-button:focus,
.prijava-button:hover {
	opacity: 0.8 !important;
}

.font-size-10 {
	font-size: 12px !important;
}

.margin-top-10 {
	margin-top: 10px !important;
}

.margin-top-5 {
	margin-top: 5px !important;
}

.result-card {
  min-width: 450px;
}

.result-card-odvoz {
  min-width: 450px;
}

.text-objasnjenje {
  max-width: 450px;
}

@media (max-width: 600px) {
.font-size-10 {
	font-size: 10px !important;
}

.result-card {
  min-width: 0;
  width: 100%;
}

.result-card-odvoz {
  min-width: 0;
  width: 100%;
}

.text-objasnjenje {
  min-width: 0;
  width: 100%;
}
}

.copyright-button {
	background: transparent !important;
	color: #fff !important;
	text-decoration: none !important;
}
.copyright-button:active,
.copyright-button:focus,
.copyright-button:hover {
	opacity: 0.9 !important;
	background: transparent !important;
	text-decoration: underline !important;
}

.margin-bottom-50 {
    margin-bottom: 50px !important; 
}

.margin-bottom-60 {
    margin-bottom: 60px !important; 
}

.margin-top-20 {
    margin-top: 20px !important; 
}

@media (orientation: landscape){

    .header {
      position:static;
      width:100%;
    }

    .header{padding:10px 0;}

	.margin-bottom-50 {
		margin-bottom: 20px !important; 
	}
}

.manual-form label {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  margin-bottom: 0.5em;
}

.manual-form input[type="text"] {
  display: block;
  width: 100%;           
  max-width: 500px;       
  padding: 0.8em 1em;
  font-size: 1.1rem;
  margin: 0 auto 1em;     
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
}

.content-rucni .form-container {
  text-align: center;
}

.cursor-default {
  cursor: default !important;
}

.clear-btn {
  background: #dc3545 !important;
  border: 2px solid #c82333 !important;
  color: #fff !important;
  border-radius: 4px !important;
  padding: 0.8em 1em !important;
  cursor: pointer;
  transition: background 0.2s, color 0.2s !important;
}

.clear-btn:disabled {
  cursor: default !important;
  opacity: 0.4 !important;
}

.clear-btn:not(:disabled):hover {
  background: #c82333 !important;
  color: #fff !important;
}

.form-container .offline-mode-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
	width: 100%;
	padding: 16px;
	margin-top: 20px;
	background: linear-gradient(135deg, #0056b3, #1e7e34) !important;
	color: #fff;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
	border: none;
	box-shadow: 0 4px 12px rgba(0,0,0,0.16);
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	white-space: nowrap;
}

.form-container .offline-mode-button:active,
.form-container .offline-mode-button:focus,
.form-container .offline-mode-button:hover {
	opacity: 1;
	background: linear-gradient(135deg, #0062cc, #23943d) !important;
	box-shadow: 0 6px 16px rgba(0,0,0,0.20);
	color: #fff !important;
}

.form-container .offline-mode-button span {
	display: inline-block !important;
	line-height: 1.2;
	white-space: nowrap;
}

.form-container .offline-mode-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	font-size: 1.35rem;
	line-height: 1;
	flex: 0 0 auto;
	color: rgba(255,255,255,0.95);
}

.pregledpovijesti-button,
.pronadikorisnika-button,
.pregledzahtjeva-button,
.offline-mode-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
	flex-wrap: nowrap !important;
}

.pregledpovijesti-button span,
.pronadikorisnika-button span,
.pregledzahtjeva-button span,
.offline-mode-button span {
	display: inline-block;
	line-height: 1.2;
}

.menu-button-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2rem;
	line-height: 1;
	flex: 0 0 auto;
}

.lociraj-posudu-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
	width: 100%;
	padding: 16px;
	margin-top: 10px;
	background: #17a2b8 !important;
	color: #fff;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
	border: none;
}

.lociraj-posudu-button:active,
.lociraj-posudu-button:focus,
.lociraj-posudu-button:hover {
	opacity: 0.9;
	background: #138496 !important;
}

.file-label,
.ocitajrfid-button,
.submit-btn {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
	flex-wrap: nowrap !important;
}

.file-label span,
.ocitajrfid-button span,
.submit-btn span {
	display: inline-block;
	line-height: 1.2;
}

.menu-button-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2rem;
	line-height: 1;
	flex: 0 0 auto;
}

#print-area {
	display: none;
}

.map-link-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin-top: 10px;
}

.map-link-grid .full-width {
	grid-column: 1 / -1;
}

.map-link-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 42px;
	padding: 10px 12px;
	box-sizing: border-box;
	border-radius: 10px;
	border: 1px solid #cfd9e6;
	background: linear-gradient(180deg, #ffffff 0%, #edf3f9 100%);
	color: #1f3850;
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	box-shadow: 0 2px 6px rgba(0,0,0,0.06);
	transition: all 0.15s ease;
}

.map-link-btn:hover,
.map-link-btn:focus {
	background: linear-gradient(180deg, #f8fbff 0%, #e3edf8 100%);
	border-color: #b8cade;
	color: #17324a;
	text-decoration: none;
}

.map-link-btn i {
	font-size: 15px;
}

@media (max-width: 480px) {
	.map-link-grid {
		grid-template-columns: 1fr;
	}

	.map-link-grid .full-width {
		grid-column: auto;
	}
}

#scrollCornerBtns {
	position: fixed;
	right: 14px;
	bottom: 18px;
	z-index: 9999;
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-end;
	pointer-events: none;
}

.scroll-corner-btn {
	display: none;
	width: 56px;
	height: 56px;
	border: 0;
	border-radius: 18px;
	cursor: pointer;
	pointer-events: auto;
	color: #ffffff;
	font-size: 22px;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.28);
	transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.scroll-corner-btn i {
	pointer-events: none;
}

.scroll-corner-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(15, 23, 42, 0.34);
}

.scroll-corner-btn:active {
	transform: scale(0.96);
}

.scroll-top-btn {
	background: linear-gradient(180deg, #3b82f6 0%, #2563eb 100%);
}

.scroll-bottom-btn {
	background: linear-gradient(180deg, #475569 0%, #334155 100%);
}

@media (max-width: 768px) {
	#scrollCornerBtns {
		right: 12px;
		bottom: 16px;
		gap: 8px;
	}

	.scroll-corner-btn {
		width: 52px;
		height: 52px;
		border-radius: 16px;
		font-size: 20px;
	}
}

.file-label-gallery {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
	width: 100%;
	padding: 16px;
	margin-top: 20px;
	background: linear-gradient(135deg, #eef1f4, #dfe5ea) !important;
	color: #2f3b45 !important;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
	border: 1px solid #bcc6cf !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.10);
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	white-space: nowrap;
	transition: all 0.18s ease;
}

.file-label-gallery:hover,
.file-label-gallery:focus,
.file-label-gallery:active {
	background: linear-gradient(135deg, #e2e7ec, #cfd7de) !important;
	color: #1f2a33 !important;
	border: 1px solid #aeb8c2 !important;
	box-shadow: 0 6px 16px rgba(0,0,0,0.14);
	transform: translateY(-1px);
}

.ocitajrfid-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
	width: 100%;
	padding: 16px;
	margin-top: 20px;
	background: linear-gradient(135deg, #0056b3, #1e7e34) !important;
	color: #fff !important;
	text-align: center;
	border-radius: 4px;
	font-size: 1.1rem;
	cursor: pointer;
	user-select: none;
	font-weight: 500;
	border: none !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.16);
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	white-space: nowrap;
}

.ocitajrfid-button:active,
.ocitajrfid-button:focus,
.ocitajrfid-button:hover {
	opacity: 1;
	background: linear-gradient(135deg, #0062cc, #23943d) !important;
	box-shadow: 0 6px 16px rgba(0,0,0,0.20);
	color: #fff !important;
}

.ocitajrfid-button span {
	display: inline-block !important;
	line-height: 1.2;
	white-space: nowrap;
	color: #fff !important;
}

.ocitajrfid-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	font-size: 1.35rem;
	line-height: 1;
	flex: 0 0 auto;
	color: rgba(255,255,255,0.95) !important;
}

.file-label,
.file-label-gallery,
.pregledzahtjeva-button,
.pronadikorisnika-button,
.ocitajrfid-button,
.pregledpovijesti-button,
.lociraj-posudu-button,
.button-prihvati-izmjene,
.button-ponisti,
.offline-mode-button,
.button-rijesio,
.button-zatvori,
.button-ispravak,
.button-aktiviraj,
.back-button-container button,
.back-button-container1 button,
#backBtnContainer button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px;
	width: 100%;
	min-height: 54px;
	padding: 14px 18px !important;
	border: none !important;
	border-radius: 4px !important;
	font-size: 1rem !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	text-align: center;
	text-decoration: none !important;
	cursor: pointer;
	user-select: none;
	box-shadow: 0 8px 20px rgba(0,0,0,0.16);
	transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease, background 0.18s ease;
	flex-wrap: nowrap !important;
	white-space: nowrap;
}

.file-label:hover,
.file-label:focus,
.file-label:active,
.file-label-gallery:hover,
.file-label-gallery:focus,
.file-label-gallery:active,
.pregledzahtjeva-button:hover,
.pregledzahtjeva-button:focus,
.pregledzahtjeva-button:active,
.pronadikorisnika-button:hover,
.pronadikorisnika-button:focus,
.pronadikorisnika-button:active,
.ocitajrfid-button:hover,
.ocitajrfid-button:focus,
.ocitajrfid-button:active,
.offline-mode-button:hover,
.offline-mode-button:focus,
.offline-mode-button:active,
.pregledpovijesti-button:hover,
.pregledpovijesti-button:focus,
.pregledpovijesti-button:active,
.lociraj-posudu-button:hover,
.lociraj-posudu-button:focus,
.lociraj-posudu-button:active,
.button-prihvati-izmjene:hover,
.button-prihvati-izmjene:focus,
.button-prihvati-izmjene:active,
.button-ponisti:hover,
.button-ponisti:focus,
.button-ponisti:active,
.button-rijesio:hover,
.button-rijesio:focus,
.button-rijesio:active,
.button-zatvori:hover,
.button-zatvori:focus,
.button-zatvori:active,
.button-ispravak:hover,
.button-ispravak:focus,
.button-ispravak:active,
.button-aktiviraj:hover,
.button-aktiviraj:focus,
.button-aktiviraj:active,
.back-button-container button:hover,
.back-button-container button:focus,
.back-button-container button:active,
.back-button-container1 button:hover,
.back-button-container1 button:focus,
.back-button-container1 button:active,
#backBtnContainer button:hover,
#backBtnContainer button:focus,
#backBtnContainer button:active {
	transform: translateY(-1px);
	box-shadow: 0 12px 24px rgba(0,0,0,0.20);
	text-decoration: none !important;
}

.file-label span,
.file-label-gallery span,
.pregledzahtjeva-button span,
.pronadikorisnika-button span,
.ocitajrfid-button span,
.pregledpovijesti-button span,
.lociraj-posudu-button span,
.button-prihvati-izmjene span,
.button-ponisti span,
.button-rijesio span,
.button-zatvori span,
.button-ispravak span,
.button-aktiviraj span {
	display: inline-block;
	line-height: 1.2;
}

.file-label .menu-button-icon,
.file-label-gallery .menu-button-icon,
.pregledzahtjeva-button .menu-button-icon,
.pronadikorisnika-button .menu-button-icon,
.ocitajrfid-button .menu-button-icon,
.pregledpovijesti-button .menu-button-icon,
.lociraj-posudu-button .menu-button-icon,
.button-prihvati-izmjene .menu-button-icon,
.button-ponisti .menu-button-icon,
.button-rijesio .menu-button-icon,
.button-zatvori .menu-button-icon,
.button-ispravak .menu-button-icon,
.button-aktiviraj .menu-button-icon {
	font-size: 1.2rem;
	line-height: 1;
	flex: 0 0 auto;
}

.file-label {
	background: linear-gradient(135deg, #0d6efd, #0b5ed7) !important;
	color: #fff !important;
}

.file-label:hover,
.file-label:focus,
.file-label:active {
	background: linear-gradient(135deg, #0b5ed7, #0a58ca) !important;
	color: #fff !important;
}

.file-label-gallery {
	background: linear-gradient(135deg, #eef1f4, #dfe5ea) !important;
	color: #2f3b45 !important;
	border: 1px solid #bcc6cf !important;
	box-shadow: 0 6px 16px rgba(0,0,0,0.10);
}

.file-label-gallery:hover,
.file-label-gallery:focus,
.file-label-gallery:active {
	background: linear-gradient(135deg, #e2e7ec, #cfd7de) !important;
	color: #1f2a33 !important;
	border: 1px solid #aeb8c2 !important;
}

.pregledzahtjeva-button {
	background: linear-gradient(135deg, #16a34a, #15803d) !important;
	color: #fff !important;
}

.pregledzahtjeva-button:hover,
.pregledzahtjeva-button:focus,
.pregledzahtjeva-button:active {
	background: linear-gradient(135deg, #15803d, #166534) !important;
	color: #fff !important;
}

.pronadikorisnika-button {
	background: linear-gradient(135deg, #64748b, #475569) !important;
	color: #fff !important;
}

.pronadikorisnika-button:hover,
.pronadikorisnika-button:focus,
.pronadikorisnika-button:active {
	background: linear-gradient(135deg, #475569, #334155) !important;
	color: #fff !important;
}

.ocitajrfid-button {
	background: linear-gradient(135deg, #0056b3, #1e7e34) !important;
	color: #fff !important;
}

.ocitajrfid-button:hover,
.ocitajrfid-button:focus,
.ocitajrfid-button:active {
	background: linear-gradient(135deg, #0062cc, #23943d) !important;
	color: #fff !important;
}

.pregledpovijesti-button {
	background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
	color: #fff !important;
}

.pregledpovijesti-button:hover,
.pregledpovijesti-button:focus,
.pregledpovijesti-button:active {
	background: linear-gradient(135deg, #1d4ed8, #1e40af) !important;
	color: #fff !important;
}

.lociraj-posudu-button {
	background: linear-gradient(135deg, #0ea5e9, #0284c7) !important;
	color: #fff !important;
}

.lociraj-posudu-button:hover,
.lociraj-posudu-button:focus,
.lociraj-posudu-button:active {
	background: linear-gradient(135deg, #0284c7, #0369a1) !important;
	color: #fff !important;
}

.button-prihvati-izmjene,
.button-aktiviraj {
	background: linear-gradient(135deg, #111827, #374151) !important;
	color: #fff !important;
}

.button-prihvati-izmjene:hover,
.button-prihvati-izmjene:focus,
.button-prihvati-izmjene:active,
.button-aktiviraj:hover,
.button-aktiviraj:focus,
.button-aktiviraj:active {
	background: linear-gradient(135deg, #1f2937, #4b5563) !important;
	color: #fff !important;
}

.button-ponisti {
	background: linear-gradient(135deg, #ef4444, #dc2626) !important;
	color: #fff !important;
}

.button-ponisti:hover,
.button-ponisti:focus,
.button-ponisti:active {
	background: linear-gradient(135deg, #dc2626, #b91c1c) !important;
	color: #fff !important;
}

.button-rijesio {
	background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
	color: #fff !important;
}

.button-rijesio:hover,
.button-rijesio:focus,
.button-rijesio:active {
	background: linear-gradient(135deg, #1d4ed8, #1e40af) !important;
	color: #fff !important;
}

.button-zatvori {
	background: linear-gradient(135deg, #16a34a, #15803d) !important;
	color: #fff !important;
}

.button-zatvori:hover,
.button-zatvori:focus,
.button-zatvori:active {
	background: linear-gradient(135deg, #15803d, #166534) !important;
	color: #fff !important;
}

.button-ispravak {
	background: linear-gradient(135deg, #111827, #374151) !important;
	color: #fff !important;
}

.button-ispravak:hover,
.button-ispravak:focus,
.button-ispravak:active {
	background: linear-gradient(135deg, #1f2937, #4b5563) !important;
	color: #fff !important;
}

.back-button-container button,
.back-button-container1 button,
#backBtnContainer button {
	background: linear-gradient(135deg, #16a34a, #15803d) !important;
	color: #fff !important;
}

.back-button-container button:hover,
.back-button-container button:focus,
.back-button-container button:active,
.back-button-container1 button:hover,
.back-button-container1 button:focus,
.back-button-container1 button:active,
#backBtnContainer button:hover,
#backBtnContainer button:focus,
#backBtnContainer button:active {
	background: linear-gradient(135deg, #15803d, #166534) !important;
	color: #fff !important;
}

@media (max-width: 600px) {
	.file-label,
	.file-label-gallery,
	.pregledzahtjeva-button,
	.pronadikorisnika-button,
	.ocitajrfid-button,
	.pregledpovijesti-button,
	.lociraj-posudu-button,
	.offline-mode-button,
	.button-prihvati-izmjene,
	.button-ponisti,
	.button-rijesio,
	.button-zatvori,
	.button-ispravak,
	.button-aktiviraj,
	.back-button-container button,
	.back-button-container1 button,
	#backBtnContainer button {
		min-height: 50px;
		padding: 13px 14px !important;
		font-size: 0.96rem !important;
	}
}

.back-button-container button,
.back-button-container1 button,
#backBtnContainer button {
	min-height: 44px !important;
	padding: 9px 16px !important;
	font-size: 0.95rem !important;
}

@media (max-width: 600px) {
	.back-button-container button,
	.back-button-container1 button,
	#backBtnContainer button {
		min-height: 42px !important;
		padding: 8px 14px !important;
		font-size: 0.93rem !important;
	}
}

.section-title-crisp {
	margin: 0 0 12px 0;
	font-size: 15px !important;
	font-weight: 700;
	letter-spacing: 0.2px;
	line-height: 1.35;
	color: #1f2937;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}