/* Upravljanje zgradom — frontend portal za stanare */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');

.uz-fe, .uz-fe * { font-family: 'Montserrat', -apple-system, sans-serif; }
.uz-fe { max-width: 100%; width: 100%; margin: 0 auto; color: #2C4B68; font-size: 15px; }
.uz-fe h2 { color: #2C4B68; margin: 0 0 4px; }

/* Hero banner — pun širine (full-bleed) kao na naslovnoj */
.uz-hero { background: #2C4B68; border-radius: 0; padding: 60px 24px; text-align: center; color: #fff; margin-bottom: 20px; width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; }
.uz-hero h1 { color: #fff !important; font-size: 34px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; margin: 0 0 16px; line-height: 1.2; }
.uz-hero p { color: #dbe4ee; font-size: 17px; margin: 0 auto 26px; max-width: 620px; }
.uz-hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.uz-hero-btn { display: inline-block; background: #E8862E; color: #fff !important; text-decoration: none !important; border-bottom: none !important; box-shadow: none !important; padding: 13px 30px; border-radius: 6px; font-weight: 600; text-transform: uppercase; letter-spacing: .5px; font-size: 15px; }
.uz-hero-btn:hover { background: #d1741f; text-decoration: none !important; }
@media (max-width: 600px) { .uz-hero h1 { font-size: 24px; } }

/* Traka sa korisnikom */
.uz-fe-userbar { text-align: right; border-bottom: 2px solid #2C4B68; padding-bottom: 8px; margin-bottom: 16px; }
.uz-fe-user { font-size: 13px; color: #667; }
.uz-fe-user a, .uz-fe-adminlink a { color: #E8862E; }
.uz-fe-adminlink { background: #fbf2e8; border-left: 4px solid #E8862E; padding: 8px 12px; border-radius: 4px; font-size: 14px; }
.uz-ok { background: #e7f6ea; border-left: 4px solid #4a9d5b; padding: 8px 12px; border-radius: 4px; margin-bottom: 12px; }

/* Kartice */
.uz-cards { display: flex; gap: 14px; flex-wrap: wrap; margin: 16px 0 20px; }
.uz-card { flex: 1 1 160px; background: #fff; border: 1px solid #dfe3e8; border-left: 5px solid #2C4B68; border-radius: 8px; padding: 14px 18px; display: flex; flex-direction: column; }
.uz-card .uz-num { font-size: 24px; font-weight: 700; color: #2C4B68; }
.uz-card .uz-lbl { font-size: 12px; color: #667; margin-top: 2px; }
.uz-card-dug { border-left-color: #E8862E; }
.uz-card-dug .uz-num { color: #E8862E; font-size: 18px; }

/* Tabovi kao pilule (meni gore) */
.uz-tabs { display: block; margin-bottom: 18px; }
.uz-tabrow { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.uz-tabbtn { background: #eef1f4; border: none; border-radius: 999px; padding: 9px 20px; cursor: pointer; font-size: 14px; font-weight: 600; color: #2C4B68; transition: background .15s; }
.uz-tabbtn:hover { background: #e2e7ec; }
.uz-tabbtn.uz-active { background: #E8862E; color: #fff; }
.uz-tab { display: none; }
.uz-tab.uz-active { display: block; }

/* Filter bar na portalu */
.uz-fefilter { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; }
.uz-fefilter input[type=text], .uz-fefilter select { border: 1px solid #cdd4db; border-radius: 6px; padding: 8px 10px; font-size: 14px; }
.uz-fefilter input[type=text] { flex: 1 1 220px; }

/* Kvarovi */
.uz-kvar { background: #fff; border: 1px solid #dfe3e8; border-radius: 12px; padding: 16px 18px; margin-bottom: 14px; }
.uz-kvar-img { display: flex; gap: 16px; align-items: flex-start; }
.uz-kvar-slika { flex: 0 0 160px; }
.uz-kvar-slika img { width: 160px; height: 130px; object-fit: cover; border-radius: 8px; display: block; }
.uz-kvar-body { flex: 1; min-width: 0; }

/* Push dugme */
.uz-push-wrap { display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-left: 10px; }
.uz-push-btn { background: #2C4B68; color: #fff; border: none; border-radius: 20px; padding: 6px 14px; font-size: 13px; font-weight: 600; cursor: pointer; }
.uz-push-btn:hover { background: #24405a; }
.uz-push-btn[data-on="1"] { background: #4a9d5b; }
.uz-push-note { font-size: 12px; color: #667; }

/* Izvođač — svetloplavi okvir u meta liniji */
.uz-izv-tag { display: inline-block; background: #eaf2fb; border: 1px solid #b9d4ef; color: #2C4B68; border-radius: 6px; padding: 1px 9px; margin-left: 6px; font-size: 12.5px; }
.uz-izv-tag strong { color: #2C4B68; }

/* Zakazani radovi — izveštaj o radovima + fotografija */
.uz-zizv { background: #f2f6fa; border-left: 4px solid #3A7CA5; border-radius: 6px; padding: 8px 12px; margin: 8px 0; color: #2C4B68; }
.uz-tab-zakazani .uz-kvar-slika { flex: none; margin-top: 8px; }
.uz-tab-zakazani .uz-kvar-slika img { width: auto; max-width: 320px; height: auto; max-height: 240px; border-radius: 8px; border: 1px solid #dfe3e8; }
@media (max-width: 600px) { .uz-tab-zakazani .uz-kvar-slika img { max-width: 100%; } }

/* Okvir sa rokom (desni ugao kartice) */
.uz-rokbox { float: right; text-align: right; border: 2px solid #E8862E; border-radius: 8px; padding: 6px 12px; font-size: 12px; color: #2C4B68; margin: 0 0 8px 14px; line-height: 1.5; background: #fbf2e8; }
.uz-rokbox strong { color: #2C4B68; font-size: 13px; }
.uz-rokbox .uz-rok-late { color: #d9534f; }
@media (max-width: 600px) { .uz-rokbox { float: none; text-align: left; display: inline-block; margin: 0 0 8px; } }
@media (max-width: 600px) { .uz-kvar-img { flex-direction: column; } .uz-kvar-slika, .uz-kvar-slika img { width: 100%; } }

/* Moji podaci forma */
.uz-mojform label { font-weight: 600; color: #2C4B68; font-size: 14px; }
.uz-mojform input[type=text], .uz-mojform textarea, .uz-mojform select { width: 100%; border: 1px solid #cdd4db; border-radius: 6px; padding: 9px 10px; font-size: 14px; box-sizing: border-box; }
.uz-mojform p { margin: 0 0 14px; }
.uz-mojgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; margin-bottom: 14px; }
.uz-mojgrid label { display: block; }
@media (max-width: 600px) { .uz-mojgrid { grid-template-columns: 1fr; } }
.uz-kontakt { color: #2C4B68; background: #eef3f8; border-radius: 6px; padding: 4px 10px; display: inline-block; }
.uz-izv-kat { color: #2C4B68; border-bottom: 2px solid #E8862E; padding-bottom: 5px; margin: 22px 0 12px; }
.uz-pdf-btn { display: inline-block; background: #2C4B68; color: #fff !important; text-decoration: none !important; padding: 8px 16px; border-radius: 6px; font-weight: 600; font-size: 13px; }
.uz-pdf-btn:hover { background: #21384f; }

/* Status forma (izvođač) */
.uz-statusform { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 10px 0; font-size: 14px; }
.uz-statusform select { padding: 6px 8px; border: 1px solid #cdd4db; border-radius: 6px; }
.uz-kvar-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.uz-kvar-head strong { font-size: 16px; margin-right: 4px; }
.uz-kvar-opis { margin: 8px 0; }
.uz-kvar-meta { font-size: 13px; color: #667; margin-bottom: 8px; }

/* Bedzevi */
.uz-badge, .uz-prio { display: inline-block; padding: 2px 10px; border-radius: 12px; font-size: 12px; font-weight: 600; color: #fff; }
.uz-badge-nov { background: #E8862E; }
.uz-badge-primljen { background: #6b8cae; }
.uz-badge-trazenje { background: #b07d2b; }
.uz-badge-utoku { background: #3A7CA5; }
.uz-badge-pauziran { background: #9aa5b1; }
.uz-badge-reseno { background: #4a9d5b; }
.uz-k-edit { margin-top: 4px; }
.uz-k-edit summary { cursor: pointer; color: #E8862E; font-size: 12px; }
.uz-k-edit textarea { width: 100%; border: 1px solid #cdd4db; border-radius: 6px; padding: 6px; margin: 6px 0; }
.uz-prio-nizak { background: #9aa5b1; }
.uz-prio-srednji { background: #3A7CA5; }
.uz-prio-visok { background: #d9534f; }
.uz-muted { color: #8a94a0; font-size: 13px; }

/* Komentari */
.uz-kvar-komentari { border-top: 1px dashed #dfe3e8; padding-top: 10px; margin-top: 6px; }
.uz-kvar-komentari h4 { margin: 0 0 8px; color: #2C4B68; font-size: 14px; }
.uz-komentar { background: #f6f8fa; border-radius: 6px; padding: 8px 10px; margin-bottom: 6px; }
.uz-k-autor { font-weight: 700; color: #2C4B68; font-size: 13px; }
.uz-k-datum { font-size: 12px; color: #8a94a0; margin-left: 6px; }
.uz-k-tekst { margin-top: 3px; font-size: 14px; }
.uz-k-uime { font-size: 11.5px; color: #7a5a2e; background: #fbf2e8; border: 1px solid #f0d6b6; border-radius: 10px; padding: 1px 8px; margin-left: 6px; }
.uz-k-delform { margin-top: 4px; margin-left: 10px; }
.uz-k-delbtn { background: none; border: none; color: #b32d2e; font-size: 12px; cursor: pointer; padding: 0; text-decoration: underline; }
.uz-k-delbtn:hover { color: #8a1f1f; }
.uz-komform { margin-top: 8px; }
.uz-uime { display: inline-flex; align-items: center; gap: 6px; background: #fbf2e8; border: 1px solid #f0d6b6; color: #7a5a2e; border-radius: 6px; padding: 6px 10px; font-size: 13px; margin: 6px 0; }
.uz-uime strong { color: #b5701a; }
.uz-komform textarea { width: 100%; border: 1px solid #cdd4db; border-radius: 6px; padding: 8px; font-size: 14px; }
.uz-btn { background: #E8862E !important; color: #fff !important; border: none !important; border-radius: 6px; padding: 11px 22px; font-weight: 700; cursor: pointer; margin-top: 6px; text-transform: uppercase; letter-spacing: .6px; font-size: 14px; }
.uz-btn:hover { background: #d1741f !important; }

/* Tabele */
.uz-table { width: 100%; border-collapse: collapse; background: #fff; }
.uz-table th, .uz-table td { border: 1px solid #e3e7ec; padding: 8px 10px; text-align: left; font-size: 14px; }
.uz-table th { background: #2C4B68; color: #fff; font-weight: 600; }
.uz-table tr:nth-child(even) td { background: #f6f8fa; }

/* Info / Šta je novo */
.uz-info-ver { background: #fff; border: 1px solid #dfe3e8; border-left: 5px solid #2C4B68; border-radius: 8px; padding: 14px 18px; margin-bottom: 12px; }
.uz-info-head { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.uz-info-badge { background: #2C4B68; color: #fff; font-weight: 700; font-size: 13px; padding: 3px 12px; border-radius: 20px; letter-spacing: .3px; }
.uz-info-list { margin: 0; padding-left: 20px; }
.uz-info-list li { margin: 4px 0; line-height: 1.5; }

/* Izveštaji */
.uz-izv { background: #fff; border: 1px solid #dfe3e8; border-radius: 8px; padding: 14px 16px; margin-bottom: 12px; }
.uz-izv-head { margin-bottom: 6px; }

/* Mini lista kvarova (za naslovnu) */
.uz-kvarovi-list h3 { color: #2C4B68; margin: 0 0 10px; }
.uz-kvar-mini { list-style: none; margin: 0; padding: 0; }
.uz-kvar-mini li { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 8px 0; border-bottom: 1px solid #eef1f4; }
.uz-kvar-mini li:last-child { border-bottom: none; }
.uz-km-naslov { font-weight: 600; color: #2C4B68; }
.uz-km-datum { margin-left: auto; }

/* Login — redizajn */
.uz-login-wrap { display: flex; justify-content: center; padding: 30px 16px 50px; }
.uz-login-card { width: 100%; max-width: 420px; background: #fff; border: 1px solid #e3e9f0; border-radius: 16px; box-shadow: 0 12px 40px rgba(44,75,104,.12); padding: 36px 32px 30px; text-align: center; }
.uz-login-logo { width: 84px; height: 84px; border-radius: 18px; display: block; margin: 0 auto 16px; box-shadow: 0 6px 18px rgba(44,75,104,.18); }
.uz-login-eyebrow { text-transform: uppercase; letter-spacing: 2.5px; font-size: 11px; font-weight: 600; color: #E8862E; }
.uz-login-title { font-size: 24px; font-weight: 700; color: #2C4B68; margin: 4px 0 10px; }
.uz-login-desc { font-size: 13.5px; color: #63758a; line-height: 1.55; margin: 0 0 22px; }
.uz-login-card .login { margin: 0; }
.uz-login-card .login p { margin: 0 0 14px; text-align: left; }
.uz-login-card label { display: block; font-weight: 600; color: #2C4B68; font-size: 13px; margin-bottom: 5px; }
.uz-login-card input[type=text], .uz-login-card input[type=password] { width: 100%; border: 1px solid #cdd7e1; border-radius: 9px; padding: 12px 14px; font-size: 15px; background: #f8fafc; transition: border-color .15s, box-shadow .15s; }
.uz-login-card input[type=text]:focus, .uz-login-card input[type=password]:focus { border-color: #2C4B68; box-shadow: 0 0 0 3px rgba(44,75,104,.12); background: #fff; outline: none; }
.uz-login-card .login-remember { font-weight: 400; }
.uz-login-card .login-remember label { display: inline-flex; align-items: center; gap: 7px; font-weight: 400; color: #63758a; font-size: 13px; }
.uz-login-card .login-submit { text-align: center; }
.uz-login-card .button-primary, .uz-login-card #wp-submit { width: 100%; background: #E8862E !important; border: none !important; color: #fff !important; border-radius: 9px !important; padding: 13px !important; font-weight: 700 !important; text-transform: uppercase; letter-spacing: .6px; font-size: 14px !important; cursor: pointer; box-shadow: none !important; height: auto !important; }
.uz-login-card .button-primary:hover, .uz-login-card #wp-submit:hover { background: #d1741f !important; }
.uz-login-help { margin: 18px 0 0; font-size: 12px; color: #8a97a6; }
.uz-login-err { background: #fdeaea; border: 1px solid #f2c4c4; color: #b02a2a; border-radius: 9px; padding: 10px 14px; font-size: 13px; margin-bottom: 16px; text-align: left; }
