:root{
  font-family:"Inter","Segoe UI Variable","Segoe UI",Arial,sans-serif;
  --bits-ink:#2a333d;
  --bits-ink-2:#3a434d;
  --bits-muted:#707883;
  --bits-red:#b5161c;
  --bits-red-dark:#921117;
  --bits-red-soft:#f9eceb;
  --bits-line:#ddd9d2;
  --bits-panel:#f2f0eb;
  --bits-soft:#f7f5f1;
  --bits-white:#fcfbf8;
  --bits-green:#286848;
  --bits-green-soft:#edf5ef;
  --bits-amber:#8c5b18;
  --bits-amber-soft:#f7f0e4;
  color:var(--bits-ink);
  background:#f2f0eb;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:#f2f0eb;color:var(--bits-ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--bits-red);text-underline-offset:3px}
a:hover{color:var(--bits-red-dark)}
::selection{background:#efd2d2;color:#26313b}

/* Global brand header */
.topbar{
  min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:24px;
  padding:0 max(24px,calc((100vw - 1320px)/2));background:#f8f6f2;border-bottom:1px solid var(--bits-line);
  position:relative;z-index:20;
}
.topbar>div:first-child{display:flex;align-items:center;gap:8px;white-space:nowrap}
.topbar strong{font-weight:780;letter-spacing:-.015em;color:#27313b}
.topbar .muted{font-size:.95rem;color:#7a808a}
.topbar nav{display:flex;align-items:center;gap:9px;color:#7a808a;font-size:.92rem;flex-wrap:wrap;justify-content:flex-end}
.topbar nav a{text-decoration:none;color:#4c5560;font-weight:620;padding:7px 4px;border-bottom:2px solid transparent}
.topbar nav a:hover{color:var(--bits-red);border-bottom-color:var(--bits-red)}
.topbar:after{content:"";position:absolute;left:max(24px,calc((100vw - 1320px)/2));bottom:-1px;width:76px;height:2px;background:var(--bits-red)}

.shell{min-height:100vh;display:grid;place-items:center;padding:52px 22px;background:linear-gradient(115deg,#f3f1ec 0 58%,#ebe8e1 58% 100%)}
.dashboard{max-width:1280px;margin:0 auto;padding:58px 28px 78px}
.card{width:min(900px,100%);margin:0 auto;background:#fcfbf8;border:1px solid var(--bits-line);border-radius:4px;padding:42px;box-shadow:none}
.card.wide{width:min(1220px,100%);border:0;padding:0;background:transparent}
.card.narrow{width:min(510px,100%);border-radius:4px;padding:50px 46px;border-top:4px solid var(--bits-red);box-shadow:0 24px 70px rgba(17,24,39,.08)}

.eyebrow{font-size:.76rem;font-weight:850;letter-spacing:.18em;text-transform:uppercase;color:var(--bits-red);margin-bottom:16px}
h1{font-size:clamp(2rem,4.15vw,3.25rem);line-height:1.06;letter-spacing:-.035em;margin:0 0 18px;font-weight:760;color:#27313b}
h2{font-size:clamp(1.24rem,1.8vw,1.58rem);line-height:1.2;letter-spacing:-.018em;margin:0 0 12px;font-weight:720;color:#303944}
h3{font-size:1.06rem;margin:24px 0 10px;color:#3a434d;font-weight:700}
p,li,label,input,button,textarea,select{font-size:.98rem;line-height:1.58}
p{margin:0 0 15px}.muted{color:var(--bits-muted)}.req{color:var(--bits-red)}

/* Buttons: site-like dark CTA with red hover */
button,.button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;padding:12px 19px;
  min-height:46px;border:1px solid #39434d;border-radius:3px;background:#39434d;color:#fff;
  font-weight:780;text-decoration:none;cursor:pointer;transition:.18s ease;box-shadow:none
}
button:hover,.button:hover{background:var(--bits-red);border-color:var(--bits-red);color:#fff;transform:translateY(-1px)}
button.secondary,.button.secondary{background:#f9f8f5;color:#39434d;border-color:#cfcac2}
button.secondary:hover,.button.secondary:hover{background:#f0ede7;color:var(--bits-red);border-color:#bbb5ad}
button:disabled,.button.disabled{opacity:.4;cursor:not-allowed;transform:none}
.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}

/* Forms */
label{display:block;font-weight:720;margin:20px 0 7px;color:#252b35}
input:not([type=checkbox]):not([type=radio]),textarea,select{
  width:100%;padding:13px 14px;border:1px solid #cbc7c0;border-radius:3px;background:#fbfaf7;color:#303944;
  outline:none;transition:border-color .16s,box-shadow .16s,background .16s
}
input:not([type=checkbox]):not([type=radio]):focus,textarea:focus,select:focus{border-color:var(--bits-red);box-shadow:0 0 0 3px rgba(181,22,28,.09)}
textarea{resize:vertical;min-height:92px}.field{margin-bottom:22px}.field-meta{font-size:.78rem;color:#98a2b3;margin-top:5px}.field-error{font-size:.9rem;color:var(--bits-red);margin-top:6px;font-weight:650}
.check{display:flex;align-items:flex-start;gap:9px;font-weight:620;margin:8px 0}.check input{width:auto;margin-top:5px;accent-color:var(--bits-red)}.checks{display:flex;gap:18px;flex-wrap:wrap;margin:14px 0}
code{background:#f2f2f2;border-radius:2px;padding:2px 5px}

/* Status / badges */
.status{display:flex;gap:10px;align-items:flex-start;margin:17px 0;padding:13px 15px;border-radius:3px;font-weight:650;border-left:3px solid #9da3ad;background:#f6f7f8;color:#39404b}
.status.ok,.status.success{background:var(--bits-green-soft);color:#125d3c;border-left-color:#3f9968}
.status.warn{background:var(--bits-amber-soft);color:#8a4b00;border-left-color:#d59b3e}
.status.error{background:var(--bits-red-soft);color:#9e171c;border-left-color:var(--bits-red)}
.badge{display:inline-flex;align-items:center;padding:5px 9px;background:#f0f1f3;color:#5f6670;border-radius:999px;font-weight:750;font-size:.78rem;letter-spacing:.01em}

/* Dashboard */
.workflow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:42px;background:var(--bits-line);border:1px solid var(--bits-line)}
.panel{padding:28px 30px;border:0;border-radius:0;background:#fcfbf8;min-height:245px;position:relative;transition:background .18s ease}
.panel:hover{background:#f6f3ee}.workflow-card h2{font-size:1.55rem;margin-bottom:18px}.workflow-card p{max-width:520px;color:#464d58}.workflow-card .button{position:absolute;left:30px;bottom:28px}.workflow-card .badge{margin-top:6px}
.workflow-card:first-child{background:#3a434d;color:#fff}.workflow-card:first-child h2,.workflow-card:first-child p{color:#fff}.workflow-card:first-child p{opacity:.82}.workflow-card:first-child .badge{background:rgba(255,255,255,.12);color:#fff}.workflow-card:first-child .button{background:#fff;color:#111827;border-color:#fff}.workflow-card:first-child .button:hover{background:var(--bits-red);color:#fff;border-color:var(--bits-red)}

/* General grids / cards */
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}
.location-list{display:grid;gap:10px;margin:20px 0}.location-card,.location-editor{border:1px solid var(--bits-line);border-radius:3px;padding:20px;background:#f8f6f2}.location-editor{margin:20px 0}.location-editor h2{margin-bottom:4px}.location-editor h3{margin-top:20px;margin-bottom:10px}.location-editor .actions{margin-top:18px}

/* Questionnaire — more like a guided site experience */
.questionnaire-layout{display:grid;grid-template-columns:305px minmax(0,1fr);min-height:calc(100vh - 72px);background:#f2f0eb}
.q-sidebar{background:#ebe8e1;border-right:1px solid var(--bits-line);padding:38px 20px 60px;overflow:auto;position:sticky;top:72px;height:calc(100vh - 72px)}
.sidebar-title{font-weight:800;margin-bottom:17px;font-size:1.02rem}.sidebar-steps{list-style:none;padding:0;margin:0}.sidebar-steps li{margin:1px 0}.sidebar-steps li a{display:grid;grid-template-columns:44px 1fr;gap:8px;padding:9px 9px;border-radius:2px;text-decoration:none;color:#515862;font-size:.86rem;line-height:1.28;border-left:2px solid transparent}.sidebar-steps li a:hover{background:#fff;color:#111827}.sidebar-steps li.current a{background:#f8f6f2;color:#111827;border-left-color:var(--bits-red)}.sidebar-steps li.current strong{color:var(--bits-red)}.sidebar-steps span{font-family:Inter,system-ui,sans-serif;font-weight:800;color:#9aa0a8}
.q-main{padding:46px 48px 70px;background:#f8f6f2}.q-card{width:min(920px,100%);border:0;padding:0;background:transparent}.q-card>h1{font-size:clamp(1.9rem,3.25vw,2.85rem);max-width:850px;font-weight:750}.q-card>p.muted{font-size:1.05rem;max-width:800px;margin-bottom:28px}
.progress-head{display:flex;justify-content:space-between;max-width:920px;margin:0 auto 10px;color:#7a808a;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.progress{max-width:920px;height:4px;background:#ececec;border-radius:0;margin:0 auto 34px;overflow:hidden}.progress span{display:block;height:100%;background:var(--bits-red);border-radius:0}.q-nav{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--bits-line);margin-top:40px;padding-top:22px}.q-nav a{text-decoration:none;font-weight:750}.q-main form{max-width:920px}

/* Review / metrics */
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:22px 0;background:var(--bits-line);border:1px solid var(--bits-line)}.metric{background:#fcfbf8;border:0;border-radius:0;padding:18px;display:flex;flex-direction:column;gap:3px}.metric strong{font-size:1.8rem}.metric span{color:#6b7280;font-size:.88rem}.review-section{margin:28px 0}.review-item{border:1px solid var(--bits-line);background:#fcfbf8;border-radius:3px;padding:16px;margin:10px 0}.review-item.blocker{border-left:4px solid #991b1b}.review-item.warning,.review-item.high{border-left:4px solid #b45309}.review-item.info,.review-item.normal{border-left:4px solid #64748b}.review-item.low{border-left:4px solid #94a3b8}.review-item-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}.review-item p{margin:.6rem 0}.review-summary{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.inline-review{display:grid;grid-template-columns:minmax(150px,220px) 1fr auto;gap:8px;align-items:center;margin-top:10px}.final-confirm-form{display:grid;gap:14px;max-width:900px}

/* Tables used in expert/admin screens */
table{border-collapse:collapse}table th{font-weight:780;color:#303642}table td,table th{border-color:#e2e4e7!important}table thead th{background:#f5f5f5!important}

/* Login */
.shell .card.narrow:before{content:"ZAŠTIĆENI KLIJENTSKI PORTAL";display:block;font-size:.72rem;letter-spacing:.16em;font-weight:850;color:#7a808a;margin-bottom:22px}.shell .card.narrow h1{font-size:3rem}.shell .card.narrow form button{width:100%}

.video-only{display:none}

@media(max-width:980px){
  .questionnaire-layout{grid-template-columns:1fr}.q-sidebar{display:none}.q-main{padding:34px 24px 60px}
  .grid,.workflow-grid,.form-grid{grid-template-columns:1fr}.workflow-grid{gap:1px}.workflow-card{min-height:220px}.topbar{padding:14px 22px;min-height:68px}.topbar:after{left:22px}.dashboard{padding:46px 22px 64px}.card{padding:30px 24px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-review{grid-template-columns:1fr}
}
@media(max-width:650px){
  .topbar{align-items:flex-start;flex-direction:column;gap:7px}.topbar nav{justify-content:flex-start}.dashboard{padding:34px 17px 50px}.shell{padding:28px 16px}.card.narrow{padding:38px 26px}.q-main{padding:28px 18px 50px}.q-card>h1{font-size:2.15rem}.checks{display:block}.metric-grid{grid-template-columns:1fr}.workflow-card{min-height:230px}.workflow-card .button{left:24px;bottom:24px}.panel{padding:24px}
}


/* UI REDESIGN V2 polish */
@media(min-width:981px){
  .topbar{min-height:68px}
  .dashboard{padding-top:54px}
}


/* UI REDESIGN V3 — softer BUSINESS IT SYSTEMS portal */
html{background:#f2f0eb}
body{font-family:"Inter","Segoe UI Variable","Segoe UI",Arial,sans-serif}
.eyebrow{font-size:.72rem;letter-spacing:.17em;font-weight:780}
.muted{color:#737b85}
table thead th{background:#efede8!important}
table td,table th{border-color:#dcd8d1!important}
.status{background:#efede8;color:#4a535d;border-left-color:#9aa0a6}
.badge{background:#e9e6e0;color:#646c75}
.shell .card.narrow h1{font-size:2.45rem;font-weight:750}
@media(max-width:650px){.q-card>h1{font-size:2rem}}


/* V5.4 — location/object hierarchy */
.q-card .location-editor h2{color:#303944}
.q-card .location-list .location-card form{margin-bottom:0}
@media(min-width:900px){
  .q-card .location-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* V5.5 — Q03/Q03A guided location -> objects flow */
.q03a-location-picker .location-card{display:flex;flex-direction:column;gap:7px;align-items:flex-start}
.q03a-location-picker .selected-location{background:#f7eeec;border-color:#d9a5a6;box-shadow:inset 3px 0 0 var(--bits-red)}
.q03a-location-picker .button{margin-top:auto}
.object-mini-list{margin:4px 0 7px;padding-left:18px;color:#65707b;font-size:.9rem}
.object-mini-list li{margin:3px 0}
.q03a-object-form{margin-top:24px;padding:24px;background:#f8f6f2;border:1px solid var(--bits-line)}
.q03a-object-form h2{margin-bottom:3px}


/* V5.6 — questionnaire CRUD + clearer save/continue */
.record-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--bits-line)}
.record-actions details{position:relative}.record-actions summary{cursor:pointer;color:var(--bits-red);font-weight:700;list-style:none}.record-actions summary::-webkit-details-marker{display:none}
.inline-edit-form{margin-top:10px;padding:14px;background:#f8f6f2;border:1px solid var(--bits-line);min-width:min(620px,75vw)}
.text-danger{background:transparent!important;border:0!important;color:#9d1b20!important;padding:0!important;min-height:auto!important;font-weight:700;cursor:pointer}
.record-note{margin-top:8px;color:#68717b;font-size:.92rem}
.object-record-list{display:grid;gap:9px;margin:8px 0}.object-record{padding:9px 0;border-top:1px solid var(--bits-line)}
.step-continue{margin-top:28px;padding-top:20px;border-top:1px solid var(--bits-line);display:flex;justify-content:flex-end}
.time24{font-variant-numeric:tabular-nums;letter-spacing:.04em}
@media(max-width:700px){.inline-edit-form{min-width:0;width:100%}.record-actions{align-items:flex-start}.step-continue{justify-content:stretch}.step-continue .button{width:100%;text-align:center}}


/* V5.7 — permanent CRUD rule for individual/repeatable questionnaire records */
.repeatable-actions{margin-top:12px}
.repeatable-edit-form{max-width:820px}
.repeatable-edit-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.repeatable-edit-form .full-field{grid-column:1/-1}
.repeatable-manage-list{display:grid;gap:10px;margin:12px 0 22px}
.repeatable-manage-row{padding:12px 14px;border:1px solid var(--bits-line);background:#f8f6f2}
@media(max-width:720px){
  .repeatable-edit-form .form-grid{grid-template-columns:1fr}
  .repeatable-edit-form .full-field{grid-column:auto}
}


/* V5.8 — navigation consistency
   Direct "next" navigation is removed from the global footer so users cannot
   accidentally leave a single form without saving. */
.q-nav-prev-only{grid-template-columns:1fr 1fr}


/* V5.9 — unified page save controls + explicit item memorization */
.page-final-actions{
  margin-top:32px;
  padding-top:22px;
  border-top:1px solid var(--bits-line);
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
}
.page-footer-generic-form{display:none}
.internal-page-save-button,.internal-page-save-actions{display:none!important}
.item-memory-action{margin-top:18px;display:flex;align-items:center}
.item-memory-action button{min-width:170px}

/* Edit/Delete share one baseline everywhere. */
.record-actions{display:flex;align-items:center!important;gap:12px;flex-wrap:wrap}
.record-actions>form{margin:0!important;display:flex;align-items:center}
.record-actions details{margin:0;display:flex;align-items:center}
.record-actions summary,.record-actions .text-danger{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  vertical-align:middle;
}
@media(max-width:700px){
  .page-final-actions{align-items:stretch}
  .page-final-actions button{width:100%}
}


/* V5.9.1 — exact visual alignment for Edit / Delete */
.record-actions{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
.record-actions > details,
.record-actions > form{
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
  min-height:32px!important;
}
.record-actions summary,
.record-actions .text-danger{
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  line-height:32px!important;
  font:inherit!important;
  font-weight:700!important;
  vertical-align:middle!important;
}
.record-actions summary{
  cursor:pointer!important;
  list-style:none!important;
}
.record-actions summary::-webkit-details-marker{display:none!important}
.record-actions summary::marker{content:""!important}
.record-actions .text-danger{
  background:transparent!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}


/* V5.9.2 — small explanatory note under fields */
.field-hint{
  display:block;
  margin-top:5px;
  color:#7a838d;
  font-size:.84rem;
}


/* V5.9.3 — stable Edit/Delete action row even while the edit panel is open.
   The actions stay fixed in one row; the expanded editor always opens below them. */
.record-actions{
  position:relative!important;
  display:block!important;
  min-height:34px!important;
  padding-top:34px!important;
  margin-top:12px!important;
}

.record-actions > details{
  display:block!important;
  margin:0!important;
  padding:0!important;
  min-height:0!important;
  width:100%!important;
}

.record-actions > details > summary{
  position:absolute!important;
  top:0!important;
  left:0!important;
  display:inline-flex!important;
  align-items:center!important;
  height:30px!important;
  min-height:30px!important;
  line-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  list-style:none!important;
  cursor:pointer!important;
  font:inherit!important;
  font-weight:700!important;
}

.record-actions > details > summary::-webkit-details-marker{display:none!important}
.record-actions > details > summary::marker{content:""!important}

.record-actions > form{
  position:absolute!important;
  top:0!important;
  left:72px!important;
  display:flex!important;
  align-items:center!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:0!important;
}

.record-actions > form .text-danger{
  display:inline-flex!important;
  align-items:center!important;
  height:30px!important;
  min-height:30px!important;
  line-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  font:inherit!important;
  font-weight:700!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

.record-actions > details[open] > .inline-edit-form{
  position:relative!important;
  display:block!important;
  margin-top:8px!important;
  width:min(760px,100%)!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Prevent the expanded editor from changing the vertical alignment of the action labels. */
.record-actions > details[open]{
  min-height:0!important;
}


/* V5.9.4 — stable CRUD toolbar + reliable direct footer */
.page-footer-direct-form{
  display:flex!important;
}

/* Once JS enhances a CRUD row, discard all previous absolute-position hacks. */
.record-actions.actions-enhanced{
  position:static!important;
  display:block!important;
  min-height:0!important;
  padding-top:0!important;
  margin-top:12px!important;
}

.record-actions.actions-enhanced > .record-action-bar{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0!important;
}

.record-actions.actions-enhanced > .record-action-bar > form{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}

.record-actions.actions-enhanced .record-edit-toggle,
.record-actions.actions-enhanced .record-action-bar .text-danger{
  position:static!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--bits-red)!important;
  font:inherit!important;
  font-weight:700!important;
  line-height:30px!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

.record-actions.actions-enhanced > details{
  position:static!important;
  display:block!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}

.record-actions.actions-enhanced > details > summary{
  display:none!important;
}

.record-actions.actions-enhanced > details:not([open]) > .inline-edit-form{
  display:none!important;
}

.record-actions.actions-enhanced > details[open] > .inline-edit-form{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:10px 0 0 0!important;
  box-sizing:border-box!important;
}


/* V5.9.5 — definitive CRUD layout; no JavaScript layout dependency */
.record-actions,
.record-actions.actions-enhanced{
  position:relative!important;
  display:block!important;
  min-height:34px!important;
  margin-top:12px!important;
  padding:34px 0 0 0!important;
  border-top:1px solid var(--bits-line)!important;
  box-sizing:border-box!important;
}

.record-actions > details,
.record-actions.actions-enhanced > details{
  position:static!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}

.record-actions > details > summary,
.record-actions.actions-enhanced > details > summary{
  position:absolute!important;
  top:2px!important;
  left:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--bits-red)!important;
  font:inherit!important;
  font-weight:700!important;
  line-height:30px!important;
  list-style:none!important;
  cursor:pointer!important;
}
.record-actions > details > summary::-webkit-details-marker{display:none!important}
.record-actions > details > summary::marker{content:""!important}

.record-actions > form,
.record-actions.actions-enhanced > form,
.record-actions > .record-action-bar > form{
  position:absolute!important;
  top:2px!important;
  left:76px!important;
  display:flex!important;
  align-items:center!important;
  width:auto!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:0!important;
}

.record-actions > form .text-danger,
.record-actions.actions-enhanced .text-danger,
.record-actions > .record-action-bar .text-danger{
  position:static!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--bits-red)!important;
  font:inherit!important;
  font-weight:700!important;
  line-height:30px!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

/* No stale JS toolbar should affect layout even if browser preserved old DOM. */
.record-actions > .record-action-bar{
  display:none!important;
}

.record-actions > details:not([open]) > .inline-edit-form{
  display:none!important;
}

.record-actions > details[open] > .inline-edit-form{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:10px 0 0 0!important;
  padding:14px!important;
  box-sizing:border-box!important;
}

/* Keep each editor inside its own card/grid column. */
.location-card .record-actions,
.object-record .record-actions,
.repeatable-manage-row .record-actions{
  width:100%!important;
  max-width:100%!important;
}

/* Direct footer must be visible and submit normally. */
.page-footer-direct-form{
  display:flex!important;
}


/* V5.9.6 — only the universal bottom Save / Save-and-continue pair is visible
   on single-form questionnaire pages. */
.page-save-form > .actions:has(button[name="save"]),
.page-save-form > .actions:has(button[name="continue"]){
  display:none!important;
}


/* V5.10 — native form navigation; no inline JavaScript dependency */
.page-final-actions{
  margin-top:32px;
  padding-top:22px;
  border-top:1px solid var(--bits-line);
  display:flex!important;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
}
.page-footer-direct-form{display:flex!important}
.page-final-actions button[form="page-main-form"]{display:inline-flex}

/* Q16 no longer depends on blocked inline JavaScript. */
.video-only{display:block!important}

/* Contact cards use the same CRUD/action language as locations. */
.location-card .status.ok{
  margin:10px 0;
  padding:9px 11px;
}

/* Old internal controls are no longer needed; native footer is authoritative. */
.internal-page-save-button,
.internal-page-save-actions{
  display:none!important;
}


/* V5.10.2 — Q15 aligned answer controls */
.q15-aligned-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0;
}
.q15-aligned-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:3.1em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}
.q15-aligned-grid > div > input,
.q15-aligned-grid > div > select,
.q15-aligned-grid > div > textarea{
  margin-top:auto!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.q15-aligned-grid > div > input,
.q15-aligned-grid > div > select{
  min-height:44px!important;
}

@media(max-width:700px){
  .q15-aligned-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.3 — Q16 aligned fields and clearer technical-security section */
.q16-aligned-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
.q16-aligned-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:3.35em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}
.q16-aligned-grid > div > input,
.q16-aligned-grid > div > select,
.q16-aligned-grid > div > textarea{
  width:100%!important;
  box-sizing:border-box!important;
  margin-top:auto!important;
}
.q16-aligned-grid > div > input,
.q16-aligned-grid > div > select{
  min-height:44px!important;
}

@media(max-width:700px){
  .q16-aligned-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.4 — dependent fields: visually locked until relevant */
.q15-dependency-scope input:disabled,
.q15-dependency-scope select:disabled,
.q15-dependency-scope textarea:disabled,
.q16-dependency-scope input:disabled,
.q16-dependency-scope select:disabled,
.q16-dependency-scope textarea:disabled,
#tech-system-form input:disabled,
#tech-system-form select:disabled,
#tech-system-form textarea:disabled,
#tech-system-form button:disabled{
  background:#ece9e3!important;
  border-color:#d8d3cb!important;
  color:#8a8e93!important;
  cursor:not-allowed!important;
  opacity:1!important;
}

.dependency-disabled > label,
.dependency-disabled > .check,
.dependency-disabled{
  color:#858a90!important;
}

.dependency-required > label::after{
  content:" *";
  color:var(--bits-red);
}

.dependency-message{
  display:none;
  margin:14px 0 18px;
  padding:10px 12px;
  border-left:3px solid #b9b2a8;
  background:#f3f0eb;
  color:#68717b;
  font-size:.92rem;
}
.dependency-message.visible{
  display:block;
}

#tech-system-form .system-location-hint{
  min-height:1.35em;
}


/* V5.10.5 — Q16 system list/form clarity and alignment */
.q16-system-grid{
  row-gap:22px!important;
  column-gap:18px!important;
  align-items:start!important;
}

.q16-system-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.q16-system-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:2.8em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}

.q16-system-grid > div > input,
.q16-system-grid > div > select,
.q16-system-grid > div > textarea{
  width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
}

.q16-system-grid > div > input,
.q16-system-grid > div > select{
  min-height:44px!important;
}

#tech-system-form .system-location-hint{
  display:block;
  min-height:0!important;
  margin-top:6px!important;
  line-height:1.3!important;
}

#tech-system-form > h3,
#tech-system-form + h3{
  margin-top:0;
}

.status.info{
  margin:12px 0 24px;
  padding:10px 12px;
  border-left:3px solid #b8b3aa;
  background:#f3f0eb;
  color:#69727b;
}

@media(max-width:700px){
  .q16-system-grid{
    grid-template-columns:1fr!important;
  }
  .q16-system-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.6 — Q09 aligned two-column controls */
.q09-aligned-grid{
  align-items:start!important;
  column-gap:18px!important;
}

.q09-aligned-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.q09-aligned-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:3.1em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}

.q09-aligned-grid > div > select,
.q09-aligned-grid > div > input{
  width:100%!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}

@media(max-width:700px){
  .q09-aligned-grid{
    grid-template-columns:1fr!important;
  }

  .q09-aligned-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.7 — Q10 aligned dependency fields */
.q10-aligned-grid{
  align-items:start!important;
  column-gap:18px!important;
  row-gap:18px!important;
}

.q10-aligned-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.q10-aligned-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:3.1em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}

.q10-aligned-grid > div > input,
.q10-aligned-grid > div > select{
  width:100%!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}

@media(max-width:700px){
  .q10-aligned-grid{
    grid-template-columns:1fr!important;
  }

  .q10-aligned-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.8 — Q11 equal-height document controls */
.q11-aligned-grid{
  align-items:start!important;
  column-gap:18px!important;
  row-gap:18px!important;
}

.q11-aligned-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.q11-aligned-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:2.8em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}

.q11-aligned-grid > div > input,
.q11-aligned-grid > div > select{
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

/* Native date controls otherwise vary in height between browsers. */
.q11-aligned-grid > div > input[type="date"]{
  line-height:48px!important;
}

@media(max-width:700px){
  .q11-aligned-grid{
    grid-template-columns:1fr!important;
  }

  .q11-aligned-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.9 — global four-digit year validation */
input[type="date"].date-year-invalid{
  border-color:var(--bits-red)!important;
  outline:1px solid var(--bits-red)!important;
  outline-offset:0!important;
}


/* V5.10.10 — secure document upload */
input[type="file"]{
  width:100%;
  box-sizing:border-box;
  padding:10px 12px;
  border:1px solid var(--bits-line);
  background:#fff;
}

.status.ok{
  border-left-color:#2d8a57;
  background:#edf7f1;
  color:#245f40;
}


/* V5.10.11 — Q12 event-history dependency */
.q12-incident-message{
  margin-bottom:16px;
}

.q12-incident-form input:disabled,
.q12-incident-form select:disabled,
.q12-incident-form textarea:disabled,
.q12-incident-form button:disabled{
  background:#ece9e3!important;
  border-color:#d8d3cb!important;
  color:#8a8e93!important;
  cursor:not-allowed!important;
  opacity:1!important;
}


/* V5.10.13 — Q13 asset valuation field alignment only */
.q13-asset-values-grid{
  align-items:start!important;
  column-gap:18px!important;
  row-gap:18px!important;
}

.q13-asset-values-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.q13-asset-values-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:3.2em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}

.q13-asset-values-grid > div > input,
.q13-asset-values-grid > div > select{
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}

@media(max-width:700px){
  .q13-asset-values-grid{
    grid-template-columns:1fr!important;
  }
  .q13-asset-values-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.14 — unified alignment across the entire Q13 form */
.q13-form .q13-unified-grid{
  align-items:start!important;
  column-gap:18px!important;
  row-gap:18px!important;
}

.q13-form .q13-unified-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.q13-form .q13-unified-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:3.25em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}

.q13-form .q13-unified-grid > div > input,
.q13-form .q13-unified-grid > div > select{
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}

/* Full-width Q13 controls follow the same control height. */
.q13-form > input:not([type="hidden"]):not([type="file"]),
.q13-form > select{
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
}

/* Text areas keep natural content height. */
.q13-form > textarea{
  width:100%!important;
  box-sizing:border-box!important;
}

@media(max-width:700px){
  .q13-form .q13-unified-grid{
    grid-template-columns:1fr!important;
  }

  .q13-form .q13-unified-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.15 — deterministic Serbian date entry: DD.MM.GGGG */
input.bits-date-input{
  font-variant-numeric:tabular-nums;
  letter-spacing:.01em;
}

input.bits-date-input::placeholder{
  color:#8c9197;
  opacity:1;
}

input.bits-date-input.date-year-invalid{
  border-color:var(--bits-red)!important;
  outline:1px solid var(--bits-red)!important;
  outline-offset:0!important;
}


/* V5.10.16 — Q14 saved-policy visibility and alignment */
.q14-policy-grid{
  align-items:start!important;
  column-gap:18px!important;
  row-gap:18px!important;
}

.q14-policy-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.q14-policy-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:2.8em!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}

.q14-policy-grid > div > input,
.q14-policy-grid > div > select{
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}

.q14-policy-card small{
  display:block;
  margin-top:4px;
}

@media(max-width:700px){
  .q14-policy-grid{
    grid-template-columns:1fr!important;
  }

  .q14-policy-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.17 — global numeric-entry examples */
.number-entry-hint{
  display:block;
  margin-top:6px!important;
  color:#767d85;
  font-size:.84rem;
  line-height:1.35;
}


/* V5.10.20 — Q15/Q16 control alignment after numeric hints */
.q15-aligned-grid,
.q16-aligned-grid{
  align-items:start!important;
}

.q15-aligned-grid > div > label,
.q16-aligned-grid > div > label{
  min-height:3.25em!important;
  margin-bottom:8px!important;
  display:flex!important;
  align-items:flex-end!important;
}

.q15-aligned-grid > div > input,
.q15-aligned-grid > div > select,
.q15-aligned-grid > div > textarea,
.q16-aligned-grid > div > input,
.q16-aligned-grid > div > select,
.q16-aligned-grid > div > textarea{
  margin-top:0!important;
}

.q15-aligned-grid > div > input,
.q15-aligned-grid > div > select,
.q16-aligned-grid > div > input,
.q16-aligned-grid > div > select{
  height:44px!important;
  min-height:44px!important;
  box-sizing:border-box!important;
}

.q15-saved-card small{
  display:block;
  margin-top:4px;
}

.q15-profile-actions .record-edit-link{
  display:inline-flex!important;
  align-items:center!important;
  height:32px!important;
  min-height:32px!important;
  line-height:32px!important;
  padding:0!important;
  margin:0!important;
  font-weight:700!important;
  text-decoration:none!important;
  color:var(--bits-red)!important;
}

.q15-profile-actions .record-edit-link:hover{
  text-decoration:underline!important;
}

@media(max-width:700px){
  .q15-aligned-grid > div > label,
  .q16-aligned-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.21 — profile cards: always-visible Izmeni / Obriši */
.saved-profile-card small{
  display:block;
  margin-top:4px;
}

.saved-profile-actions{
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  flex-wrap:wrap!important;
  position:static!important;
  margin-top:14px!important;
  padding-top:12px!important;
  border-top:1px solid var(--bits-line)!important;
  min-height:32px!important;
}

.saved-profile-actions > form{
  display:block!important;
  position:static!important;
  width:auto!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}

.saved-profile-edit,
.saved-profile-delete{
  display:inline-flex!important;
  position:static!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  height:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--bits-red)!important;
  font:inherit!important;
  font-weight:700!important;
  line-height:32px!important;
  text-decoration:none!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

.saved-profile-edit:hover,
.saved-profile-delete:hover{
  text-decoration:underline!important;
}


/* V5.10.22 — Q15/Q16/Q17 saved-data cards follow the Q14 pattern */
.saved-data-card small{
  display:block;
  margin-top:4px;
}

.saved-profile-list{
  margin-bottom:28px;
}

.saved-data-card .record-actions{
  margin-top:14px!important;
}

.saved-data-card .repeatable-edit-form{
  width:100%!important;
  max-width:100%!important;
}

.saved-profile-editor{
  width:100%;
}

.saved-profile-editor h3,
.saved-edit-section h3{
  margin-top:22px;
  margin-bottom:10px;
}

.q17-profile-grid > div{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.q17-profile-grid > div > label{
  min-height:3.25em;
  display:flex;
  align-items:flex-end;
  margin-bottom:8px;
  line-height:1.35;
}

.q17-profile-grid > div > input,
.q17-profile-grid > div > select{
  min-height:44px;
  height:44px;
  box-sizing:border-box;
  margin-top:0;
}

@media(max-width:700px){
  .q17-profile-grid > div > label{
    min-height:0;
  }
}

/* V5.10.27 — Q17/Q18 document metadata: uniform labels and control heights */
.q17-document-grid,
.q18-document-grid{
  align-items:start!important;
}

.q17-document-grid > div,
.q18-document-grid > div{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.q17-document-grid > div > label,
.q18-document-grid > div > label{
  min-height:2.8em!important;
  display:flex!important;
  align-items:flex-end!important;
  margin-bottom:8px!important;
  line-height:1.35!important;
}

.q17-document-grid > div > input,
.q17-document-grid > div > select,
.q18-document-grid > div > input,
.q18-document-grid > div > select{
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}

@media(max-width:700px){
  .q17-document-grid > div > label,
  .q18-document-grid > div > label{
    min-height:0!important;
  }
}


/* V5.10.32 — Q19–Q26: dynamic row alignment for wrapped labels */
.q19plus-aligned-grid{
  align-items:stretch!important;
  column-gap:18px!important;
  row-gap:18px!important;
}

.q19plus-aligned-grid > div{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  min-width:0!important;
}

.q19plus-aligned-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:4.35em!important;
  margin:0 0 8px!important;
  line-height:1.35!important;
}

.q19plus-aligned-grid > div > input:not([type="checkbox"]):not([type="radio"]),
.q19plus-aligned-grid > div > select{
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}

@media(max-width:700px){
  .q19plus-aligned-grid > div > label{
    min-height:0!important;
  }
}

/* V5.10.29 — global applicability dependencies: visibly lock fields that are not applicable */
body[data-questionnaire-step] input:disabled,
body[data-questionnaire-step] select:disabled,
body[data-questionnaire-step] textarea:disabled{
  background:#ece9e3!important;
  border-color:#d8d3cb!important;
  color:#8a8e93!important;
  cursor:not-allowed!important;
  opacity:1!important;
}
body[data-questionnaire-step] .dependency-disabled > label,
body[data-questionnaire-step] .dependency-disabled > .check{
  color:#858a90!important;
}

/* V5.10.33 — Q28 expert review rows: uniform control alignment */
body[data-questionnaire-step="Q28"] .inline-review{
  align-items:stretch!important;
  grid-template-columns:minmax(150px,220px) minmax(0,1fr) auto!important;
}

body[data-questionnaire-step="Q28"] .inline-review > select,
body[data-questionnaire-step="Q28"] .inline-review > input:not([type="checkbox"]):not([type="radio"]),
body[data-questionnaire-step="Q28"] .inline-review > button{
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}

body[data-questionnaire-step="Q28"] .inline-review > button{
  padding:0 16px!important;
  white-space:nowrap;
}

@media(max-width:980px){
  body[data-questionnaire-step="Q28"] .inline-review > button{
    width:100%;
  }
}

/* V5.10.34 — Q28: show the client's Q01–Q27 input next to every review item */
body[data-questionnaire-step="Q28"] .q28-client-context{
  margin:12px 0 14px;
  padding:12px 14px;
  border:1px solid #dedbd4;
  background:#f7f5f0;
  border-radius:3px;
}
body[data-questionnaire-step="Q28"] .q28-context-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:9px;
}
body[data-questionnaire-step="Q28"] .q28-context-head strong{
  color:#1f3a4d;
  font-size:.93rem;
}
body[data-questionnaire-step="Q28"] .q28-source-link{
  font-size:.78rem;
  font-weight:700;
  text-decoration:none;
}
body[data-questionnaire-step="Q28"] .q28-context-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px 14px;
  margin:0;
}
body[data-questionnaire-step="Q28"] .q28-context-grid > div{
  min-width:0;
  padding-top:7px;
  border-top:1px solid #e5e1da;
}
body[data-questionnaire-step="Q28"] .q28-context-grid dt{
  margin:0 0 2px;
  color:#69727c;
  font-size:.72rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.025em;
}
body[data-questionnaire-step="Q28"] .q28-context-grid dd{
  margin:0;
  color:#1f2933;
  font-size:.88rem;
  line-height:1.38;
  overflow-wrap:anywhere;
}
body[data-questionnaire-step="Q28"] .q28-check-instruction{
  margin:10px 0 2px;
}
body[data-questionnaire-step="Q28"] .q28-check-instruction strong{
  font-size:.86rem;
}
body[data-questionnaire-step="Q28"] .q28-check-instruction p{
  margin:.25rem 0 .55rem;
  color:#5f6872;
}
body[data-questionnaire-step="Q28"] .q28-review-form{
  margin-top:8px;
}
@media(max-width:980px){
  body[data-questionnaire-step="Q28"] .q28-context-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:650px){
  body[data-questionnaire-step="Q28"] .q28-context-grid{grid-template-columns:1fr;}
  body[data-questionnaire-step="Q28"] .q28-context-head{align-items:flex-start;flex-direction:column;}
}

/* V5.10.36 — Q28 completed expert items save without mandatory note; keep-position workflow retained */
body[data-questionnaire-step="Q28"] .review-item{
  scroll-margin-top:18px;
}
body[data-questionnaire-step="Q28"] .review-item:target{
  border-color:#a9b6c0;
  box-shadow:0 0 0 2px rgba(71,94,111,.08);
}
body[data-questionnaire-step="Q28"] .q28-end-anchor{
  scroll-margin-top:18px;
  height:1px;
}

/* V5.10.38 — standards-aligned questionnaire presentation layer.
   Internal Qxx identifiers remain stable in code/database, but are hidden from
   the user-facing navigation. Visible grouping follows SRPS A.L2.003:2025. */
.sidebar-steps .sidebar-section{
  margin:18px 8px 7px;
  padding:0;
  list-style:none;
}
.sidebar-steps .sidebar-section:first-child{margin-top:8px}
.sidebar-steps .sidebar-section>span{
  display:block;
  font-family:Inter,system-ui,sans-serif;
  font-size:.69rem;
  line-height:1.35;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
  color:#747b84;
  white-space:normal;
}
.sidebar-steps li:not(.sidebar-section) a>span{
  font-variant-numeric:tabular-nums;
  color:#9aa0a8;
}


/* V5.10.40 — Q28 is a professional checklist, not a duplicate questionnaire.
   Client context is reduced to the fields relevant to each concrete review. */
body[data-questionnaire-step="Q28"] .q28-client-context{
  padding:11px 13px;
  margin:10px 0 12px;
}
body[data-questionnaire-step="Q28"] .q28-context-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px 16px;
}
body[data-questionnaire-step="Q28"] .q28-context-grid > div{
  padding-top:6px;
}
body[data-questionnaire-step="Q28"] .q28-context-grid dt{
  font-size:.74rem;
}
body[data-questionnaire-step="Q28"] .q28-context-grid dd{
  font-size:.91rem;
}
@media(max-width:720px){
  body[data-questionnaire-step="Q28"] .q28-context-grid{grid-template-columns:1fr;}
}

/* V5.10.63 — compact ACT workflow chain on expert screens */
.dashboard.bits-chain-layout{
  max-width:1580px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 286px;
  gap:26px;
  align-items:start;
}
.dashboard.bits-chain-layout>.card{width:100%;min-width:0;margin:0}
.bits-act-chain{
  position:sticky;top:92px;align-self:start;
  background:#f8f6f2;border:1px solid var(--bits-line);padding:18px 16px 16px;
  max-height:calc(100vh - 112px);overflow:auto;
}
.bits-act-chain-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.bits-act-chain-head strong{display:block;font-size:1.05rem;line-height:1.2;color:#303944}
.bits-act-chain-kicker{font-size:.64rem;font-weight:850;letter-spacing:.15em;color:var(--bits-red);margin-bottom:5px}
.bits-act-chain-score{font-size:1.45rem;font-weight:800;line-height:1;color:#39434d}
.bits-act-chain-meta{font-size:.78rem;color:#7a808a;margin-top:8px}
.bits-act-chain-progress{height:3px;background:#dfdbd4;margin:10px 0 15px;overflow:hidden}
.bits-act-chain-progress span{display:block;height:100%;background:var(--bits-red)}
.bits-act-chain-list{list-style:none;margin:0;padding:0;position:relative}
.bits-act-chain-list:before{content:"";position:absolute;left:14px;top:17px;bottom:17px;width:1px;background:#d5d1ca}
.bits-act-chain-item{display:grid;grid-template-columns:29px minmax(0,1fr);gap:10px;position:relative;padding:5px 5px 8px 0;border-left:2px solid transparent}
.bits-act-chain-item.current-page{background:#f7eeec;border-left-color:var(--bits-red);padding-left:7px;margin-left:-9px}
.bits-act-chain-node{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;z-index:1;background:#f8f6f2;border:1px solid #c8c4bd;color:#737b85;font-size:.73rem;font-weight:800}
.bits-act-chain-item.done .bits-act-chain-node{background:#4a545e;color:#fff;border-color:#4a545e}
.bits-act-chain-item.next .bits-act-chain-node{background:var(--bits-red);color:#fff;border-color:var(--bits-red)}
.bits-act-chain-copy{min-width:0;padding-top:1px}
.bits-act-chain-state{font-size:.57rem;line-height:1.1;letter-spacing:.11em;font-weight:850;color:#999fa6;text-transform:uppercase;margin-bottom:3px}
.bits-act-chain-item.done .bits-act-chain-state{color:#555e68}.bits-act-chain-item.next .bits-act-chain-state{color:var(--bits-red)}
.bits-act-chain-copy a,.bits-act-chain-copy span{display:block;font-size:.78rem;line-height:1.24;font-weight:700;text-decoration:none;color:#434c56}
.bits-act-chain-item.blocked .bits-act-chain-copy span{color:#91979e;font-weight:620}
.bits-act-chain-item.current-page .bits-act-chain-copy a,.bits-act-chain-item.current-page .bits-act-chain-copy span{color:#252f39}
.bits-act-chain-actions{border-top:1px solid #ddd9d2;margin-top:10px;padding-top:12px;display:grid;gap:8px}
.bits-act-chain-actions .button{width:100%;margin:0;min-height:38px;padding:8px 10px;font-size:.78rem}
.bits-act-chain-draft{font-size:.75rem;line-height:1.35;text-decoration:none}
.bits-act-chain-error p{font-size:.8rem;color:#737b85;margin:8px 0}
@media(max-width:1179px){
  .dashboard.bits-chain-layout{max-width:1280px;display:block}
  .bits-act-chain{position:static;max-height:none;margin:26px auto 0;width:min(900px,100%)}
}


/* V5.10.115 — F.2: uredno poravnanje funkcije/radnog mesta i stručne spreme u Q02 */
.q02-f2-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.q02-f2-grid > div{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.q02-f2-grid > div > label{
  min-height:2.65em;
  display:flex;
  align-items:flex-end;
  margin-bottom:7px;
}
.q02-f2-grid > div > input{
  width:100%;
  min-height:44px;
  box-sizing:border-box;
}
@media(max-width:700px){
  .q02-f2-grid{grid-template-columns:1fr;}
  .q02-f2-grid > div > label{min-height:0;}
}


/* V5.10.126 — client-fact forms: consistent two-column alignment across expert-domain steps */
.q126-fact-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:stretch!important;
  column-gap:18px!important;
  row-gap:18px!important;
}
.q126-fact-grid > div{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  min-width:0!important;
}
.q126-fact-grid > div > label{
  display:flex!important;
  align-items:flex-end!important;
  min-height:4.6em!important;
  margin:0 0 8px!important;
  line-height:1.35!important;
}
.q126-fact-grid > div > input:not([type="checkbox"]):not([type="radio"]),
.q126-fact-grid > div > select{
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  box-sizing:border-box!important;
  margin:0!important;
}
.q126-fact-grid > div > small{
  margin-top:6px;
  line-height:1.35;
}
@media(max-width:980px){
  .q126-fact-grid{grid-template-columns:1fr!important;}
  .q126-fact-grid > div > label{min-height:0!important;}
}
