/**
 * EKONOMIK PROJEKTI — GLAVNI PORTAL CSS
 * ============================================================================
 * Ovo je JEDINI CSS fajl koji se učitava na ERP portal stranicama.
 *
 * Brza mapa:
 * - Osnovni portal i stare funkcionalne stranice: početak fajla
 * - UI komponente, kartice, akcije i responsive: od odeljka "UI KOMPONENTE"
 * - Kartica poslate ponude: traži "POSLATA PONUDA"
 * - Kartica projekta: traži "PROJEKAT U IZRADI"
 * - Dugmad i ikonice: traži "DUGMAD I AKCIONE IKONICE"
 * - Mobilni prikaz: traži "RESPONSIVE — TELEFON"
 *
 * PHP fajlovi više ne sadrže <style> blokove.
 * ============================================================================
 */


/* ========================================================================== */
/* A. OSNOVNI PORTAL                                                         */
/* ========================================================================== */

:root {
    --eko-bg: #f4f6f8;
    --eko-card: #ffffff;
    --eko-text: #17212b;
    --eko-muted: #697586;
    --eko-border: #dce2e8;
    --eko-primary: #17324d;
    --eko-primary-hover: #0f2538;
    --eko-success: #16784a;
    --eko-warning: #a46700;
    --eko-danger: #b42318;
    --eko-radius: 14px;
    --eko-shadow: 0 10px 30px rgba(23, 33, 43, .07);
}

body {
    background: var(--eko-bg);
}

.eko-app {
    max-width: 1500px;
    margin: 28px auto;
    padding: 0 20px 50px;
    color: var(--eko-text);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

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

.eko-app-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 26px;
    background: var(--eko-primary);
    color: #fff;
    border-radius: var(--eko-radius) var(--eko-radius) 0 0;
}

.eko-brand {
    font-size: 22px;
    font-weight: 800;
    letter-spacing: .08em;
}

.eko-subtitle {
    margin-top: 3px;
    font-size: 13px;
    opacity: .78;
}

.eko-user {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 14px;
}

.eko-user a {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.eko-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 24px;
    padding: 10px;
    background: #fff;
    border: 1px solid var(--eko-border);
    border-top: 0;
    border-radius: 0 0 var(--eko-radius) var(--eko-radius);
    box-shadow: var(--eko-shadow);
}

.eko-nav a {
    padding: 10px 14px;
    color: var(--eko-text);
    text-decoration: none;
    border-radius: 9px;
    font-size: 14px;
    font-weight: 650;
}

.eko-nav a:hover,
.eko-nav a.is-active {
    background: #e9eef3;
    color: var(--eko-primary);
}

.eko-page-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 24px 0 18px;
}

.eko-page-head h1 {
    margin: 0 0 6px;
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.1;
}

.eko-page-head p {
    margin: 0;
    color: var(--eko-muted);
}

.eko-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 22px;
}

.eko-card {
    display: block;
    min-height: 140px;
    padding: 22px;
    background: var(--eko-card);
    color: var(--eko-text);
    text-decoration: none;
    border: 1px solid var(--eko-border);
    border-radius: var(--eko-radius);
    box-shadow: var(--eko-shadow);
}

a.eko-card:hover {
    transform: translateY(-2px);
}

.eko-card span {
    display: block;
    color: var(--eko-muted);
    font-size: 14px;
}

.eko-card strong {
    display: block;
    margin-top: 14px;
    font-size: 30px;
    line-height: 1.1;
}

.eko-card small {
    display: block;
    margin-top: 10px;
    color: var(--eko-muted);
}

.eko-panel {
    background: var(--eko-card);
    border: 1px solid var(--eko-border);
    border-radius: var(--eko-radius);
    box-shadow: var(--eko-shadow);
    overflow: hidden;
}

.eko-panel-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    padding: 20px 22px;
    border-bottom: 1px solid var(--eko-border);
}

.eko-panel-head h2 {
    margin: 0;
    font-size: 19px;
}

.eko-panel-head a {
    color: var(--eko-primary);
    font-weight: 650;
}

.eko-toolbar {
    margin-bottom: 14px;
}

.eko-search,
.eko-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.eko-search input,
.eko-filters input,
.eko-filters select {
    min-height: 42px;
    padding: 9px 12px;
    border: 1px solid var(--eko-border);
    border-radius: 9px;
    background: #fff;
}

.eko-search input {
    min-width: 320px;
}

.eko-table-wrap {
    width: 100%;
    overflow-x: auto;
}

.eko-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.eko-table th,
.eko-table td {
    padding: 14px 16px;
    text-align: left;
    vertical-align: middle;
    border-bottom: 1px solid var(--eko-border);
}

.eko-table th {
    background: #f8fafb;
    color: #475467;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .04em;
    white-space: nowrap;
}

.eko-table tbody tr:hover {
    background: #fafcfd;
}

.eko-table tbody tr:last-child td {
    border-bottom: 0;
}

.eko-row-note {
    max-width: 340px;
    margin-top: 4px;
    color: var(--eko-muted);
    font-size: 12px;
}

.eko-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.eko-actions form {
    margin: 0;
}

.eko-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 9px 15px;
    border: 1px solid transparent;
    border-radius: 9px;
    cursor: pointer;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    transition: .15s ease;
}

.eko-btn:hover {
    transform: translateY(-1px);
}

.eko-btn-primary {
    color: #fff;
    background: var(--eko-primary);
}

.eko-btn-primary:hover {
    color: #fff;
    background: var(--eko-primary-hover);
}

.eko-btn-success {
    color: #fff;
    background: var(--eko-success);
}

.eko-btn-warning {
    color: #fff;
    background: var(--eko-warning);
}

.eko-btn-danger {
    color: #fff;
    background: var(--eko-danger);
}

.eko-btn-ghost {
    color: var(--eko-primary);
    background: #fff;
    border-color: var(--eko-border);
}

.eko-btn-small {
    min-height: 34px;
    padding: 7px 10px;
    font-size: 12px;
}

.eko-badge {
    display: inline-flex;
    margin-top: 4px;
    padding: 5px 8px;
    border-radius: 999px;
    background: #edf1f4;
    color: #475467;
    font-size: 11px;
    font-weight: 750;
    white-space: nowrap;
}

.eko-badge-success {
    color: #11613c;
    background: #e5f5ed;
}

.eko-badge-warning {
    color: #875400;
    background: #fff1d6;
}

.eko-badge-danger {
    color: #922018;
    background: #fee9e7;
}

.eko-inline-form select {
    min-width: 160px;
    padding: 8px 9px;
    border: 1px solid var(--eko-border);
    border-radius: 8px;
    background: #fff;
}

.eko-notice {
    margin: 14px 0;
    padding: 13px 16px;
    color: #11613c;
    background: #e5f5ed;
    border: 1px solid #b9e5cf;
    border-radius: 10px;
    font-weight: 650;
}

.eko-notice-error {
    color: #922018;
    background: #fee9e7;
    border-color: #f7c8c4;
}

.eko-empty {
    padding: 42px 22px;
    color: var(--eko-muted);
    text-align: center;
}

.eko-login-box {
    max-width: 540px;
    margin: 80px auto;
    padding: 34px;
    text-align: center;
    background: #fff;
    border: 1px solid var(--eko-border);
    border-radius: var(--eko-radius);
    box-shadow: var(--eko-shadow);
}

.eko-login-box h2 {
    margin-top: 0;
}

.eko-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(15, 27, 39, .62);
    overflow-y: auto;
}

.eko-modal.is-open {
    display: flex;
}

.eko-modal-card {
    position: relative;
    width: min(760px, 100%);
    max-height: calc(100vh - 40px);
    padding: 26px;
    overflow-y: auto;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 30px 90px rgba(0, 0, 0, .24);
}

.eko-modal-card h3 {
    margin: 0 42px 4px 0;
    font-size: 24px;
}

.eko-modal-close {
    position: absolute;
    top: 13px;
    right: 15px;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #eef2f5;
    cursor: pointer;
    font-size: 27px;
    line-height: 1;
}

.eko-muted {
    margin-top: 4px;
    color: var(--eko-muted);
}

.eko-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 22px;
}

.eko-form-grid label {
    display: flex;
    flex-direction: column;
    gap: 7px;
    color: #344054;
    font-size: 13px;
    font-weight: 700;
}

.eko-form-grid input,
.eko-form-grid select,
.eko-form-grid textarea {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    color: var(--eko-text);
    background: #fff;
    border: 1px solid #cfd7df;
    border-radius: 9px;
    font: inherit;
    font-weight: 400;
}

.eko-form-grid textarea {
    resize: vertical;
}

.eko-form-grid input:focus,
.eko-form-grid select:focus,
.eko-form-grid textarea:focus {
    outline: 2px solid rgba(23, 50, 77, .18);
    border-color: var(--eko-primary);
}

.eko-span-2 {
    grid-column: 1 / -1;
}

.eko-form-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 4px;
}

.eko-checkbox-label {
    flex-direction: row !important;
    align-items: center;
    align-self: end;
    min-height: 44px;
}

.eko-checkbox-label input {
    width: 18px;
    min-height: 18px;
    height: 18px;
}

body.eko-modal-open {
    overflow: hidden;
}

@media (max-width: 980px) {
    .eko-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .eko-app {
        margin-top: 12px;
        padding-inline: 10px;
    }

    .eko-app-header,
    .eko-page-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .eko-user {
        width: 100%;
        justify-content: space-between;
    }

    .eko-nav {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .eko-cards,
    .eko-form-grid {
        grid-template-columns: 1fr;
    }

    .eko-span-2 {
        grid-column: auto;
    }

    .eko-search,
    .eko-filters {
        align-items: stretch;
        flex-direction: column;
    }

    .eko-search input {
        min-width: 0;
        width: 100%;
    }

    .eko-btn {
        width: 100%;
    }

    .eko-actions .eko-btn {
        width: auto;
    }

    .eko-form-actions {
        flex-direction: column-reverse;
    }

    .eko-modal {
        padding: 8px;
    }

    .eko-modal-card {
        max-height: calc(100vh - 16px);
        padding: 22px 16px;
        border-radius: 12px;
    }
}


.eko-field-help {
    color: var(--eko-muted);
    font-size: 12px;
    font-weight: 500;
}

.eko-pdf-link {
    color: var(--eko-primary);
    font-weight: 750;
    text-decoration: none;
    white-space: nowrap;
}

.eko-pdf-link:hover {
    text-decoration: underline;
}

.eko-global-search{flex:1;max-width:460px}.eko-global-search input{width:100%;padding:10px 13px;border:0;border-radius:9px;background:rgba(255,255,255,.14);color:#fff}.eko-global-search input::placeholder{color:rgba(255,255,255,.7)}
.eko-cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.eko-dashboard-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}
.eko-chart{padding:20px}.eko-chart-row{display:grid;grid-template-columns:38px 1fr 52px;align-items:center;gap:10px;margin:9px 0}.eko-chart-track{position:relative;height:18px;background:#eef2f5;border-radius:20px;overflow:hidden}.eko-chart-track i,.eko-chart-track b{position:absolute;left:0;top:0;height:100%;display:block}.eko-chart-track i{background:#9eb1c3}.eko-chart-track b{height:7px;top:6px;background:#16784a}.eko-chart-row em{font-style:normal;text-align:right;font-size:12px}.eko-chart-legend{display:flex;gap:20px;padding:0 20px 20px;color:#697586;font-size:12px}.eko-list a{display:flex;justify-content:space-between;gap:15px;padding:14px 18px;border-bottom:1px solid var(--eko-border);text-decoration:none;color:var(--eko-text)}.eko-list a:last-child{border-bottom:0}.eko-list span{color:var(--eko-muted);font-size:12px}
.eko-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.eko-detail-card{padding:22px}.eko-detail-card h2{margin:0 0 16px}.eko-detail-card dl{display:grid;grid-template-columns:180px 1fr;gap:10px;margin:0}.eko-detail-card dt{color:var(--eko-muted)}.eko-detail-card dd{margin:0;font-weight:650}.eko-span-wide{grid-column:1/-1}.eko-docs{display:flex;flex-wrap:wrap;gap:10px}.eko-docs a{padding:10px 13px;border-radius:8px;background:#edf2f6;text-decoration:none;font-weight:700}.eko-timeline>div{display:grid;grid-template-columns:150px 1fr auto;gap:15px;padding:13px 0;border-bottom:1px solid var(--eko-border)}.eko-timeline time{color:var(--eko-muted);font-size:12px}
.eko-card-link{display:block;margin-top:5px;font-size:11px;font-weight:700}
.eko-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:#fff;border:1px solid var(--eko-border);border-radius:14px;overflow:hidden;box-shadow:var(--eko-shadow)}.eko-cal-head{padding:12px;text-align:center;font-weight:800;background:#f3f6f8}.eko-cal-day{min-height:145px;padding:9px;border-top:1px solid var(--eko-border);border-right:1px solid var(--eko-border)}.eko-cal-day:nth-child(7n){border-right:0}.eko-cal-day.is-empty{background:#fafbfc}.eko-cal-day>b{display:block;margin-bottom:7px}.eko-cal-day a{display:block;margin:5px 0;padding:6px;border-radius:6px;color:#fff;text-decoration:none;font-size:11px;line-height:1.25}.eko-cal-day a small{display:block;text-transform:uppercase;opacity:.75}.eko-cal-day a.is-deadline{background:#b42318}.eko-cal-day a.is-install{background:#175cd3}
@media(max-width:1050px){.eko-cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}.eko-dashboard-grid,.eko-detail-grid{grid-template-columns:1fr}.eko-span-wide{grid-column:auto}.eko-global-search{order:3;max-width:none;width:100%}.eko-app-header{flex-wrap:wrap}.eko-calendar{overflow-x:auto;grid-template-columns:repeat(7,minmax(150px,1fr))}}
@media(max-width:700px){.eko-cards-4{grid-template-columns:1fr}.eko-detail-card dl{grid-template-columns:1fr}.eko-timeline>div{grid-template-columns:1fr}.eko-calendar{display:grid;overflow-x:auto}}

.eko-v130-header{gap:22px}.eko-welcome{display:flex;flex-direction:column;min-width:230px}.eko-welcome strong{font-size:15px;color:#fff}.eko-welcome span{font-size:12px;color:rgba(255,255,255,.72);margin-top:3px}.eko-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1100px){.eko-welcome{order:2}.eko-global-search{order:3;width:100%}}@media(max-width:700px){.eko-cards-3{grid-template-columns:1fr}.eko-welcome{min-width:0;width:100%}}

.eko-mail-attachment{padding:12px 14px;border:1px solid var(--eko-border);border-radius:9px;background:#f7f9fb}
.eko-email-status{display:flex;flex-direction:column;gap:3px;margin-top:14px;padding:12px 14px;border-radius:9px;background:#ecfdf3;border:1px solid #abefc6;color:#05603a}
.eko-email-status span{font-size:12px}


/* ========================================================================== */
/* B. FUNKCIONALNI MODULI — CSS IZDVOJEN IZ PHP FAJLOVA                       */
/* ========================================================================== */


/* --- KUPCI I POVEZIVANJE (izvorno V160) --- */
.eko-customer-search{display:grid;grid-template-columns:minmax(240px,1fr) 190px auto auto;gap:10px;align-items:center;margin-bottom:18px}
.eko-customer-search input,.eko-customer-search select{min-height:44px}
.eko-back-link{display:inline-block;margin-bottom:8px;text-decoration:none}
.eko-modal-wide{width:min(900px,calc(100vw - 32px));max-height:90vh;overflow:auto}
.eko-customer-choice{display:flex;gap:22px;padding:14px;border:1px solid #e4e7ec;border-radius:10px;background:#f9fafb}
.eko-customer-choice label{display:flex;gap:8px;align-items:center;font-weight:600}
.eko-existing-customer-block,.eko-new-customer-block{padding:16px;border:1px solid #d0d5dd;border-radius:10px;background:#fff}
.eko-existing-customer-block select{width:100%;min-height:154px}
.eko-form-divider{border:0;border-top:1px solid #e4e7ec;width:100%;margin:4px 0}
[hidden]{display:none!important}
@media(max-width:760px){
  .eko-customer-search{grid-template-columns:1fr}
  .eko-customer-choice{flex-direction:column;gap:10px}
}


/* --- ISTORIJSKE PONUDE, PAGINACIJA I POVEZIVANJE (izvorno V170) --- */
.eko-pagination{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin:22px 0}
      .eko-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border:1px solid #d0d5dd;border-radius:8px;text-decoration:none;background:#fff}
      .eko-pagination .current{background:#101828;color:#fff;border-color:#101828}
      .eko-history-banner{margin:0 0 20px;padding:16px 18px;border:1px solid #b2ddff;background:#eff8ff;border-radius:12px;display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}
      .eko-history-banner>strong{width:100%}
      .eko-history-banner>a{font-weight:700}
      .eko-review-warning{width:100%;padding:12px;border-radius:8px;background:#fffaeb;border:1px solid #fedf89}
      .eko-review-ok{width:100%;padding:10px;border-radius:8px;background:#ecfdf3;border:1px solid #abefc6}
      .eko-review-panel{margin-bottom:20px}
      .eko-review-badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#fffaeb;border:1px solid #fedf89;font-size:12px;font-weight:700}
      .eko-inline-form{display:inline-block;margin-top:6px}
      .eko-link-search-label{display:block;margin-bottom:12px}
      #eko-link-customer-search,#eko-link-customer-select{width:100%}
      #eko-link-customer-select{min-height:240px;margin-bottom:12px}
      @media(max-width:760px){.eko-pagination{justify-content:flex-start}}


/* --- OPERATIVNI DASHBOARD, PROIZVODNJA I DOKUMENTI (izvorno V190) --- */
.eko-cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.eko-operational-cards .eko-card{min-height:128px;border-left:5px solid var(--eko-border)}
.eko-metric-danger{border-left-color:#d92d20!important;background:linear-gradient(135deg,#fff 68%,#fff1f0)}
.eko-metric-warning{border-left-color:#f79009!important;background:linear-gradient(135deg,#fff 68%,#fffaeb)}
.eko-metric-success{border-left-color:#12b76a!important;background:linear-gradient(135deg,#fff 68%,#ecfdf3)}
.eko-metric-neutral{border-left-color:#667085!important}
.eko-metric-finance{border-left-color:#2e90fa!important;background:linear-gradient(135deg,#fff 68%,#eff8ff)}
.eko-today-chip{padding:10px 14px;border-radius:999px;background:#101828;color:#fff;font-size:12px;font-weight:800;letter-spacing:.05em}
.eko-attention-panel{margin-top:22px}
.eko-panel-head p{margin:5px 0 0;color:var(--eko-muted);font-size:13px}
.eko-attention-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px}
.eko-attention-card{display:block;padding:17px;border:1px solid var(--eko-border);border-left:5px solid;border-radius:12px;color:var(--eko-text);text-decoration:none;background:#fff}
.eko-attention-card:hover{transform:translateY(-2px);box-shadow:var(--eko-shadow)}
.eko-attention-card.is-danger{border-left-color:#d92d20;background:#fff8f7}
.eko-attention-card.is-urgent{border-left-color:#f04438;background:#fff9f7}
.eko-attention-card.is-warning{border-left-color:#f79009;background:#fffcf5}
.eko-attention-card.is-safe{border-left-color:#12b76a}
.eko-attention-card.is-neutral{border-left-color:#98a2b3}
.eko-attention-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px;color:var(--eko-muted);font-size:12px}
.eko-attention-badge{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.8);font-weight:850;text-transform:uppercase}
.eko-attention-card>strong{display:block;font-size:16px}
.eko-attention-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:10px;color:var(--eko-muted);font-size:12px}
.eko-attention-card small{display:block;margin-top:9px;color:var(--eko-muted)}
.eko-phase-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:22px}
.eko-phase-card{padding:16px;border-radius:12px;background:#fff;border:1px solid var(--eko-border);box-shadow:var(--eko-shadow)}
.eko-phase-card span{display:block;color:var(--eko-muted);font-size:12px}.eko-phase-card strong{display:block;margin-top:8px;font-size:25px}
.eko-phase-pill{display:inline-flex;padding:6px 9px;border-radius:999px;background:#f2f4f7;font-size:12px;font-weight:800;white-space:nowrap}
.eko-phase-pill.is-spremno{background:#ecfdf3;color:#067647}.eko-phase-pill.is-konstrukcija{background:#eff8ff;color:#175cd3}.eko-phase-pill.is-paneli{background:#fef6ee;color:#b54708}.eko-phase-pill.is-instalacije{background:#f4f3ff;color:#5925dc}.eko-phase-pill.is-zavrsni_radovi{background:#fff6ed;color:#c4320a}
.eko-row-ready{background:#f6fef9!important}.eko-stagnant-note{color:#b54708;font-weight:700}
.eko-project-primary-link{display:block;color:var(--eko-text);text-decoration:none}.eko-project-primary-link span{display:block;margin-top:4px}
.eko-phase-form{display:grid;grid-template-columns:minmax(150px,1fr);gap:7px;min-width:200px}.eko-phase-form select,.eko-phase-form input{min-height:36px;border:1px solid var(--eko-border);border-radius:8px;padding:7px}
.eko-morning-lock{display:flex;gap:22px;align-items:center;padding:26px;margin:22px 0 16px;border-radius:16px;background:linear-gradient(135deg,#172b3f,#234f72);color:#fff}
.eko-morning-lock h1{margin:5px 0 8px;font-size:32px}.eko-morning-lock p{margin:0;max-width:850px;opacity:.85}.eko-morning-icon{font-size:42px}.eko-eyebrow{font-size:11px;font-weight:850;letter-spacing:.12em}
.eko-morning-list{display:grid;gap:12px}.eko-morning-row{display:grid;grid-template-columns:minmax(250px,1.4fr) minmax(180px,.7fr) minmax(220px,1fr);gap:16px;align-items:end;padding:18px;background:#fff;border:1px solid var(--eko-border);border-left:5px solid #98a2b3;border-radius:12px;box-shadow:var(--eko-shadow)}
.eko-morning-row.is-danger{border-left-color:#d92d20}.eko-morning-row.is-urgent{border-left-color:#f04438}.eko-morning-row.is-warning{border-left-color:#f79009}.eko-morning-row.is-safe{border-left-color:#12b76a}
.eko-morning-project strong,.eko-morning-project span{display:block}.eko-morning-project span{margin-top:5px;color:var(--eko-muted);font-size:12px}
.eko-morning-row label{font-size:12px;font-weight:700}.eko-morning-row select,.eko-morning-row input{width:100%;min-height:42px;margin-top:5px;border:1px solid var(--eko-border);border-radius:8px;padding:8px}
.eko-morning-submit{position:sticky;bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:16px;padding:16px 18px;border-radius:12px;background:#101828;color:#fff;box-shadow:0 15px 35px rgba(16,24,40,.22)}
.eko-documents-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:20px;padding:20px}
.eko-document-list{display:grid;gap:10px}.eko-document-item{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px;border:1px solid var(--eko-border);border-radius:10px;background:#fff;color:var(--eko-text);text-decoration:none}.eko-document-item>a{flex:1;color:var(--eko-text);text-decoration:none}.eko-document-item strong,.eko-document-item span{display:block}.eko-document-item span{margin-top:4px;color:var(--eko-muted);font-size:12px}
.eko-document-upload{padding:18px;border:1px dashed #98a2b3;border-radius:12px;background:#f8fafc}.eko-document-upload p{color:var(--eko-muted);font-size:13px}.eko-document-upload input{width:100%;margin:10px 0 16px}.eko-doc-delete{border:0;background:none;color:#b42318;cursor:pointer;font-weight:700}
.eko-calendar-nav{display:flex;align-items:center;gap:12px}.eko-calendar-legend{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.eko-calendar-legend span{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}.eko-calendar-legend .is-deadline{background:#fef3f2;color:#b42318}.eko-calendar-legend .is-install{background:#eff8ff;color:#175cd3}.eko-calendar-legend .is-today{background:#101828;color:#fff}
.eko-calendar-v190 .eko-cal-day{position:relative;min-height:150px}.eko-cal-date{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.eko-cal-date span{padding:3px 6px;border-radius:999px;background:#101828;color:#fff;font-size:9px;font-weight:900;letter-spacing:.05em}
.eko-calendar-v190 .eko-cal-day.is-today{outline:3px solid #101828;outline-offset:-3px;background:#f5f8ff}.eko-calendar-v190 a small{display:block;margin-bottom:3px;opacity:.78}
@media(max-width:1100px){.eko-cards-4,.eko-phase-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.eko-attention-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eko-morning-row{grid-template-columns:1fr 1fr}.eko-morning-project{grid-column:1/-1}}
@media(max-width:760px){.eko-cards-4,.eko-phase-grid,.eko-attention-grid{grid-template-columns:1fr}.eko-morning-row{grid-template-columns:1fr}.eko-morning-project{grid-column:auto}.eko-morning-submit{position:static;flex-direction:column;align-items:stretch}.eko-documents-layout{grid-template-columns:1fr}.eko-calendar-v190{min-width:900px}.eko-calendar-legend{margin-top:8px}}


/* --- ISPORUKE I FILTERI (izvorno V200) --- */
.eko-delivery-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.eko-delivery-filters .is-active{background:#101828;color:#fff}.eko-delivered-check{display:flex!important;align-items:center;gap:9px;padding:14px;border:1px solid #abefc6;border-radius:10px;background:#ecfdf3}.eko-delivered-check input{width:auto!important}.eko-badge-info{background:#eff8ff;color:#175cd3}.eko-badge-warning{background:#fffaeb;color:#b54708}


/* --- NABAVKA I TRANSPORT: KAMIONI I MODULI (izvorno V210) --- */
.eko-delivery-truck-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px}
.eko-truck-card{padding:18px;border:1px solid var(--eko-border);border-left:5px solid #f79009;border-radius:14px;background:#fff;box-shadow:var(--eko-shadow)}
.eko-truck-card.is-delivered{border-left-color:#12b76a;background:#f6fef9}
.eko-truck-card-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.eko-truck-card-head h3{margin:4px 0}.eko-truck-card-head small{color:var(--eko-muted)}
.eko-truck-meta{display:grid;grid-template-columns:90px 1fr;gap:7px 12px;margin:17px 0}.eko-truck-meta dt{font-size:12px;color:var(--eko-muted)}.eko-truck-meta dd{margin:0}
.eko-module-summary{padding:13px;border-radius:10px;background:#f8fafc}.eko-module-summary ul{list-style:none;padding:0;margin:10px 0 0}.eko-module-summary li{display:flex;justify-content:space-between;gap:15px;padding:7px 0;border-top:1px solid var(--eko-border)}.eko-module-summary p{margin:8px 0 0;color:var(--eko-muted)}
.eko-truck-note{margin-top:12px;padding:11px;border-radius:9px;background:#fffaeb;color:#7a2e0e}
.eko-final-delivery-panel{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:20px;padding:24px;border-radius:15px;border:1px solid #fedf89;background:#fffaeb}.eko-final-delivery-panel.is-ready{border-color:#abefc6;background:#ecfdf3}.eko-final-delivery-panel.is-complete{border-color:#75e0a7;background:#dcfae6}.eko-final-delivery-panel h2{margin:5px 0}.eko-final-delivery-panel p{margin:0;max-width:760px;color:#475467}
.eko-module-builder{padding:16px;border:1px solid var(--eko-border);border-radius:12px;background:#f8fafc}.eko-module-builder-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:12px}.eko-module-builder-head p{margin:4px 0 0;color:var(--eko-muted);font-size:12px}
.eko-module-rows{display:grid;gap:9px}.eko-module-row{display:grid;grid-template-columns:minmax(0,1fr) 130px 36px;gap:9px;align-items:end}.eko-module-row label{font-size:12px;font-weight:700}.eko-module-row input{width:100%;min-height:42px;margin-top:5px;border:1px solid var(--eko-border);border-radius:8px;padding:8px}.eko-remove-module-row{height:42px;border:0;border-radius:8px;background:#fef3f2;color:#b42318;font-size:22px;cursor:pointer}
.eko-nt-upcoming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:18px}.eko-nt-upcoming-card{padding:16px;border:1px solid var(--eko-border);border-radius:12px;background:#fff;color:var(--eko-text);text-decoration:none}.eko-nt-upcoming-card>div{display:flex;justify-content:space-between;gap:10px;color:var(--eko-muted);font-size:12px}.eko-nt-upcoming-card strong{display:block;margin-top:11px}.eko-nt-upcoming-card small{display:block;margin-top:7px;color:var(--eko-muted)}
@media(max-width:950px){.eko-delivery-truck-grid,.eko-nt-upcoming-grid{grid-template-columns:1fr}.eko-final-delivery-panel{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.eko-module-builder-head{align-items:flex-start;flex-direction:column}.eko-module-row{grid-template-columns:1fr 90px 36px}}


/* --- VALIDACIJA I FORMAT POLJA (izvorno V211) --- */
.eko-dimension-input,
.eko-plate-input,
.eko-phone-input{
  font-variant-numeric:tabular-nums;
}
.eko-plate-input{
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:750;
}


/* --- PDF AKCIJE I ISTORIJSKE ISPORUKE (izvorno V220) --- */
.eko-pdf-actions{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}
.eko-print-pdf-btn{border:1px solid var(--eko-border);background:#fff;color:var(--eko-text);border-radius:8px;padding:6px 9px;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.eko-print-pdf-btn:hover{background:#f8fafc}
.eko-print-pdf-btn:disabled{opacity:.65;cursor:wait}
.eko-admin-project-actions{display:grid;gap:9px;min-width:215px}
.eko-admin-project-actions .eko-actions{justify-content:flex-start;flex-wrap:wrap}


/* --- KUPCI I FORME (izvorno V230) --- */
.eko-v230-existing{padding:16px;border:1px solid var(--eko-border);border-radius:12px;background:#fff}
.eko-v230-selected{margin:10px 0;padding:10px;border-radius:8px;background:#eff8ff;color:#175cd3;font-weight:700}
.eko-v230-results{display:grid;gap:6px;max-height:260px;overflow:auto}
.eko-v230-result{display:block;width:100%;text-align:left;padding:10px;border:1px solid var(--eko-border);border-radius:8px;background:#fff;cursor:pointer}
.eko-v230-result:hover{background:#f8fafc}.eko-v230-result strong,.eko-v230-result small{display:block}.eko-v230-result small{margin-top:3px;color:var(--eko-muted)}
.eko-v230-new{padding:16px;border:1px solid var(--eko-border);border-radius:12px;background:#f8fafc}
.eko-v253-form-error{padding:11px 13px;border:1px solid #fda29b;border-radius:9px;background:#fff1f0;color:#b42318;font-weight:750}


/* --- UPLATE I SALDO (izvorno V240) --- */
.eko-card-head-actions{display:flex;gap:9px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.eko-payment-list{display:grid;gap:9px;padding:18px}
.eko-payment-row{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(240px,1.2fr) minmax(150px,.7fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid var(--eko-border);border-radius:11px;background:#fff}
.eko-payment-row strong,.eko-payment-row span{display:block}.eko-payment-row span{margin-top:4px;color:var(--eko-muted);font-size:12px}
.eko-payment-user{color:var(--eko-muted);font-size:12px}
.eko-unpaid-delivery-warning{max-width:520px;margin-bottom:14px;padding:14px;border:1px solid #f04438;border-radius:11px;background:#fff1f0;color:#912018}
.eko-unpaid-delivery-warning strong,.eko-unpaid-delivery-warning span{display:block}.eko-unpaid-delivery-warning span{margin-top:5px;font-size:13px}
.eko-unpaid-delivery-warning label{display:flex;gap:8px;align-items:flex-start;margin-top:12px;font-weight:750}
.eko-unpaid-delivery-warning input{margin-top:3px}
@media(max-width:900px){.eko-page-head{align-items:flex-start}.eko-card-head-actions{justify-content:flex-start}.eko-payment-row{grid-template-columns:1fr 1fr}.eko-payment-row .eko-actions{grid-column:1/-1}}
@media(max-width:600px){.eko-payment-row{grid-template-columns:1fr}}


/* --- PROMENA POVEZANOG KUPCA (izvorno V241) --- */
.eko-v241-current-customer{padding:12px 14px;margin:12px 0;border:1px solid var(--eko-border);border-radius:10px;background:#f8fafc}
.eko-v241-current-customer strong{display:block;margin-top:4px}
.eko-v241-selected{padding:12px;border-radius:10px;background:#eff8ff;color:#175cd3}
.eko-v241-selected strong,.eko-v241-selected span{display:block}
.eko-v241-selected span{margin-top:4px;font-size:12px}
.eko-v241-results{display:grid;gap:7px;max-height:270px;overflow:auto}
.eko-v241-result{display:block;width:100%;padding:11px 12px;text-align:left;border:1px solid var(--eko-border);border-radius:9px;background:#fff;cursor:pointer}
.eko-v241-result:hover{border-color:#2e90fa;background:#f5faff}
.eko-v241-result strong,.eko-v241-result span{display:block}
.eko-v241-result span{margin-top:4px;color:var(--eko-muted);font-size:12px}
.eko-v241-no-result{padding:12px;color:var(--eko-muted)}


/* --- KANBAN, PROIZVODNE FAZE I SPREMNOST ISPORUKE (izvorno V250) --- */
.eko-v250-production-metrics{margin-bottom:20px}.eko-v250-priority-panel{margin-bottom:20px;border:1px solid #fecdca}.eko-v250-priority-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px}.eko-v250-priority-grid a{padding:13px;border-left:5px solid #d92d20;border-radius:10px;background:#fff8f7;color:var(--eko-text);text-decoration:none}.eko-v250-priority-grid strong,.eko-v250-priority-grid span{display:block}.eko-v250-priority-grid span{margin-top:8px;font-size:12px;color:var(--eko-muted)}
.eko-v250-kanban-panel{margin-bottom:22px;overflow:hidden}.eko-v250-kanban{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px}.eko-v250-kanban-column{min-width:0;border:1px solid var(--eko-border);border-radius:12px;background:#f8fafc}.eko-v250-kanban-head{display:flex;justify-content:space-between;align-items:center;padding:12px;font-size:12px;font-weight:850}.eko-v250-kanban-head b{display:grid;place-items:center;min-width:25px;height:25px;border-radius:999px;background:#fff}.eko-v250-kanban-drop{min-height:110px;padding:0 9px 9px}.eko-v250-kanban-card{display:grid;gap:8px;margin:8px 0;padding:11px;border:1px solid var(--eko-border);border-radius:10px;background:#fff;box-shadow:0 4px 12px rgba(16,24,40,.06);cursor:default}.eko-v250-kanban-card>a{color:var(--eko-text);text-decoration:none}.eko-v250-kanban-card>a strong,.eko-v250-kanban-card>a span{display:block}.eko-v250-kanban-card>a span{margin-top:3px;font-size:12px;color:var(--eko-muted);overflow-wrap:anywhere}.eko-v250-kanban-card .eko-v250-pdf-actions{display:flex;gap:5px}.eko-v250-kanban-card .eko-btn,.eko-v250-kanban-card .eko-print-pdf-btn{font-size:10px;padding:5px 6px}.eko-v251-empty-phase{padding:18px 8px;text-align:center;color:var(--eko-muted);font-size:12px}
.eko-v250-pdf-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.eko-v250-delivery-readiness{display:flex;justify-content:space-between;gap:20px;padding:19px;margin-bottom:18px;border-radius:14px;border-left:6px solid #98a2b3;background:#fff}.eko-v250-delivery-readiness h2{margin:5px 0}.eko-v250-delivery-readiness p{margin:0;color:var(--eko-muted)}.eko-v250-delivery-readiness.is-planning{border-left-color:#2e90fa;background:#f5faff}.eko-v250-delivery-readiness.is-ready{border-left-color:#12b76a;background:#f6fef9}.eko-v250-delivery-locked{padding:13px;border:1px solid #fedf89;border-radius:10px;background:#fffaeb;color:#7a2e0e}.eko-v250-installation-panel{margin-bottom:18px}.eko-v250-installation-body{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:18px}.eko-v250-installation-body strong{font-size:18px}.eko-v250-installation-body p{width:100%;margin:0;color:var(--eko-muted)}
.eko-phase-pill.is-bravarija_farbara{background:#eff8ff;color:#175cd3}.eko-phase-pill.is-zidanje{background:#fef6ee;color:#b54708}.eko-phase-pill.is-stolarija{background:#f4f3ff;color:#5925dc}.eko-phase-pill.is-vik{background:#ecfdff;color:#0e7090}.eko-phase-pill.is-elektroinstalacije{background:#fff8db;color:#854a0e}.eko-phase-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(max-width:1250px){.eko-v250-kanban{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1050px){.eko-v250-priority-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.eko-v250-kanban{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.eko-v250-priority-grid{grid-template-columns:1fr}.eko-v250-kanban{grid-template-columns:1fr}}


/* --- KONTROLE PROIZVODNE FAZE (izvorno V251) --- */
.eko-required-star{display:inline;margin-left:3px;color:#d92d20;font-weight:900}
.eko-v251-user-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.eko-v251-user-actions a:first-child{padding:7px 10px;border:1px solid rgba(255,255,255,.26);border-radius:8px}
.eko-v251-phase-actions{display:grid;gap:7px}
.eko-v251-phase-actions>form:not(.eko-phase-form){display:flex}
.eko-v251-phase-actions .eko-btn-success{width:100%;justify-content:center}


/* --- SEKTORSKI DASHBOARDI, KALENDAR I GRAFIKONI (izvorno V2511) --- */
.eko-v2511-sent-customer{font-weight:850;color:var(--eko-text)}
.eko-v2511-dashboard-cards .eko-card>span{font-weight:850!important;color:var(--eko-text)}
.eko-v2511-dashboard-cards .eko-card>small{display:block;margin-top:7px;color:#667085;font-size:10.5px;line-height:1.4}
.eko-v2511-dashboard-cards .eko-card{min-height:130px;text-decoration:none}
.eko-v2511-dashboard-phase-grid .eko-phase-card span{font-weight:850}
.eko-v2511-dashboard-phase-grid .eko-phase-card small{display:block;margin-top:6px;color:var(--eko-muted);font-size:10px;line-height:1.35}
.eko-v2511-phase-legend{margin:0 0 14px;padding:12px 14px;border:1px solid var(--eko-border);border-radius:11px;background:#fff}
.eko-v2511-legend-title{display:flex;align-items:baseline;gap:9px;margin-bottom:10px}
.eko-v2511-legend-title strong{font-size:12px}.eko-v2511-legend-title span{color:var(--eko-muted);font-size:10px}
.eko-v2511-phase-steps{display:flex;align-items:center;gap:6px;overflow-x:auto}
.eko-v2511-phase-steps>i{color:#98a2b3;font-style:normal}
.eko-v2511-phase-step{display:flex;align-items:center;gap:6px;min-width:max-content;padding:6px 8px;border:1px solid #e4e7ec;border-radius:8px;background:#f8fafc}
.eko-v2511-phase-step b{display:grid;place-items:center;width:18px;height:18px;border-radius:999px;background:#173b60;color:#fff;font-size:9px}
.eko-v2511-phase-step span{font-size:10px;font-weight:750}
.eko-v2511-inline-actions{display:flex;align-items:center;gap:5px;flex-wrap:nowrap}.eko-v2511-icon-form{display:inline-flex;margin:0}
.eko-v2511-icon-button{display:inline-grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid var(--eko-border);border-radius:7px;background:#fff;color:#344054;cursor:pointer}
.eko-v2511-icon-button.is-save{border-color:#84adff;background:#eff4ff;color:#175cd3}.eko-v2511-icon-button.is-next{border-color:#75e0a7;background:#ecfdf3;color:#067647}.eko-v2511-icon-button.is-money{border-color:#fec84b;background:#fffaeb;color:#b54708}.eko-v2511-icon-button.is-edit{border-color:#b2ccff;background:#eff4ff;color:#1849a9}.eko-v2511-icon-button.is-back{border-color:#fdb022;background:#fffaeb;color:#b54708}
.eko-active-table td{padding-top:8px!important;padding-bottom:8px!important}.eko-active-table .eko-v251-phase-actions{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important}.eko-active-table .eko-v251-phase-actions .eko-phase-form{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important}
.eko-active-table .eko-v251-phase-actions select{width:155px!important;min-height:31px!important;height:31px!important;padding:3px 24px 3px 7px!important;font-size:10.5px!important}.eko-active-table .eko-v251-phase-actions input[name="production_update_note"]{width:125px!important;min-height:31px!important;height:31px!important;padding:4px 7px!important;font-size:10px!important}
.eko-v2511-schedule-list article{display:grid;grid-template-columns:135px minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--eko-border)}.eko-v2511-schedule-list article:last-child{border-bottom:0}.eko-v2511-schedule-list article.is-delivery{border-left:4px solid #2e90fa}.eko-v2511-schedule-list article.is-installation{border-left:4px solid #f79009}
.eko-v2511-schedule-date strong,.eko-v2511-schedule-date span{display:block}.eko-v2511-schedule-date strong{font-size:12px}.eko-v2511-schedule-date span{margin-top:3px;color:var(--eko-muted);font-size:10px}.eko-v2511-schedule-main>strong{display:block;margin-top:3px;font-size:12px}.eko-v2511-schedule-main>small{display:block;margin-top:4px;color:var(--eko-muted);font-size:10.5px}.eko-v2511-event-type{display:inline-block;color:#475467;font-size:9px;font-weight:850;letter-spacing:.5px;text-transform:uppercase}
.eko-v2511-payment-missing{display:inline-block;padding:5px 8px;border-radius:999px;background:#fee4e2;color:#b42318;font-size:10px;font-weight:850}
.eko-v2511-chart-panel{margin-top:18px}.eko-v2511-month-chart,.eko-v2511-comparison-chart{padding:5px 18px 18px}.eko-v2511-month-row,.eko-v2511-comparison-row{display:grid;grid-template-columns:38px minmax(0,1fr) 145px;gap:10px;align-items:center;min-height:30px}.eko-v2511-month-row>span,.eko-v2511-comparison-row>span{color:var(--eko-muted);font-size:10px}.eko-v2511-month-row>div{height:8px;overflow:hidden;border-radius:999px;background:#f2f4f7}.eko-v2511-month-row>div i{display:block;height:100%;border-radius:999px;background:#2e90fa}.eko-v2511-month-row>b,.eko-v2511-comparison-row>b{text-align:right;font-size:10px}
.eko-v2511-comparison-legend{display:flex;gap:14px;padding:0 18px 8px;font-size:10px;font-weight:800}.eko-v2511-comparison-legend span:before{display:inline-block;width:9px;height:9px;margin-right:5px;border-radius:2px;content:""}.eko-v2511-comparison-legend .is-current:before{background:#2e90fa}.eko-v2511-comparison-legend .is-previous:before{background:#98a2b3}.eko-v2511-dual-bars{display:grid;gap:3px}.eko-v2511-dual-bars i{display:block;height:6px;border-radius:999px}.eko-v2511-dual-bars .is-current{background:#2e90fa}.eko-v2511-dual-bars .is-previous{background:#98a2b3}
.eko-v2511-conversion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px}.eko-v2511-conversion-grid>div{padding:15px;border:1px solid var(--eko-border);border-radius:10px;background:#f8fafc}.eko-v2511-conversion-grid span,.eko-v2511-conversion-grid strong,.eko-v2511-conversion-grid small{display:block}.eko-v2511-conversion-grid span{font-size:10px;font-weight:800;color:var(--eko-muted)}.eko-v2511-conversion-grid strong{margin-top:5px;font-size:24px}.eko-v2511-conversion-grid small{margin-top:5px;color:var(--eko-muted);font-size:10px}
.eko-cards-4:has(> .eko-card:nth-child(5)){grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1100px){.eko-cards-4:has(> .eko-card:nth-child(5)){grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.eko-v2511-schedule-list article{grid-template-columns:110px minmax(0,1fr)}.eko-v2511-schedule-list article>a{grid-column:2}.eko-v2511-conversion-grid{grid-template-columns:1fr}}
@media(max-width:650px){.eko-v2511-schedule-list article{grid-template-columns:1fr}.eko-v2511-schedule-list article>a{grid-column:1}.eko-v2511-month-row,.eko-v2511-comparison-row{grid-template-columns:30px minmax(0,1fr) 95px}.eko-active-table .eko-v251-phase-actions input[name="production_update_note"]{display:none!important}}


/* --- LEGACY AKCIONE IKONICE I FINANSIJSKI PRIKAZI (izvorno V2512) --- */
.eko-v2512-baseline-cards{margin-bottom:16px}
.eko-v2512-data-note{
  display:flex;gap:8px;align-items:flex-start;margin:0 0 14px;padding:11px 13px;
  border:1px solid #fedf89;border-radius:9px;background:#fffaeb;color:#7a2e0e
}
.eko-v2512-data-note strong{flex:none;font-size:10.5px}
.eko-v2512-data-note span{font-size:10px;line-height:1.45}

.eko-v2512-action-icon{
  display:inline-grid!important;place-items:center!important;
  width:31px!important;height:31px!important;min-width:31px!important;
  padding:0!important;border-radius:7px!important;font-size:0!important;
  vertical-align:middle;text-decoration:none!important
}
.eko-v2512-action-icon.is-pdf{background:#eff8ff!important;border-color:#84caff!important;color:#175cd3!important}
.eko-v2512-action-icon.is-print{background:#f8fafc!important;border-color:#d0d5dd!important;color:#344054!important}
.eko-v2512-action-icon.is-accept{background:#ecfdf3!important;border-color:#75e0a7!important;color:#067647!important}
.eko-v2512-action-icon.is-edit{background:#eff4ff!important;border-color:#b2ccff!important;color:#1849a9!important}
.eko-v2512-action-icon.is-delete{background:#fef3f2!important;border-color:#fda29b!important;color:#b42318!important}
.eko-v2512-action-icon.is-view{background:#f9f5ff!important;border-color:#d6bbfb!important;color:#6941c6!important}

.eko-v2511-dual-bars i{height:10px!important}
.eko-v2512-interactive-bars{position:relative;cursor:crosshair}
.eko-v2512-tooltip{
  position:fixed;z-index:999999;max-width:340px;padding:8px 10px;
  border-radius:7px;background:#101828;color:#fff;box-shadow:0 8px 24px rgba(16,24,40,.22);
  font-size:10px;line-height:1.4;pointer-events:none
}
.eko-v2512-tooltip[hidden]{display:none!important}


/* --- PRIORITET AKTIVNIH PROJEKATA (izvorno V252) --- */
.eko-v252-priority-legend{
  display:flex;
  gap:13px;
  align-items:center;
  flex-wrap:wrap;
  margin:0 0 15px;
  padding:11px 14px;
  border:1px solid var(--eko-border);
  border-radius:11px;
  background:#fff;
  color:var(--eko-muted);
  font-size:12px
}
.eko-v252-priority-legend strong{color:var(--eko-text);margin-right:2px}
.eko-v252-priority-legend span{display:inline-flex;gap:6px;align-items:center}
.eko-v252-priority-legend i{display:inline-block;width:13px;height:13px;border-radius:4px;border:1px solid rgba(16,24,40,.08)}
.eko-v252-priority-legend .is-overdue{background:#fee4e2}
.eko-v252-priority-legend .is-due{background:#fef0c7}
.eko-v252-priority-legend .is-stagnant{background:#f4ebff}
.eko-v252-priority-legend .is-ready{background:#dcfae6}
.eko-v252-priority-legend .is-normal{background:#f8fafc}

.eko-active-table tbody tr td:first-child{border-left:5px solid transparent}
.eko-active-table tbody tr.eko-row-normal td{background:#fff}
.eko-active-table tbody tr.eko-row-normal td:first-child{border-left-color:#d0d5dd}
.eko-active-table tbody tr.eko-row-stagnant td{background:#fcfaff}
.eko-active-table tbody tr.eko-row-stagnant td:first-child{border-left-color:#7f56d9}
.eko-active-table tbody tr.eko-row-ready td{background:#f6fef9}
.eko-active-table tbody tr.eko-row-ready td:first-child{border-left-color:#12b76a}
.eko-active-table tbody tr.eko-row-due td{background:#fffcf5}
.eko-active-table tbody tr.eko-row-due td:first-child{border-left-color:#f79009}
.eko-active-table tbody tr.eko-row-overdue td{background:#fff8f7}
.eko-active-table tbody tr.eko-row-overdue td:first-child{border-left-color:#d92d20}
.eko-active-table tbody tr:hover td{filter:brightness(.985)}

@media(max-width:700px){
  .eko-v252-priority-legend{align-items:flex-start;gap:9px}
  .eko-v252-priority-legend strong{width:100%}
}


/* --- ALIAS KUPCA (izvorno V255) --- */
.eko-customer-alias{display:block;margin-top:3px;color:var(--eko-muted);font-size:11px;line-height:1.35;font-weight:500}
.eko-project-page-alias{margin-top:-3px;margin-bottom:7px;font-size:12px}
.eko-phase-pill.is-isporuceno{background:#dcfae6;border-color:#6ce9a6;color:#067647}
.eko-field-help{display:block;margin-top:5px;color:var(--eko-muted);font-size:11px;font-weight:500}


/* --- REZERVACIJA BROJA PONUDE (izvorno V256) --- */
.eko-v256-reservations{margin-bottom:18px}
.eko-v256-reservation-list{display:grid;gap:8px;padding:0 18px 18px}
.eko-v256-reservation-list article{
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  padding:12px 14px;border:1px solid var(--eko-border);border-radius:10px;background:#fff
}
.eko-v256-reservation-list article strong,
.eko-v256-reservation-list article span,
.eko-v256-reservation-list article small{display:block}
.eko-v256-reservation-list article span{margin-top:3px;color:var(--eko-text)}
.eko-v256-reservation-list article small{margin-top:3px;color:var(--eko-muted)}
@media(max-width:700px){
  .eko-v256-reservation-list article{align-items:flex-start;flex-direction:column}
}


/* --- OBAVEŠTENJA I ZAVRŠNI RAČUNI (izvorno V257) --- */
.eko-v257-bell{display:inline-flex!important;align-items:center;gap:6px}
.eko-v257-bell b{
  display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;
  border-radius:999px;background:#f04438;color:#fff;font-size:10px
}
.eko-v257-bell b[hidden]{display:none!important}

.eko-v257-notifications{margin-bottom:20px}
.eko-v257-notification-list{display:grid;gap:8px;padding:0 18px 18px}
.eko-v257-notification-list article{
  display:flex;justify-content:space-between;gap:15px;align-items:center;
  padding:13px 14px;border:1px solid var(--eko-border);border-radius:10px;background:#fff
}
.eko-v257-notification-list article.is-unread{
  border-left:5px solid #2e90fa;background:#f5faff
}
.eko-v257-notification-list p{margin:4px 0;color:var(--eko-text)}
.eko-v257-notification-list small{color:var(--eko-muted)}

.eko-v257-invoice-status{
  display:inline-flex!important;width:max-content;margin-top:6px!important;
  padding:4px 7px;border-radius:999px;font-size:10px!important;font-weight:800
}
.eko-v257-invoice-status.is-done{background:#dcfae6;color:#067647}
.eko-v257-invoice-status.is-missing{background:#fee4e2;color:#b42318}
.eko-v257-check-row{display:flex!important;gap:9px;align-items:center}
.eko-v257-check-row input{width:auto!important;margin:0}
.eko-v257-final-invoice{
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  margin:14px 18px 18px;padding:14px;border:1px solid var(--eko-border);
  border-radius:10px;background:#f8fafc
}
.eko-v257-final-invoice strong,.eko-v257-final-invoice span{display:block}

@media(max-width:700px){
  .eko-v257-notification-list article,.eko-v257-final-invoice{
    flex-direction:column;align-items:flex-start
  }
}


/* --- INBOX OBAVEŠTENJA I REZERVACIJE (izvorno V258) --- */
.eko-nav a{display:inline-flex;align-items:center;gap:6px}
.eko-v258-nav-count{
  display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;
  border-radius:999px;background:#f04438;color:#fff;font-size:10px;line-height:1
}
.eko-v258-nav-count[hidden]{display:none!important}

.eko-v258-inbox-head{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  margin:22px 0 12px
}
.eko-v258-inbox-head h1{
  margin:0;font-size:25px;line-height:1.2;font-weight:700;color:var(--eko-text)
}
.eko-v258-inbox-head span{
  display:block;margin-top:4px;color:var(--eko-muted);font-size:12px
}
.eko-v258-device-button{
  padding:7px 10px;border:1px solid var(--eko-border);border-radius:7px;
  background:#fff;color:var(--eko-text);font-size:11px;font-weight:700;cursor:pointer
}
.eko-v258-device-button:hover{background:#f8fafc}

.eko-v258-inbox{
  overflow:hidden;border:1px solid var(--eko-border);border-radius:10px;background:#fff
}
.eko-v258-inbox article{
  display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:12px;
  align-items:center;min-height:68px;padding:11px 14px;
  border-bottom:1px solid var(--eko-border)
}
.eko-v258-inbox article:last-child{border-bottom:0}
.eko-v258-inbox article.is-unread{background:#f5faff}
.eko-v258-inbox article.is-read{background:#fff}
.eko-v258-inbox article:hover{background:#f8fafc}

.eko-v258-unread-dot{
  width:8px;height:8px;border-radius:999px;background:transparent
}
.eko-v258-inbox article.is-unread .eko-v258-unread-dot{background:#2e90fa}

.eko-v258-inbox-content{min-width:0}
.eko-v258-inbox-title{
  display:flex;justify-content:space-between;gap:14px;align-items:baseline
}
.eko-v258-inbox-title strong{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:13px;font-weight:650;color:var(--eko-text)
}
.eko-v258-inbox article.is-unread .eko-v258-inbox-title strong{font-weight:850}
.eko-v258-inbox-title time{
  flex:none;color:var(--eko-muted);font-size:10px;white-space:nowrap
}
.eko-v258-inbox-content p{
  overflow:hidden;margin:4px 0 0;color:#475467;font-size:11px;
  line-height:1.45;text-overflow:ellipsis;white-space:nowrap
}

.eko-v258-inbox-actions{display:flex;gap:6px;align-items:center}
.eko-v258-inbox-actions form{margin:0}
.eko-v258-inbox-actions button{
  padding:6px 8px;border-radius:6px;font-size:10px;font-weight:750;cursor:pointer
}
.eko-v258-open-button{
  border:1px solid #173b60;background:#173b60;color:#fff
}
.eko-v258-read-button{
  border:1px solid var(--eko-border);background:#fff;color:#344054
}
.eko-v258-inbox-empty{
  padding:34px;text-align:center;color:var(--eko-muted);font-size:13px
}

@media(max-width:760px){
  .eko-v258-inbox-head{align-items:flex-start;flex-direction:column}
  .eko-v258-inbox article{
    grid-template-columns:10px minmax(0,1fr);
    align-items:start
  }
  .eko-v258-inbox-actions{
    grid-column:2;justify-content:flex-start;flex-wrap:wrap
  }
  .eko-v258-inbox-title{display:block}
  .eko-v258-inbox-title time{display:block;margin-top:3px}
  .eko-v258-inbox-content p{white-space:normal}
}


/* --- LEGACY MOBILNE IKONICE (izvorno V261) --- */
/* ------------------------------------------------------------------
 * Global mobile corrections
 * ------------------------------------------------------------------ */
@media(max-width:760px){
  html,body{
    max-width:100%!important;
    overflow-x:hidden!important
  }

  body>.entry-title,
  body .entry-title,
  main>.entry-title,
  .page-header,
  .entry-header{
    display:none!important
  }

  .site-main,
  .content-area,
  .site-content,
  .entry-content,
  article.page,
  article.type-page{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important
  }

  .eko-app{
    overflow:visible!important
  }

  .eko-app-header{
    margin:0 0 12px!important
  }

  .eko-page-head{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important
  }

  .eko-page-head>.eko-btn,
  .eko-page-head>form,
  .eko-page-head form select{
    width:100%!important
  }

  /* The main generic rule from 2.6.0 was too broad. */
  .eko-btn{
    width:auto!important;
    min-width:0!important;
    max-width:100%!important
  }

  .eko-toolbar .eko-btn,
  .eko-search .eko-btn{
    width:100%!important
  }

  .eko-actions .eko-btn,
  .eko-v2511-inline-actions .eko-btn,
  .eko-v251-phase-actions .eko-btn{
    width:auto!important
  }

  /* Header buttons stay in two equal columns. */
  .eko-user{
    grid-template-columns:1fr 1fr!important
  }
  .eko-user>a{
    width:100%!important
  }

  /* Sent offers page actions. */
  .eko-page-head .eko-actions,
  .eko-page-head>div:last-child{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important
  }

  .eko-page-head .eko-actions .eko-btn,
  .eko-page-head>div:last-child .eko-btn{
    flex:1 1 135px!important;
    min-height:42px!important;
    white-space:normal!important;
    line-height:1.15!important
  }

  /* Search */
  .eko-search{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important
  }

  /* Filter buttons become horizontal scroll chips instead of giant stack. */
  .eko-v261-chip-filters{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    overflow-x:auto!important;
    padding:2px 2px 7px!important;
    scroll-snap-type:x proximity
  }

  .eko-v261-chip-filters>a.eko-btn,
  .eko-v261-chip-filters>button.eko-btn{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    min-height:38px!important;
    padding:8px 14px!important;
    border-radius:999px!important;
    scroll-snap-align:start
  }

  /* Table cards */
  .eko-v260-responsive-table tr{
    padding:12px!important
  }

  .eko-v260-responsive-table td{
    grid-template-columns:minmax(105px,34%) minmax(0,1fr)!important;
    gap:10px!important
  }

  .eko-v260-responsive-table td:before{
    align-self:start!important
  }

  .eko-v261-pdf-cell,
  .eko-v261-action-cell{
    grid-template-columns:105px minmax(0,1fr)!important
  }

  .eko-v261-pdf-cell>div,
  .eko-v261-pdf-cell .eko-actions,
  .eko-v261-action-cell>div,
  .eko-v261-action-cell .eko-actions{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    flex-wrap:wrap!important
  }

  /* All icon actions use fixed square dimensions. */
  .eko-v261-icon-action,
  .eko-v2512-action-icon,
  .eko-v2511-icon-button{
    display:inline-grid!important;
    place-items:center!important;
    flex:0 0 40px!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:9px!important;
    font-size:0!important;
    line-height:1!important
  }

  .eko-v261-icon-action svg,
  .eko-v2512-action-icon svg,
  .eko-v2511-icon-button svg{
    display:block!important;
    width:18px!important;
    height:18px!important
  }

  .eko-v261-icon-action.is-pdf{
    background:#eff8ff!important;border-color:#84caff!important;color:#175cd3!important
  }
  .eko-v261-icon-action.is-print{
    background:#f8fafc!important;border-color:#d0d5dd!important;color:#344054!important
  }
  .eko-v261-icon-action.is-accept{
    background:#ecfdf3!important;border-color:#75e0a7!important;color:#067647!important
  }
  .eko-v261-icon-action.is-edit{
    background:#eff4ff!important;border-color:#b2ccff!important;color:#1849a9!important
  }
  .eko-v261-icon-action.is-delete{
    background:#fef3f2!important;border-color:#fda29b!important;color:#b42318!important
  }
  .eko-v261-icon-action.is-view{
    background:#f9f5ff!important;border-color:#d6bbfb!important;color:#6941c6!important
  }
  .eko-v261-icon-action.is-money{
    background:#eff8ff!important;border-color:#84caff!important;color:#175cd3!important
  }
  .eko-v261-icon-action.is-back{
    background:#fffaeb!important;border-color:#fec84b!important;color:#b54708!important
  }
  .eko-v261-icon-action.is-truck{
    background:#ecfdf3!important;border-color:#75e0a7!important;color:#067647!important
  }

  /* Active projects: stack phase controls cleanly. */
  .eko-active-table .eko-v251-phase-actions,
  .eko-active-table .eko-v251-phase-actions .eko-phase-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 42px 42px!important;
    gap:7px!important;
    width:100%!important
  }

  .eko-active-table .eko-v251-phase-actions select{
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    font-size:15px!important
  }

  .eko-active-table .eko-v251-phase-actions input[name="production_update_note"]{
    display:none!important
  }

  .eko-active-table .eko-v251-phase-actions .eko-btn{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    overflow:hidden!important;
    font-size:0!important
  }

  .eko-active-table td[data-label="Akcija"]{
    display:block!important
  }

  .eko-active-table td[data-label="Akcija"]:before{
    display:block!important;
    margin-bottom:8px!important
  }

  .eko-active-table td[data-label="Akcija"]>.eko-actions,
  .eko-active-table td[data-label="Akcija"]>.eko-v2511-inline-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important
  }

  /* Delivery cards and plan button */
  .eko-v260-responsive-table .eko-btn:not(.eko-v261-icon-action){
    white-space:normal!important
  }

  .eko-v260-responsive-table td:last-child>.eko-btn,
  .eko-v260-responsive-table td:last-child .eko-btn:not(.eko-v261-icon-action){
    width:100%!important;
    min-height:42px!important
  }

  /* Prevent giant typography from theme/page title. */
  h1{
    word-break:normal!important;
    overflow-wrap:anywhere!important
  }

  .eko-page-head h1{
    font-size:24px!important
  }

  /* Bottom navigation */
  .eko-v260-bottom-nav{
    min-height:64px!important
  }

  .eko-v260-bottom-nav span{
    font-size:8px!important;
    line-height:1.15!important
  }
}

@media(max-width:390px){
  .eko-v260-responsive-table td{
    grid-template-columns:92px minmax(0,1fr)!important
  }

  .eko-v261-pdf-cell,
  .eko-v261-action-cell{
    grid-template-columns:92px minmax(0,1fr)!important
  }
}


/* --- LEGACY MOBILNI HEADER I DRAWER (izvorno V263) --- */
.eko-v263-header,.eko-v263-drawer{display:none}
@media(max-width:760px){:root{--side:10px}html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}body{padding-bottom:0!important}.entry-title,.page-header,.entry-header{display:none!important}.site-main,.content-area,.site-content,.entry-content,article.page,article.type-page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.eko-app{width:calc(100% - 20px)!important;max-width:none!important;margin:0 10px!important;padding:72px 0 24px!important;overflow:visible!important}.eko-app-header,.eko-nav{display:none!important}.eko-v263-header{position:fixed!important;z-index:99990!important;top:0!important;left:0!important;right:0!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;align-items:center!important;gap:9px!important;height:60px!important;padding:8px 10px!important;border-bottom:1px solid #d0d5dd!important;background:#fff!important;box-shadow:0 4px 16px rgba(16,24,40,.08)!important}.eko-v263-header button,.eko-v263-header>a{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;padding:0!important;border:1px solid #d0d5dd!important;border-radius:10px!important;background:#fff!important;color:#173b60!important;text-decoration:none!important;font-size:22px!important}.eko-v263-header strong,.eko-v263-header span{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.eko-v263-header strong{font-size:14px!important;letter-spacing:1.3px!important;color:#173b60!important}.eko-v263-header span{margin-top:2px!important;color:#667085!important;font-size:10px!important}.eko-v263-drawer{position:fixed!important;inset:0!important;z-index:100000!important;display:block!important;visibility:hidden!important;pointer-events:none!important}.eko-v263-drawer[aria-hidden="false"]{visibility:visible!important;pointer-events:auto!important}.eko-v263-overlay{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;background:rgba(16,24,40,.55)!important;opacity:0!important}.eko-v263-drawer[aria-hidden="false"] .eko-v263-overlay{opacity:1!important}.eko-v263-drawer aside{position:absolute!important;top:0!important;left:0!important;bottom:0!important;width:min(88vw,360px)!important;padding:16px 14px 24px!important;overflow-y:auto!important;background:#fff!important;box-shadow:16px 0 40px rgba(16,24,40,.22)!important;transform:translateX(-105%)!important;transition:.2s ease!important}.eko-v263-drawer[aria-hidden="false"] aside{transform:translateX(0)!important}body.eko-v263-open{overflow:hidden!important}.eko-v263-drawer-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:4px 2px 14px!important;border-bottom:1px solid #e4e7ec!important}.eko-v263-drawer-head strong,.eko-v263-drawer-head span{display:block!important}.eko-v263-drawer-head strong{font-size:18px!important;letter-spacing:1.6px!important;color:#173b60!important}.eko-v263-drawer-head span{margin-top:3px!important;font-size:10px!important;color:#667085!important}.eko-v263-drawer-head button{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border:1px solid #d0d5dd!important;border-radius:10px!important;background:#fff!important}[data-v263-nav]{display:grid!important;gap:5px!important;margin-top:12px!important}[data-v263-nav] a{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;min-height:46px!important;padding:7px 9px!important;border-radius:10px!important;color:#344054!important;text-decoration:none!important}[data-v263-nav] a.is-active{background:#eff4ff!important;color:#175cd3!important}[data-v263-nav] i{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:8px!important;background:#f2f4f7!important;font-style:normal!important}[data-v263-nav] span{font-size:12px!important;font-weight:750!important}.eko-v263-install{margin-top:16px!important;padding:11px!important;border:1px solid #b2ccff!important;border-radius:10px!important;background:#eff4ff!important}.eko-v263-install strong,.eko-v263-install span{display:block!important}.eko-v263-install strong{font-size:11px!important}.eko-v263-install span{margin-top:4px!important;font-size:9px!important;line-height:1.4!important;color:#475467!important}.eko-page-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-bottom:12px!important;padding:13px!important}.eko-page-head h1{margin:0!important;font-size:22px!important;line-height:1.15!important}.eko-page-head p{font-size:10px!important;line-height:1.45!important}.eko-page-head .eko-actions{display:flex!important;flex-wrap:wrap!important;gap:7px!important}.eko-page-head .eko-actions .eko-btn{flex:1 1 130px!important;width:auto!important;min-height:42px!important}.eko-search{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}.eko-search input,.eko-search .eko-btn{width:100%!important}.eko-v263-chips{display:flex!important;flex-wrap:nowrap!important;gap:7px!important;overflow-x:auto!important;padding:2px 2px 8px!important}.eko-v263-chips .eko-btn{flex:0 0 auto!important;width:auto!important;min-width:max-content!important;min-height:38px!important;padding:8px 13px!important;border-radius:999px!important}.eko-cards,.eko-cards-3,.eko-cards-4,.eko-cards-4:has(>.eko-card:nth-child(5)){grid-template-columns:1fr!important;gap:9px!important}.eko-card{min-width:0!important;min-height:0!important;padding:14px!important}.eko-card>strong{display:block!important;max-width:100%!important;margin-top:5px!important;overflow-wrap:anywhere!important;word-break:break-word!important;font-size:clamp(24px,8vw,38px)!important;line-height:1.08!important}.eko-card>small{font-size:9px!important;line-height:1.4!important}.eko-table-wrap{overflow:visible!important}.eko-v263-cards{display:block!important;min-width:0!important;width:100%!important}.eko-v263-cards thead{display:none!important}.eko-v263-cards tbody{display:grid!important;gap:10px!important}.eko-v263-cards tr{display:block!important;width:100%!important;padding:13px!important;border:1px solid #dfe3e8!important;border-radius:13px!important;background:#fff!important;box-shadow:0 4px 15px rgba(16,24,40,.055)!important}.eko-v263-cards td{display:grid!important;grid-template-columns:minmax(92px,31%) minmax(0,1fr)!important;align-items:start!important;gap:9px!important;width:auto!important;min-width:0!important;padding:7px 0!important;border:0!important;border-bottom:1px solid #f0f2f5!important;text-align:left!important}.eko-v263-cards td:last-child{border-bottom:0!important}.eko-v263-cards td:before{content:attr(data-label)!important;display:block!important;color:#667085!important;font-size:8.5px!important;font-weight:850!important;letter-spacing:.35px!important;line-height:1.35!important;text-transform:uppercase!important}.eko-v263-cards td>*{min-width:0!important;max-width:100%!important}.eko-v263-cards td strong,.eko-v263-cards td span,.eko-v263-cards td div{overflow-wrap:anywhere!important}.eko-v263-secondary{display:none!important}.eko-v263-actions,.eko-v263-pdf{grid-template-columns:92px minmax(0,1fr)!important}.eko-actions{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}.eko-v263-icon,.eko-v2512-action-icon,.eko-v2511-icon-button{display:inline-grid!important;place-items:center!important;flex:0 0 40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;overflow:hidden!important;border-radius:9px!important;font-size:0!important;line-height:1!important}.eko-v263-icon svg,.eko-v2512-action-icon svg,.eko-v2511-icon-button svg{width:19px!important;height:19px!important}.eko-v263-icon.is-pdf{background:#eff8ff!important;border-color:#84caff!important;color:#175cd3!important}.eko-v263-icon.is-print{background:#f8fafc!important;border-color:#d0d5dd!important;color:#344054!important}.eko-v263-icon.is-accept{background:#ecfdf3!important;border-color:#75e0a7!important;color:#067647!important}.eko-v263-icon.is-edit{background:#eff4ff!important;border-color:#b2ccff!important;color:#1849a9!important}.eko-v263-icon.is-delete{background:#fef3f2!important;border-color:#fda29b!important;color:#b42318!important}.eko-v263-icon.is-view{background:#f9f5ff!important;border-color:#d6bbfb!important;color:#6941c6!important}.eko-v263-icon.is-money{background:#eff8ff!important;border-color:#84caff!important;color:#175cd3!important}.eko-v263-icon.is-back{background:#fffaeb!important;border-color:#fec84b!important;color:#b54708!important}.eko-v263-icon.is-save{background:#eff4ff!important;border-color:#84adff!important;color:#175cd3!important}.eko-v263-icon.is-next{background:#ecfdf3!important;border-color:#75e0a7!important;color:#067647!important}.eko-active-table .eko-v251-phase-actions,.eko-active-table .eko-v251-phase-actions .eko-phase-form{display:grid!important;grid-template-columns:minmax(0,1fr) 40px 40px!important;gap:7px!important;width:100%!important}.eko-active-table .eko-v251-phase-actions select{width:100%!important;min-width:0!important;height:42px!important;min-height:42px!important;padding:5px 30px 5px 9px!important;font-size:15px!important}.eko-active-table .eko-v251-phase-actions input[name="production_update_note"]{display:none!important}input,select,textarea{max-width:100%!important;font-size:16px!important}.eko-modal{position:fixed!important;inset:0!important;z-index:100001!important;align-items:flex-end!important;padding:0!important;background:rgba(16,24,40,.56)!important}.eko-modal[aria-hidden="true"]{display:none!important}.eko-modal-card{width:100%!important;max-width:none!important;max-height:90dvh!important;margin:0!important;padding:18px 14px 24px!important;overflow-y:auto!important;border-radius:17px 17px 0 0!important}.eko-v2511-month-row,.eko-v2511-comparison-row{grid-template-columns:27px minmax(0,1fr) 82px!important;gap:6px!important}.eko-v2511-month-row>b,.eko-v2511-comparison-row>b{overflow-wrap:anywhere!important;font-size:8px!important}}


/* --- LEGACY MOBILNE TABELA-KARTICE (izvorno V264) --- */
.eko-v264-header,.eko-v264-drawer{display:none}
@media(max-width:760px){
:root{--eko-mobile-side:10px}html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}body{padding-bottom:0!important}body>.entry-title,body .entry-title,main>.entry-title,.page-header,.entry-header{display:none!important}.site-main,.content-area,.site-content,.entry-content,article.page,article.type-page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.eko-app{width:calc(100% - 20px)!important;max-width:none!important;margin:0 10px!important;padding:70px 0 24px!important;overflow:visible!important}.eko-app-header,.eko-nav{display:none!important}
.eko-v264-header{position:fixed!important;z-index:99990!important;top:0!important;left:0!important;right:0!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;align-items:center!important;gap:10px!important;height:62px!important;padding:8px 10px!important;border-bottom:1px solid #d0d5dd!important;background:rgba(255,255,255,.98)!important;box-shadow:0 4px 16px rgba(16,24,40,.07)!important}.eko-v264-header button{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;padding:0!important;border:1px solid #d0d5dd!important;border-radius:10px!important;background:#fff!important;color:#173b60!important}.eko-v264-header strong,.eko-v264-header span{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.eko-v264-header strong{font-size:14px!important;letter-spacing:1.5px!important;color:#173b60!important}.eko-v264-header span{margin-top:2px!important;font-size:10px!important;color:#667085!important}
.eko-v264-drawer{position:fixed!important;inset:0!important;z-index:100000!important;display:block!important;pointer-events:none!important;visibility:hidden!important}.eko-v264-drawer[aria-hidden="false"]{visibility:visible!important;pointer-events:auto!important}.eko-v264-overlay{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;background:rgba(16,24,40,.56)!important}.eko-v264-drawer aside{position:absolute!important;top:0!important;left:0!important;bottom:0!important;width:min(88vw,360px)!important;padding:18px 14px calc(18px + env(safe-area-inset-bottom))!important;overflow-y:auto!important;background:#fff!important;box-shadow:15px 0 40px rgba(16,24,40,.22)!important;transform:translateX(-105%)!important;transition:.2s ease!important}.eko-v264-drawer[aria-hidden="false"] aside{transform:translateX(0)!important}body.eko-v264-drawer-open{overflow:hidden!important}.eko-v264-drawer-head{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;padding-bottom:14px!important;border-bottom:1px solid #e4e7ec!important}.eko-v264-drawer-head strong,.eko-v264-drawer-head span{display:block!important}.eko-v264-drawer-head strong{font-size:18px!important;letter-spacing:1.5px!important;color:#173b60!important}.eko-v264-drawer-head span{margin-top:3px!important;font-size:10px!important;color:#667085!important}.eko-v264-drawer-head button{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border:1px solid #d0d5dd!important;border-radius:10px!important;background:#fff!important}[data-eko-v264-nav]{display:grid!important;gap:5px!important;margin-top:13px!important}[data-eko-v264-nav] a{display:block!important;padding:11px 12px!important;border-radius:9px!important;color:#344054!important;text-decoration:none!important;font-size:12px!important;font-weight:750!important}[data-eko-v264-nav] a.is-active{background:#eff4ff!important;color:#175cd3!important}.eko-v264-home-help{margin-top:16px!important;padding:11px!important;border:1px solid #b2ccff!important;border-radius:10px!important;background:#eff4ff!important}.eko-v264-home-help strong,.eko-v264-home-help span{display:block!important}.eko-v264-home-help strong{font-size:11px!important}.eko-v264-home-help span{margin-top:3px!important;font-size:9px!important;color:#475467!important}
.eko-page-head{gap:8px!important;margin:0 0 10px!important;padding:12px!important;border-radius:11px!important}.eko-page-head h1{font-size:22px!important;line-height:1.15!important}.eko-page-head p{font-size:9.5px!important;line-height:1.4!important}.eko-toolbar{margin-bottom:10px!important}.eko-search{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}.eko-search input,.eko-search select,.eko-search .eko-btn{width:100%!important;min-height:40px!important}.eko-search input,.eko-search select{padding:8px 10px!important}
.eko-cards,.eko-cards-3,.eko-cards-4,.eko-cards-4:has(> .eko-card:nth-child(5)){grid-template-columns:1fr!important;gap:9px!important}.eko-card{min-width:0!important;padding:14px!important}.eko-card>strong{max-width:100%!important;overflow-wrap:anywhere!important;font-size:clamp(24px,8vw,38px)!important;line-height:1.06!important}
.eko-table-wrap{overflow:visible!important}.eko-v264-mobile-cards{display:block!important;min-width:0!important;width:100%!important}.eko-v264-mobile-cards thead{display:none!important}.eko-v264-mobile-cards tbody{display:grid!important;gap:10px!important}.eko-v264-mobile-cards tr{display:block!important;width:100%!important;padding:0!important;overflow:hidden!important;border:1px solid #dfe3e8!important;border-radius:14px!important;background:#fff!important;box-shadow:0 4px 15px rgba(16,24,40,.055)!important}.eko-v264-mobile-cards td{display:grid!important;grid-template-columns:minmax(96px,32%) minmax(0,1fr)!important;align-items:start!important;gap:9px!important;width:auto!important;min-width:0!important;padding:10px 13px!important;border:0!important;border-bottom:1px solid #eef1f4!important;background:transparent!important;text-align:left!important}.eko-v264-mobile-cards td:last-child{border-bottom:0!important}.eko-v264-mobile-cards td:before{content:attr(data-label)!important;display:block!important;color:#667085!important;font-size:8.5px!important;font-weight:850!important;letter-spacing:.35px!important;line-height:1.35!important;text-transform:uppercase!important}.eko-v264-mobile-cards tr.eko-row-danger,.eko-v264-mobile-cards tr.eko-row-warning,.eko-v264-mobile-cards tr.eko-row-stagnant,.eko-v264-mobile-cards tr.eko-row-ready{background:transparent!important}.eko-v264-mobile-cards tr.eko-row-danger{border-left:4px solid #f04438!important}.eko-v264-mobile-cards tr.eko-row-warning{border-left:4px solid #f79009!important}.eko-v264-mobile-cards tr.eko-row-stagnant{border-left:4px solid #9e77ed!important}.eko-v264-mobile-cards tr.eko-row-ready{border-left:4px solid #12b76a!important}.eko-v264-mobile-cards td[data-label="Akcija"],.eko-v264-mobile-cards td[data-label="Akcije"]{display:block!important;padding:11px 13px 14px!important}.eko-v264-mobile-cards td[data-label="Akcija"]:before,.eko-v264-mobile-cards td[data-label="Akcije"]:before{margin-bottom:8px!important}.eko-v264-mobile-cards td[data-label="Akcija"]>.eko-actions,.eko-v264-mobile-cards td[data-label="Akcije"]>.eko-actions,.eko-v264-mobile-cards td[data-label="Akcija"]>div,.eko-v264-mobile-cards td[data-label="Akcije"]>div{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
.eko-v264-icon,.eko-v2511-icon-button,.eko-v2512-action-icon{display:inline-grid!important;place-items:center!important;flex:0 0 40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;overflow:hidden!important;border-radius:9px!important;font-size:0!important;line-height:1!important}.eko-v264-icon svg,.eko-v2511-icon-button svg,.eko-v2512-action-icon svg{width:18px!important;height:18px!important}.eko-v264-icon.is-check{background:#ecfdf3!important;border-color:#75e0a7!important;color:#067647!important}.eko-v264-icon.is-pdf{background:#eff8ff!important;border-color:#84caff!important;color:#175cd3!important}.eko-v264-icon.is-print{background:#f8fafc!important;border-color:#d0d5dd!important;color:#344054!important}.eko-v264-icon.is-view{background:#f9f5ff!important;border-color:#d6bbfb!important;color:#6941c6!important}.eko-v264-icon.is-edit{background:#eff4ff!important;border-color:#b2ccff!important;color:#1849a9!important}.eko-v264-icon.is-delete{background:#fef3f2!important;border-color:#fda29b!important;color:#b42318!important}.eko-v264-icon.is-money,.eko-v264-icon.is-back{background:#fffaeb!important;border-color:#fec84b!important;color:#b54708!important}.eko-v264-icon.is-save{background:#eff4ff!important;border-color:#84adff!important;color:#175cd3!important}.eko-v264-icon.is-next{background:#ecfdf3!important;border-color:#75e0a7!important;color:#067647!important}
.eko-badge,.eko-v2511-payment-missing,.eko-v264-compact-status{display:inline-flex!important;width:auto!important;max-width:max-content!important;min-width:0!important;padding:5px 10px!important;border-radius:999px!important;white-space:nowrap!important}
.eko-v264-phase-list{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;overflow:visible!important}.eko-v264-phase-list>i{display:none!important}.eko-v264-phase-list .eko-v2511-phase-step{width:100%!important;min-width:0!important;justify-content:flex-start!important}
.eko-profile-grid,.eko-v264-profile-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important}.eko-profile-grid>*,.eko-v264-profile-grid>*{grid-column:1!important;min-width:0!important}.eko-profile-grid input,.eko-profile-grid select,.eko-profile-grid textarea,.eko-v264-profile-grid input,.eko-v264-profile-grid select,.eko-v264-profile-grid textarea{width:100%!important;max-width:100%!important;box-sizing:border-box!important}.eko-v264-signature-preview,[data-signature-preview],.eko-signature-preview{width:100%!important;max-width:100%!important;overflow-x:auto!important;padding:10px!important;box-sizing:border-box!important}.eko-v264-signature-preview table,[data-signature-preview] table,.eko-signature-preview table{max-width:100%!important}
.eko-active-table .eko-v251-phase-actions,.eko-active-table .eko-v251-phase-actions .eko-phase-form{display:grid!important;grid-template-columns:minmax(0,1fr) 40px 40px!important;gap:7px!important;width:100%!important}.eko-active-table .eko-v251-phase-actions select{width:100%!important;min-width:0!important;height:42px!important;min-height:42px!important;font-size:15px!important}.eko-active-table .eko-v251-phase-actions input[name="production_update_note"]{display:none!important}
}


/* --- MODAL GUARD (izvorno V265) --- */
.eko-modal[aria-hidden="true"]{display:none!important;visibility:hidden!important;pointer-events:none!important}


/* --- MOBILNA STABILNOST KARTICA (izvorno V266) --- */
@media (max-width:760px){
  /* Kartice i njihova unutrašnjost ne smeju da prelaze mobilni viewport. */
  .eko-app *,
  .eko-v263-cards *,
  .eko-v264-mobile-cards *{box-sizing:border-box!important}

  .eko-v263-cards tr,
  .eko-v264-mobile-cards tr,
  .eko-card{max-width:100%!important;overflow:hidden!important}

  /* Oko / otvaranje kartice ide u isti red sa ostalim akcijama. */
  .eko-v263-cards td[data-label="Akcija"],
  .eko-v263-cards td[data-label="Akcije"],
  .eko-v264-mobile-cards td[data-label="Akcija"],
  .eko-v264-mobile-cards td[data-label="Akcije"]{
    display:grid!important;
    grid-template-columns:minmax(92px,31%) minmax(0,1fr)!important;
    align-items:start!important;
    gap:9px!important;
  }
  .eko-v263-cards td[data-label="Akcija"]:before,
  .eko-v263-cards td[data-label="Akcije"]:before,
  .eko-v264-mobile-cards td[data-label="Akcija"]:before,
  .eko-v264-mobile-cards td[data-label="Akcije"]:before{margin:0!important}
  .eko-v263-cards td[data-label="Akcija"]>.eko-actions,
  .eko-v263-cards td[data-label="Akcije"]>.eko-actions,
  .eko-v264-mobile-cards td[data-label="Akcija"]>.eko-actions,
  .eko-v264-mobile-cards td[data-label="Akcije"]>.eko-actions,
  .eko-v266-inline-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    flex-wrap:wrap!important;
    width:auto!important;
    min-width:0!important;
  }

  /* Faza ostaje kompaktna umesto da select/pill ide do desne ivice. */
  .eko-active-table .eko-v251-phase-actions,
  .eko-active-table .eko-v251-phase-actions .eko-phase-form{
    grid-template-columns:minmax(0,180px) 40px 40px!important;
    justify-content:start!important;
    width:auto!important;
    max-width:100%!important;
  }
  .eko-active-table .eko-v251-phase-actions select{
    width:100%!important;
    max-width:180px!important;
  }

  /* Plaćeno, U redu i ostali statusi moraju da prate tekst, ne celu kolonu. */
  .eko-v263-cards .eko-badge,
  .eko-v264-mobile-cards .eko-badge,
  .eko-v263-cards .eko-v2511-payment-missing,
  .eko-v264-mobile-cards .eko-v2511-payment-missing,
  .eko-v263-cards [class*="badge"],
  .eko-v264-mobile-cards [class*="badge"]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    justify-self:start!important;
    flex:0 0 auto!important;
    width:max-content!important;
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
  }

  /* Sadržaj na stranici Poveži kupce mora da ostane unutar istih kartica. */
  .eko-card,
  .eko-table-wrap,
  .eko-toolbar,
  .eko-search,
  .eko-page-head{width:100%!important;max-width:100%!important;min-width:0!important}
  .eko-card>*{max-width:100%!important;min-width:0!important}
}


/* --- RESPONSIVE I GRAFIKONI (izvorno V270) --- */
/* Jedinstveni, diskretni grafikoni. Interakciju ostavlja postojećem sistemu — bez drugog tooltipa. */
.eko-v2511-month-row > div,
.eko-v2511-dual-bars{
  position:relative;
  cursor:pointer;
}
.eko-v2511-month-row > div > i,
.eko-v2511-dual-bars > i{
  min-height:6px!important;
  height:10px!important;
  border-radius:6px!important;
}

@media (max-width:760px){
  /* Gotovo puna širina telefona: samo 6 px vazduha po strani. */
  .eko-app{
    width:calc(100% - 12px)!important;
    max-width:none!important;
    margin-left:6px!important;
    margin-right:6px!important;
    box-sizing:border-box!important;
  }
  .eko-app > section,
  .eko-app > .eko-panel,
  .eko-app > .eko-cards,
  .eko-app > .eko-cards-3,
  .eko-app > .eko-cards-4,
  .eko-app > .eko-table-wrap,
  .eko-app > .eko-toolbar,
  .eko-app > .eko-search,
  .eko-app > .eko-phase-grid,
  .eko-app > .eko-attention-panel,
  .eko-app .eko-panel,
  .eko-app .eko-table-wrap,
  .eko-app .eko-toolbar,
  .eko-app .eko-search{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }

  /* Mobilne projektne kartice — jedna površina, bez kartice unutar kartice. */
  .eko-v263-cards,
  .eko-v263-cards tbody,
  .eko-v263-cards tr{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .eko-v263-cards tbody{gap:8px!important}
  .eko-v263-cards tr{overflow:hidden!important}
  .eko-v263-cards tr.eko-row-normal{background:#fff!important}
  .eko-v263-cards tr.eko-row-stagnant{background:#fcfaff!important;border-left:5px solid #7f56d9!important}
  .eko-v263-cards tr.eko-row-ready{background:#f6fef9!important;border-left:5px solid #12b76a!important}
  .eko-v263-cards tr.eko-row-due{background:#fffcf5!important;border-left:5px solid #f79009!important}
  .eko-v263-cards tr.eko-row-overdue{background:#fff8f7!important;border-left:5px solid #d92d20!important}
  .eko-v263-cards tr td{background:transparent!important}

  /* Faza prati samo tekst — ne celu desnu kolonu. */
  .eko-active-table td[data-label="Faza"],
  .eko-v263-cards td[data-label="Faza"]{
    justify-items:start!important;
    align-items:start!important;
  }
  .eko-active-table td[data-label="Faza"] .eko-v251-phase-actions,
  .eko-active-table td[data-label="Faza"] .eko-phase-form{
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    grid-template-columns:none!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
  }
  .eko-active-table td[data-label="Faza"] select{
    width:auto!important;
    max-width:210px!important;
    min-width:0!important;
    padding:7px 34px 7px 12px!important;
    border-radius:999px!important;
  }
  .eko-active-table td[data-label="Faza"] .eko-phase-pill,
  .eko-v263-cards td[data-label="Faza"] .eko-phase-pill,
  .eko-active-table td[data-label="Faza"] .eko-badge,
  .eko-active-table td[data-label="Status"] .eko-badge,
  .eko-active-table td[data-label="Provera"] .eko-badge{
    display:inline-flex!important;
    width:max-content!important;
    max-width:100%!important;
    min-width:0!important;
    justify-self:start!important;
    align-self:start!important;
    padding:7px 12px!important;
    border:0!important;
    border-radius:999px!important;
    white-space:normal!important;
    line-height:1.2!important;
  }

  /* Kompaktni filteri. */
  .eko-toolbar,.eko-search{padding:10px!important;gap:8px!important}
  .eko-toolbar input,.eko-toolbar select,.eko-toolbar .eko-btn,
  .eko-search input,.eko-search select,.eko-search .eko-btn{min-height:46px!important}

  /* Proizvodne faze čitljive na telefonu. */
  .eko-v2511-dashboard-phase-grid,
  .eko-phase-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .eko-v2511-dashboard-phase-grid .eko-phase-card,
  .eko-phase-grid .eko-phase-card{
    min-width:0!important;
    height:auto!important;
    min-height:145px!important;
    padding:14px!important;
  }
  .eko-v2511-dashboard-phase-grid .eko-phase-card span,
  .eko-phase-grid .eko-phase-card span{
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }

  /* Grafik je vizuelno tanak, ali red ostaje lako dodirljiv. */
  .eko-v2511-month-row > div,
  .eko-v2511-dual-bars{
    min-height:34px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:5px!important;
  }
  .eko-v2511-month-row > div > i,
  .eko-v2511-dual-bars > i{
    min-height:6px!important;
    height:10px!important;
    border-radius:6px!important;
  }

  /* Ujednačene ikonice akcija. */
  .eko-v263-cards td[data-label="Akcija"] a,
  .eko-v263-cards td[data-label="Akcija"] button,
  .eko-v263-cards td[data-label="Akcije"] a,
  .eko-v263-cards td[data-label="Akcije"] button{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
    padding:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:13px!important;
  }
}

@media (max-width:390px){
  .eko-v2511-dashboard-phase-grid,
  .eko-phase-grid{grid-template-columns:1fr!important}
  .eko-v2511-dashboard-phase-grid .eko-phase-card,
  .eko-phase-grid .eko-phase-card{min-height:0!important}
}


/* --- MOBILNE AKCIJE I GRAFIKONI (izvorno V271) --- */
/* Sakrij samo naknadno dodat v267 tooltip; originalni tooltip ostaje aktivan. */
.eko-v267-chart-tip{display:none!important}

/* Grafici: tanak poslovni izgled. Touch/click ostaje na celom redu i postojećem JS-u. */
.eko-v2511-month-row > div{
  display:block!important;
  height:8px!important;
  min-height:8px!important;
  overflow:hidden!important;
  border-radius:5px!important;
  background:#eef1f4!important;
}
.eko-v2511-month-row > div > i{
  display:block!important;
  height:8px!important;
  min-height:8px!important;
  border-radius:5px!important;
}
.eko-v2511-dual-bars{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:4px!important;
  height:auto!important;
  min-height:0!important;
  padding:1px 0!important;
  background:transparent!important;
}
.eko-v2511-dual-bars > i{
  display:block!important;
  height:6px!important;
  min-height:6px!important;
  border-radius:4px!important;
}

@media (max-width:760px){
  /* Red ostaje lako dodirljiv, ali sama traka više nije debela. */
  .eko-v2511-month-row,
  .eko-v2511-comparison-row{min-height:34px!important}
  .eko-v2511-month-row > div{
    display:block!important;
    height:8px!important;
    min-height:8px!important;
  }
  .eko-v2511-dual-bars{
    display:grid!important;
    gap:4px!important;
    min-height:0!important;
    height:auto!important;
  }
  .eko-v2511-month-row > div > i{height:8px!important;min-height:8px!important}
  .eko-v2511-dual-bars > i{height:6px!important;min-height:6px!important}

  /* Sve akcije jedne kartice u jednom redu kad fizički stanu. */
  .eko-v263-cards td[data-label="Akcija"],
  .eko-v263-cards td[data-label="Akcije"],
  .eko-v264-mobile-cards td[data-label="Akcija"],
  .eko-v264-mobile-cards td[data-label="Akcije"]{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:7px!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .eko-v263-cards td[data-label="Akcija"]:before,
  .eko-v263-cards td[data-label="Akcije"]:before,
  .eko-v264-mobile-cards td[data-label="Akcija"]:before,
  .eko-v264-mobile-cards td[data-label="Akcije"]:before{
    flex:0 0 92px!important;
    width:92px!important;
    margin:0!important;
  }
  .eko-v263-cards td[data-label="Akcija"] > .eko-actions,
  .eko-v263-cards td[data-label="Akcije"] > .eko-actions,
  .eko-v263-cards td[data-label="Akcija"] > .eko-v2511-inline-actions,
  .eko-v263-cards td[data-label="Akcije"] > .eko-v2511-inline-actions,
  .eko-v264-mobile-cards td[data-label="Akcija"] > .eko-actions,
  .eko-v264-mobile-cards td[data-label="Akcije"] > .eko-actions,
  .eko-v264-mobile-cards td[data-label="Akcija"] > div,
  .eko-v264-mobile-cards td[data-label="Akcije"] > div{
    display:contents!important;
  }
  .eko-v263-cards td[data-label="Akcija"] a,
  .eko-v263-cards td[data-label="Akcija"] button,
  .eko-v263-cards td[data-label="Akcije"] a,
  .eko-v263-cards td[data-label="Akcije"] button,
  .eko-v264-mobile-cards td[data-label="Akcija"] a,
  .eko-v264-mobile-cards td[data-label="Akcija"] button,
  .eko-v264-mobile-cards td[data-label="Akcije"] a,
  .eko-v264-mobile-cards td[data-label="Akcije"] button{
    flex:0 0 44px!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
  }

  /* Prihvaćena ponuda mora biti ikonica, nikad tekstualno dugme. */
  .eko-v271-accepted-icon{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 44px!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    border:1px solid #75e0a7!important;
    border-radius:11px!important;
    background:#ecfdf3!important;
    color:#067647!important;
    font-size:0!important;
    line-height:1!important;
    overflow:hidden!important;
  }
  .eko-v271-accepted-icon svg{width:20px!important;height:20px!important}
}


/* --- SEKTORSKE RESPONSIVE KOREKCIJE (izvorno V272) --- */
/* Povratak isporuke je kompaktna ikonica, bez lomljenja teksta. */
.eko-v272-reopen-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  line-height:1!important;
}
.eko-v272-reopen-icon svg{display:block;width:20px;height:20px}

@media (max-width:760px){
  /* Proizvodnja: izbor/čuvanje faze i sledeća faza moraju stati jedan uz drugi. */
  .eko-v263-cards td[data-label="Akcija"] .eko-v251-phase-actions,
  .eko-v263-cards td[data-label="Akcije"] .eko-v251-phase-actions,
  .eko-v264-mobile-cards td[data-label="Akcija"] .eko-v251-phase-actions,
  .eko-v264-mobile-cards td[data-label="Akcije"] .eko-v251-phase-actions{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    width:auto!important;
    max-width:100%!important;
  }
  .eko-v251-phase-actions > form{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
  }
  .eko-v251-phase-actions > .eko-phase-form{
    display:grid!important;
    grid-template-columns:minmax(128px,1fr) 44px!important;
    gap:7px!important;
    flex:1 1 auto!important;
    min-width:0!important;
  }
  .eko-v251-phase-actions > .eko-phase-form select{
    width:100%!important;
    min-width:0!important;
    max-width:210px!important;
  }
  .eko-v251-phase-actions > .eko-phase-form input[name="production_update_note"]{
    display:none!important;
  }
  .eko-v251-phase-actions .eko-v2511-icon-button{
    flex:0 0 44px!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
  }
}


/* ========================================================================== */
/* C. UI KOMPONENTE — KANONSKI FINALNI IZGLED                                */
/* ========================================================================== */

/**
 * EKONOMIK PROJEKTI — UI 3.0
 * ============================================================================
 * KANONSKI UI DEO GLAVNOG PORTAL CSS FAJLA.
 *
 * Sve vizuelne izmene portala sada su u ovom istom fajlu.
 * PHP moduli više ne štampaju sopstvene <style> blokove.
 *
 * SADRŽAJ
 * 01. Dizajn tokeni
 * 02. Osnovni reset i tipografija
 * 03. Portal shell i širine
 * 04. Header, navigacija i page head
 * 05. Grid sistemi
 * 06. Površine, paneli i kartice
 * 07. KPI kartice
 * 08. Dugmad i akcione ikonice
 * 09. Statusi i badgevi
 * 10. Forme, filteri i pretraga
 * 11. Tabele i mobilne kartice
 * 12. Projekti u izradi
 * 13. Isporuke
 * 14. Grafikoni
 * 15. Prazna/loading/error stanja
 * 16. Komponentni katalog
 * 17. Legacy bridge
 * 18. Responsive — tablet
 * 19. Responsive — telefon
 * ============================================================================
 */

/* ========================================================================== */
/* 01. DIZAJN TOKENI — OVO JE PRVO MESTO KOJE MENJAŠ                       */
/* ========================================================================== */

:root {
    /* Boje brenda */
    --eko-ui-primary: #173b60;
    --eko-ui-primary-hover: #102f4e;
    --eko-ui-primary-soft: #eef6ff;

    /* Statusne boje */
    --eko-ui-success: #168653;
    --eko-ui-success-soft: #eaf9f1;
    --eko-ui-warning: #b46700;
    --eko-ui-warning-soft: #fff7e8;
    --eko-ui-danger: #c43228;
    --eko-ui-danger-soft: #fff0ee;
    --eko-ui-purple: #7145d6;
    --eko-ui-purple-soft: #f6f0ff;

    /* Neutralne boje */
    --eko-ui-bg: #f3f6f9;
    --eko-ui-surface: #ffffff;
    --eko-ui-surface-soft: #f8fafc;
    --eko-ui-text: #17212b;
    --eko-ui-muted: #718096;
    --eko-ui-border: #d9e1e8;
    --eko-ui-border-strong: #c8d2dc;

    /* Dimenzije */
    --eko-ui-content-max: 1500px;
    --eko-ui-page-gap: 20px;
    --eko-ui-card-gap: 16px;
    --eko-ui-card-padding: 22px;
    --eko-ui-action-size: 36px;
    --eko-ui-action-icon-size: 17px;
    --eko-ui-action-radius: 9px;
    --eko-ui-button-height: 40px;
    --eko-ui-button-padding-x: 15px;
    --eko-ui-button-radius: 9px;
    --eko-ui-radius-sm: 9px;
    --eko-ui-radius-md: 13px;
    --eko-ui-radius-lg: 16px;
    --eko-ui-radius-pill: 999px;

    /* Senke */
    --eko-ui-shadow-sm: 0 4px 14px rgba(23, 33, 43, .055);
    --eko-ui-shadow-md: 0 10px 30px rgba(23, 33, 43, .07);
    --eko-ui-shadow-lg: 0 24px 70px rgba(23, 33, 43, .16);

    /* Animacije */
    --eko-ui-transition: 160ms ease;
}

/* ========================================================================== */
/* 02. OSNOVNI RESET I TIPOGRAFIJA                                            */
/* ========================================================================== */

body.eko-ui-v3 {
    background: var(--eko-ui-bg);
    color: var(--eko-ui-text);
}

.eko-ui-v3 .eko-app,
.eko-ui-v3 .eko-app button,
.eko-ui-v3 .eko-app input,
.eko-ui-v3 .eko-app select,
.eko-ui-v3 .eko-app textarea {
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.eko-ui-v3 .eko-app *,
.eko-ui-v3 .eko-app *::before,
.eko-ui-v3 .eko-app *::after {
    box-sizing: border-box;
}

.eko-ui-v3 .eko-app img,
.eko-ui-v3 .eko-app svg {
    max-width: 100%;
}

.eko-ui-v3 .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.eko-ui-v3 code {
    padding: 2px 6px;
    border-radius: 6px;
    background: #eef2f6;
    color: #344054;
    font-size: .9em;
}

/* ========================================================================== */
/* 03. PORTAL SHELL I ŠIRINE                                                   */
/* ========================================================================== */

.eko-ui-v3 .eko-app {
    width: min(calc(100% - 40px), var(--eko-ui-content-max));
    max-width: var(--eko-ui-content-max);
    margin: 28px auto;
    padding: 0 0 54px;
    color: var(--eko-ui-text);
}

.eko-ui-v3 .eko-app > * {
    min-width: 0;
}

/* ========================================================================== */
/* 04. HEADER, NAVIGACIJA I PAGE HEAD                                          */
/* ========================================================================== */

.eko-ui-v3 .eko-app-header {
    border-radius: var(--eko-ui-radius-md) var(--eko-ui-radius-md) 0 0;
    background: var(--eko-ui-primary);
}

.eko-ui-v3 .eko-nav {
    border-color: var(--eko-ui-border);
    border-radius: 0 0 var(--eko-ui-radius-md) var(--eko-ui-radius-md);
    box-shadow: var(--eko-ui-shadow-sm);
}

.eko-ui-v3 .eko-page-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 26px 0 18px;
}

.eko-ui-v3 .eko-page-head > div {
    min-width: 0;
}

.eko-ui-v3 .eko-page-head h1 {
    margin: 0 0 6px;
    color: var(--eko-ui-text);
    font-size: clamp(27px, 3vw, 39px);
    line-height: 1.08;
}

.eko-ui-v3 .eko-page-head p {
    margin: 0;
    color: var(--eko-ui-muted);
    line-height: 1.45;
}

/* ========================================================================== */
/* 05. GRID SISTEMI                                                            */
/* ========================================================================== */

/* Glavni KPI grid po sektorima. Redosled kartica se podešava u:
 * includes/ui/dashboard/registry.php
 */
.eko-ui-v3 .eko-ui-kpi-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: var(--eko-ui-card-gap);
    margin: 0 0 22px;
}

.eko-ui-v3 .eko-phase-grid,
.eko-ui-v3 .eko-v2511-dashboard-phase-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 22px;
}

.eko-ui-v3 .eko-attention-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    padding: 16px;
}

/* ========================================================================== */
/* 06. POVRŠINE, PANELI I KARTICE                                              */
/* ========================================================================== */

.eko-ui-v3 .eko-panel,
.eko-ui-v3 .eko-ui-catalog-section,
.eko-ui-v3 .eko-ui-record-card,
.eko-ui-v3 .eko-ui-delivery-card {
    background: var(--eko-ui-surface);
    border: 1px solid var(--eko-ui-border);
    border-radius: var(--eko-ui-radius-lg);
    box-shadow: var(--eko-ui-shadow-md);
}

.eko-ui-v3 .eko-panel {
    overflow: hidden;
}

.eko-ui-v3 .eko-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 22px;
    border-bottom: 1px solid var(--eko-ui-border);
}

.eko-ui-v3 .eko-panel-head h2,
.eko-ui-v3 .eko-panel-head p {
    margin: 0;
}

.eko-ui-v3 .eko-panel-head p {
    margin-top: 4px;
    color: var(--eko-ui-muted);
}

/* ========================================================================== */
/* 07. KPI KARTICE                                                             */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-kpi-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 170px;
    padding: var(--eko-ui-card-padding);
    overflow: hidden;
    color: var(--eko-ui-text);
    background: var(--eko-ui-surface);
    border: 1px solid var(--eko-ui-border);
    border-radius: var(--eko-ui-radius-md);
    box-shadow: var(--eko-ui-shadow-md);
    text-decoration: none;
    transition: transform var(--eko-ui-transition), box-shadow var(--eko-ui-transition);
}

.eko-ui-v3 .eko-ui-kpi-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: var(--eko-ui-border-strong);
}

.eko-ui-v3 a.eko-ui-kpi-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 36px rgba(23, 33, 43, .10);
}

.eko-ui-v3 .eko-ui-kpi-card__title {
    display: block;
    color: var(--eko-ui-text);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.3;
}

.eko-ui-v3 .eko-ui-kpi-card__value {
    display: block;
    margin-top: 16px;
    overflow-wrap: anywhere;
    color: var(--eko-ui-text);
    font-size: clamp(30px, 3vw, 44px);
    font-weight: 450;
    line-height: 1.03;
}

.eko-ui-v3 .eko-ui-kpi-card__description {
    display: block;
    margin-top: auto;
    padding-top: 14px;
    color: var(--eko-ui-muted);
    font-size: 12px;
    line-height: 1.45;
}

.eko-ui-v3 .eko-ui-kpi-card--success {
    background: linear-gradient(135deg, #fff 35%, var(--eko-ui-success-soft));
}
.eko-ui-v3 .eko-ui-kpi-card--success::before { background: var(--eko-ui-success); }

.eko-ui-v3 .eko-ui-kpi-card--warning {
    background: linear-gradient(135deg, #fff 35%, var(--eko-ui-warning-soft));
}
.eko-ui-v3 .eko-ui-kpi-card--warning::before { background: #f59e0b; }

.eko-ui-v3 .eko-ui-kpi-card--danger {
    background: linear-gradient(135deg, #fff 35%, var(--eko-ui-danger-soft));
}
.eko-ui-v3 .eko-ui-kpi-card--danger::before { background: #ef4444; }

.eko-ui-v3 .eko-ui-kpi-card--primary {
    background: linear-gradient(135deg, #fff 35%, var(--eko-ui-primary-soft));
}
.eko-ui-v3 .eko-ui-kpi-card--primary::before { background: #3b82f6; }

/* ========================================================================== */
/* 08. DUGMAD I AKCIONE IKONICE                                                */
/* ========================================================================== */

.eko-ui-v3 .eko-actions,
.eko-ui-v3 .eko-ui-demo-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}

.eko-ui-v3 .eko-actions > form,
.eko-ui-v3 .eko-ui-action-form {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    width: auto;
    margin: 0;
    padding: 0;
}

.eko-ui-v3 .eko-ui-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 var(--eko-ui-action-size);
    width: var(--eko-ui-action-size);
    min-width: var(--eko-ui-action-size);
    max-width: var(--eko-ui-action-size);
    height: var(--eko-ui-action-size);
    min-height: var(--eko-ui-action-size);
    padding: 0;
    border: 1px solid var(--eko-ui-border-strong);
    border-radius: var(--eko-ui-action-radius);
    color: #344054;
    background: #fff;
    box-shadow: none;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    appearance: none;
    transition: transform var(--eko-ui-transition), background var(--eko-ui-transition), border-color var(--eko-ui-transition);
}

.eko-ui-v3 .eko-ui-action:hover,
.eko-ui-v3 .eko-ui-action:focus-visible {
    transform: translateY(-1px);
    outline: none;
}

.eko-ui-v3 .eko-ui-action .eko-ui-icon,
.eko-ui-v3 .eko-ui-action svg {
    display: block;
    flex: 0 0 auto;
    width: var(--eko-ui-action-icon-size);
    height: var(--eko-ui-action-icon-size);
}

.eko-ui-v3 .eko-ui-action--primary {
    color: #1557c0;
    border-color: #8bc8ff;
    background: #eff8ff;
}
.eko-ui-v3 .eko-ui-action--success {
    color: #08784b;
    border-color: #75e0a7;
    background: #ecfdf3;
}
.eko-ui-v3 .eko-ui-action--warning {
    color: #b54708;
    border-color: #fdb022;
    background: #fffaeb;
}
.eko-ui-v3 .eko-ui-action--danger {
    color: #b42318;
    border-color: #fda29b;
    background: #fff5f4;
}
.eko-ui-v3 .eko-ui-action--purple {
    color: #6938c6;
    border-color: #d6bbfb;
    background: #f9f5ff;
}

/* Tekstualna dugmad ostaju odvojena od ikonice. */
.eko-ui-v3 .eko-btn {
    border-radius: 10px;
    transition: transform var(--eko-ui-transition), background var(--eko-ui-transition);
}

/* ========================================================================== */
/* 09. STATUSI I BADGEVI                                                       */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    max-width: 100%;
    min-height: 34px;
    padding: 7px 14px;
    border: 1px solid transparent;
    border-radius: var(--eko-ui-radius-pill);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    white-space: normal;
}

.eko-ui-v3 .eko-ui-badge--neutral { color: #475467; background: #f2f4f7; border-color: #e4e7ec; }
.eko-ui-v3 .eko-ui-badge--primary { color: #175cd3; background: #eff8ff; border-color: #b2ddff; }
.eko-ui-v3 .eko-ui-badge--success { color: #067647; background: #ecfdf3; border-color: #abefc6; }
.eko-ui-v3 .eko-ui-badge--warning { color: #b54708; background: #fffaeb; border-color: #fedf89; }
.eko-ui-v3 .eko-ui-badge--danger { color: #b42318; background: #fef3f2; border-color: #fecdca; }
.eko-ui-v3 .eko-ui-badge--purple { color: #6941c6; background: #f9f5ff; border-color: #e9d7fe; }

/* ========================================================================== */
/* 10. FORME, FILTERI I PRETRAGA                                               */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-filter-bar {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) minmax(170px, 240px) auto;
    align-items: center;
    gap: 10px;
    padding: 14px;
    background: var(--eko-ui-surface);
    border: 1px solid var(--eko-ui-border);
    border-radius: var(--eko-ui-radius-md);
}

.eko-ui-v3 .eko-ui-search-field {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    min-height: 46px;
    padding: 0 13px;
    background: #fff;
    border: 1px solid var(--eko-ui-border);
    border-radius: 10px;
    color: var(--eko-ui-muted);
}

.eko-ui-v3 .eko-ui-search-field input {
    width: 100%;
    min-width: 0;
    height: 44px;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
}

.eko-ui-v3 .eko-ui-filter-bar select,
.eko-ui-v3 .eko-form-grid input,
.eko-ui-v3 .eko-form-grid select,
.eko-ui-v3 .eko-form-grid textarea {
    border-color: var(--eko-ui-border-strong);
    border-radius: 10px;
}

/* ========================================================================== */
/* 11. TABELE I MOBILNE KARTICE                                                */
/* ========================================================================== */

.eko-ui-v3 .eko-table-wrap {
    border-radius: var(--eko-ui-radius-md);
}

.eko-ui-v3 .eko-table th {
    color: #5f6c7b;
    font-size: 11px;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.eko-ui-v3 .eko-table td,
.eko-ui-v3 .eko-table th {
    border-color: #e9edf1;
}

/* ========================================================================== */
/* 12. PROJEKTI U IZRADI                                                       */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-record-card {
    position: relative;
    padding: 22px;
    overflow: hidden;
}

.eko-ui-v3 .eko-ui-record-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: var(--eko-ui-border-strong);
}

.eko-ui-v3 .eko-ui-record-card--danger {
    background: #fff9f8;
}
.eko-ui-v3 .eko-ui-record-card--danger::before { background: #e6332a; }

.eko-ui-v3 .eko-ui-record-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.eko-ui-v3 .eko-ui-record-card__header small,
.eko-ui-v3 .eko-ui-record-card__header strong {
    display: block;
}

.eko-ui-v3 .eko-ui-record-card__header small {
    color: var(--eko-ui-muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
}

.eko-ui-v3 .eko-ui-record-card__header strong {
    margin-top: 5px;
    font-size: 24px;
}

.eko-ui-v3 .eko-ui-record-card__title {
    margin: 16px 0;
    font-size: 21px;
    line-height: 1.35;
}

.eko-ui-v3 .eko-ui-record-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
    border-top: 1px solid var(--eko-ui-border);
    border-left: 1px solid var(--eko-ui-border);
}

.eko-ui-v3 .eko-ui-record-grid > div {
    min-width: 0;
    padding: 13px;
    border-right: 1px solid var(--eko-ui-border);
    border-bottom: 1px solid var(--eko-ui-border);
}

.eko-ui-v3 .eko-ui-record-grid dt {
    color: var(--eko-ui-muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.eko-ui-v3 .eko-ui-record-grid dd {
    margin: 6px 0 0;
    overflow-wrap: anywhere;
    font-size: 15px;
}

.eko-ui-v3 .eko-ui-record-card__actions {
    margin-top: 16px;
}

/* ========================================================================== */
/* 13. ISPORUKE                                                                */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-delivery-card {
    padding: 22px;
}

.eko-ui-v3 .eko-ui-delivery-card > header,
.eko-ui-v3 .eko-ui-delivery-card > footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.eko-ui-v3 .eko-ui-delivery-card > header small,
.eko-ui-v3 .eko-ui-delivery-card > header strong {
    display: block;
}

.eko-ui-v3 .eko-ui-delivery-card > header small {
    color: var(--eko-ui-muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .08em;
}

.eko-ui-v3 .eko-ui-delivery-card > header strong {
    margin-top: 5px;
    font-size: 20px;
}

.eko-ui-v3 .eko-ui-delivery-card__meta {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin: 18px 0;
}

.eko-ui-v3 .eko-ui-delivery-card__meta span,
.eko-ui-v3 .eko-ui-delivery-card__truck {
    padding: 12px;
    border: 1px solid var(--eko-ui-border);
    border-radius: 10px;
    background: var(--eko-ui-surface-soft);
}

.eko-ui-v3 .eko-ui-delivery-card__meta b,
.eko-ui-v3 .eko-ui-delivery-card__truck strong,
.eko-ui-v3 .eko-ui-delivery-card__truck span {
    display: block;
}

.eko-ui-v3 .eko-ui-delivery-card__meta b {
    margin-bottom: 4px;
    color: var(--eko-ui-muted);
    font-size: 10px;
    text-transform: uppercase;
}

.eko-ui-v3 .eko-ui-delivery-card__truck {
    display: grid;
    grid-template-columns: 140px 1fr;
    gap: 12px;
    margin-top: 8px;
}

.eko-ui-v3 .eko-ui-delivery-card > footer {
    justify-content: flex-start;
    margin-top: 16px;
}

/* ========================================================================== */
/* 14. GRAFIKONI                                                               */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-bar-chart {
    padding: 12px 22px 20px;
}

.eko-ui-v3 .eko-ui-bar-row {
    position: relative;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) 48px;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 38px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--eko-ui-text);
    text-align: left;
    cursor: pointer;
}

.eko-ui-v3 .eko-ui-bar-row > span {
    color: var(--eko-ui-muted);
}

.eko-ui-v3 .eko-ui-bar-row > i {
    display: block;
    height: 8px;
    overflow: hidden;
    border-radius: 5px;
    background: #edf1f5;
}

.eko-ui-v3 .eko-ui-bar-row > i > b {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #2f8ef5;
}

.eko-ui-v3 .eko-ui-bar-row > em {
    font-style: normal;
    text-align: right;
}

.eko-ui-v3 .eko-ui-bar-row::after {
    content: attr(data-label);
    position: absolute;
    z-index: 20;
    left: 50%;
    bottom: calc(100% - 2px);
    display: none;
    transform: translateX(-50%);
    padding: 8px 11px;
    border-radius: 8px;
    background: #101828;
    color: #fff;
    box-shadow: var(--eko-ui-shadow-md);
    font-size: 12px;
    white-space: nowrap;
}

.eko-ui-v3 .eko-ui-bar-row:hover::after,
.eko-ui-v3 .eko-ui-bar-row:focus-visible::after,
.eko-ui-v3 .eko-ui-bar-row.is-active::after {
    display: block;
}

/* ========================================================================== */
/* 15. PRAZNA / LOADING / ERROR STANJA                                         */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 160px;
    padding: 22px;
    border: 1px dashed var(--eko-ui-border-strong);
    border-radius: var(--eko-ui-radius-md);
    background: var(--eko-ui-surface-soft);
    text-align: center;
}

.eko-ui-v3 .eko-ui-empty__icon {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    margin-bottom: 10px;
    border-radius: 50%;
    color: var(--eko-ui-primary);
    background: var(--eko-ui-primary-soft);
}

.eko-ui-v3 .eko-ui-empty p {
    margin: 6px 0 0;
    color: var(--eko-ui-muted);
}

.eko-ui-v3 .eko-ui-empty--error {
    background: var(--eko-ui-danger-soft);
    border-color: #fecdca;
}

.eko-ui-v3 .eko-ui-spinner {
    width: 34px;
    height: 34px;
    margin-bottom: 12px;
    border: 3px solid #dce6ef;
    border-top-color: var(--eko-ui-primary);
    border-radius: 50%;
    animation: eko-ui-spin .8s linear infinite;
}

@keyframes eko-ui-spin { to { transform: rotate(360deg); } }

/* ========================================================================== */
/* 16. KOMPONENTNI KATALOG                                                     */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-catalog-head .eko-ui-badge {
    flex: 0 0 auto;
}

.eko-ui-v3 .eko-ui-catalog-nav {
    position: sticky;
    z-index: 30;
    top: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 16px;
    padding: 10px;
    background: rgba(255, 255, 255, .94);
    border: 1px solid var(--eko-ui-border);
    border-radius: 12px;
    box-shadow: var(--eko-ui-shadow-sm);
    backdrop-filter: blur(10px);
}

.eko-ui-v3 .eko-ui-catalog-nav a {
    padding: 7px 10px;
    border-radius: 8px;
    color: var(--eko-ui-primary);
    text-decoration: none;
    font-size: 12px;
    font-weight: 750;
}

.eko-ui-v3 .eko-ui-catalog-nav a:hover {
    background: var(--eko-ui-primary-soft);
}

.eko-ui-v3 .eko-ui-catalog-section {
    margin-bottom: 18px;
    padding: 22px;
    scroll-margin-top: 76px;
}

.eko-ui-v3 .eko-ui-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.eko-ui-v3 .eko-ui-section-heading h2,
.eko-ui-v3 .eko-ui-section-heading p {
    margin: 0;
}

.eko-ui-v3 .eko-ui-section-heading p {
    margin-top: 5px;
    color: var(--eko-ui-muted);
}

.eko-ui-v3 .eko-ui-token-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.eko-ui-v3 .eko-ui-token {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 4px 10px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--eko-ui-border);
    border-radius: 10px;
}

.eko-ui-v3 .eko-ui-token i {
    grid-row: 1 / 3;
    display: block;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 9px;
}

.eko-ui-v3 .eko-ui-token code {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eko-ui-v3 .eko-ui-code-note {
    margin-top: 14px;
    padding: 12px 14px;
    border-left: 3px solid var(--eko-ui-primary);
    border-radius: 8px;
    background: var(--eko-ui-primary-soft);
}

.eko-ui-v3 .eko-ui-state-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

/* ========================================================================== */
/* 17. KOMPATIBILNOST POSTOJEĆIH PORTAL KOMPONENTI                             */
/* ========================================================================== */

/* Akcione ikonice iz verzija 2.x. Ovaj blok omogućava da različiti HTML
 * elementi (<a>, <button>, form > button) izgledaju identično.
 */
.eko-ui-v3 :is(
    .eko-v263-icon,
    .eko-v264-icon,
    .eko-v2511-icon-button,
    .eko-v2512-action-icon,
    .eko-v261-icon-action,
    .eko-v271-accepted-icon,
    .eko-v272-reopen-icon
) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 var(--eko-ui-action-size) !important;
    width: var(--eko-ui-action-size) !important;
    min-width: var(--eko-ui-action-size) !important;
    max-width: var(--eko-ui-action-size) !important;
    height: var(--eko-ui-action-size) !important;
    min-height: var(--eko-ui-action-size) !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 11px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    appearance: none !important;
}

.eko-ui-v3 :is(
    .eko-v263-icon,
    .eko-v264-icon,
    .eko-v2511-icon-button,
    .eko-v2512-action-icon,
    .eko-v261-icon-action,
    .eko-v271-accepted-icon,
    .eko-v272-reopen-icon
) svg {
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    flex: 0 0 auto !important;
}

.eko-ui-v3 .eko-actions > form {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    margin: 0 !important;
}

/* Badge/status bridge. Pozadina ne sme da se rasteže do desne ivice. */
.eko-ui-v3 :is(
    .eko-deadline-badge,
    .eko-v230-status,
    .eko-v230-type,
    .eko-v2511-status,
    .eko-v2512-status,
    .eko-v260-status,
    .eko-v261-status
) {
    width: fit-content !important;
    max-width: 100% !important;
}

/* Faza projekta: boja prati samo tekst, ne celu ćeliju. */
.eko-ui-v3 td[data-label="Faza"] > :is(span, strong, div):not(.eko-actions),
.eko-ui-v3 .eko-phase-badge,
.eko-ui-v3 .eko-v2511-phase-badge {
    width: fit-content !important;
    max-width: 100% !important;
}

/* Stari KPI gridovi ostaju čitljivi na stranicama koje još nisu migrirane. */
.eko-ui-v3 :is(.eko-cards, .eko-cards-3, .eko-cards-4) {
    gap: var(--eko-ui-card-gap);
}

/* Proizvodnja: select/sačuvaj i sledeća faza ne smeju da se preklapaju. */
.eko-ui-v3 .eko-v251-phase-actions {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    min-width: 0 !important;
    width: 100% !important;
}

.eko-ui-v3 .eko-v251-phase-actions > form {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    margin: 0 !important;
}

.eko-ui-v3 .eko-v251-phase-actions > .eko-phase-form {
    display: grid !important;
    grid-template-columns: minmax(130px, 1fr) var(--eko-ui-action-size) !important;
    gap: 8px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.eko-ui-v3 .eko-v251-phase-actions select {
    width: 100% !important;
    min-width: 0 !important;
}

/* Grafikon 2.x: tanak bar, bez dodatnog vizuelnog zadebljanja. */
.eko-ui-v3 .eko-v2511-month-row > div {
    height: 8px !important;
    min-height: 8px !important;
    border-radius: 5px !important;
}

.eko-ui-v3 .eko-v2511-month-row > div > i {
    height: 8px !important;
    min-height: 8px !important;
    border-radius: 5px !important;
}

.eko-ui-v3 .eko-v2511-dual-bars > i {
    height: 6px !important;
    min-height: 6px !important;
    border-radius: 4px !important;
}

.eko-ui-v3 .eko-v267-chart-tip {
    display: none !important;
}

/* ========================================================================== */
/* 18. RESPONSIVE — TABLET                                                     */
/* ========================================================================== */

@media (max-width: 1280px) {
    .eko-ui-v3 .eko-ui-kpi-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .eko-ui-v3 .eko-attention-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1050px) {
    .eko-ui-v3 .eko-ui-kpi-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .eko-ui-v3 .eko-phase-grid,
    .eko-ui-v3 .eko-v2511-dashboard-phase-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .eko-ui-v3 .eko-ui-token-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .eko-ui-v3 .eko-ui-record-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .eko-ui-v3 .eko-ui-delivery-card__meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
    .eko-ui-v3 .eko-ui-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .eko-ui-v3 .eko-ui-filter-bar { grid-template-columns: 1fr 1fr; }
    .eko-ui-v3 .eko-ui-filter-bar .eko-ui-search-field { grid-column: 1 / -1; }
}

/* ========================================================================== */
/* 19. RESPONSIVE — TELEFON                                                    */
/* ========================================================================== */

@media (max-width: 760px) {
    :root {
        --eko-ui-page-gap: 8px;
        --eko-ui-card-gap: 10px;
        --eko-ui-card-padding: 14px;
        --eko-ui-action-size: 36px;
        --eko-ui-action-icon-size: 17px;
    }

    .eko-ui-v3 .eko-app {
        width: calc(100% - 16px) !important;
        max-width: none !important;
        margin: 0 8px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .eko-ui-v3 .eko-page-head {
        align-items: stretch !important;
        gap: 10px;
        padding-inline: 0 !important;
    }

    .eko-ui-v3 .eko-page-head h1 {
        font-size: 25px;
    }

    .eko-ui-v3 .eko-ui-kpi-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .eko-ui-v3 .eko-ui-kpi-card {
        min-height: 0;
        padding: 18px;
    }

    .eko-ui-v3 .eko-ui-kpi-card__value {
        margin-top: 10px;
        font-size: clamp(32px, 10vw, 46px);
    }

    .eko-ui-v3 .eko-ui-kpi-card__description {
        margin-top: 12px;
        padding-top: 0;
    }

    .eko-ui-v3 .eko-phase-grid,
    .eko-ui-v3 .eko-v2511-dashboard-phase-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .eko-ui-v3 .eko-attention-grid,
    .eko-ui-v3 .eko-ui-token-grid,
    .eko-ui-v3 .eko-ui-state-grid {
        grid-template-columns: 1fr;
    }

    .eko-ui-v3 .eko-panel-head {
        align-items: flex-start;
        padding: 16px;
    }

    .eko-ui-v3 .eko-panel-head > a {
        flex: 0 0 auto;
    }

    .eko-ui-v3 .eko-actions {
        flex-wrap: nowrap !important;
        gap: 8px !important;
        max-width: 100%;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scrollbar-width: none;
    }

    .eko-ui-v3 .eko-actions::-webkit-scrollbar { display: none; }

    /* Mobilna tabela-kartica: labela levo, sadržaj desno. */
    .eko-ui-v3 :is(.eko-v263-cards, .eko-v264-mobile-cards) td[data-label="Akcija"],
    .eko-ui-v3 :is(.eko-v263-cards, .eko-v264-mobile-cards) td[data-label="Akcije"] {
        display: grid !important;
        grid-template-columns: minmax(92px, 31%) minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 9px !important;
        overflow: visible !important;
    }

    .eko-ui-v3 :is(.eko-v263-cards, .eko-v264-mobile-cards) td[data-label="Akcija"]::before,
    .eko-ui-v3 :is(.eko-v263-cards, .eko-v264-mobile-cards) td[data-label="Akcije"]::before {
        width: auto !important;
        flex: none !important;
        margin: 0 !important;
    }

    .eko-ui-v3 :is(.eko-v263-cards, .eko-v264-mobile-cards) td[data-label="Akcija"] > .eko-actions,
    .eko-ui-v3 :is(.eko-v263-cards, .eko-v264-mobile-cards) td[data-label="Akcije"] > .eko-actions {
        display: flex !important;
        min-width: 0 !important;
        width: 100% !important;
    }

    .eko-ui-v3 .eko-v251-phase-actions {
        overflow-x: auto !important;
    }

    .eko-ui-v3 .eko-v251-phase-actions > .eko-phase-form {
        grid-template-columns: minmax(120px, 1fr) var(--eko-ui-action-size) !important;
    }

    .eko-ui-v3 .eko-v251-phase-actions input[name="production_update_note"] {
        display: none !important;
    }

    .eko-ui-v3 .eko-ui-filter-bar {
        grid-template-columns: 1fr;
        padding: 10px;
    }

    .eko-ui-v3 .eko-ui-filter-bar .eko-ui-search-field {
        grid-column: auto;
    }

    .eko-ui-v3 .eko-ui-record-card,
    .eko-ui-v3 .eko-ui-delivery-card,
    .eko-ui-v3 .eko-ui-catalog-section {
        padding: 16px;
    }

    .eko-ui-v3 .eko-ui-record-grid,
    .eko-ui-v3 .eko-ui-delivery-card__meta {
        grid-template-columns: 1fr;
    }

    .eko-ui-v3 .eko-ui-record-card__header,
    .eko-ui-v3 .eko-ui-delivery-card > header {
        align-items: flex-start;
    }

    .eko-ui-v3 .eko-ui-delivery-card__truck {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .eko-ui-v3 .eko-ui-catalog-nav {
        top: 68px;
        flex-wrap: nowrap;
        overflow-x: auto;
    }

    .eko-ui-v3 .eko-ui-bar-row {
        grid-template-columns: 42px minmax(0, 1fr) 40px;
        gap: 9px;
    }
}

@media (max-width: 390px) {
    .eko-ui-v3 .eko-phase-grid,
    .eko-ui-v3 .eko-v2511-dashboard-phase-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ========================================================================== */
/* 20. UI 3.0.2 — GLOBALNA TEKSTUALNA DUGMAD                                  */
/* ========================================================================== */
/*
 * MENJAJ OVDE:
 * - visina:     --eko-ui-button-height
 * - horizontalni padding: --eko-ui-button-padding-x
 * - radius:     --eko-ui-button-radius
 *
 * Ikonica i labela svake akcije menjaju se u includes/ui/registry/actions.php.
 */

.eko-ui-v3 .eko-ui-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: var(--eko-ui-button-height);
    padding: 0 var(--eko-ui-button-padding-x);
    border: 1px solid var(--eko-ui-border-strong);
    border-radius: var(--eko-ui-button-radius);
    background: var(--eko-ui-surface);
    color: var(--eko-ui-text);
    font-size: 13px;
    font-weight: 750;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    appearance: none;
    transition: transform var(--eko-ui-transition), background var(--eko-ui-transition), border-color var(--eko-ui-transition);
}

.eko-ui-v3 .eko-ui-button:hover,
.eko-ui-v3 .eko-ui-button:focus-visible {
    transform: translateY(-1px);
    outline: none;
}

.eko-ui-v3 .eko-ui-button svg {
    flex: 0 0 auto;
    width: var(--eko-ui-action-icon-size);
    height: var(--eko-ui-action-icon-size);
}

.eko-ui-v3 .eko-ui-button--primary { color: #fff; background: var(--eko-ui-primary); border-color: var(--eko-ui-primary); }
.eko-ui-v3 .eko-ui-button--success { color: #fff; background: var(--eko-ui-success); border-color: var(--eko-ui-success); }
.eko-ui-v3 .eko-ui-button--warning { color: #8b4300; background: var(--eko-ui-warning-soft); border-color: #fdb022; }
.eko-ui-v3 .eko-ui-button--danger { color: #b42318; background: var(--eko-ui-danger-soft); border-color: #fda29b; }
.eko-ui-v3 .eko-ui-button--purple { color: #6941c6; background: var(--eko-ui-purple-soft); border-color: #d6bbfb; }
.eko-ui-v3 .eko-ui-button--neutral { color: #344054; background: #fff; border-color: var(--eko-ui-border-strong); }
.eko-ui-v3 .eko-ui-button--link { min-height: 0; padding: 4px 2px; border: 0; background: transparent; color: var(--eko-ui-primary); }

/* ========================================================================== */
/* 21. UI 3.0.2 — LISTE STVARNIH KARTICA                                      */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-record-list {
    display: grid;
    gap: 12px;
    margin: 0 0 22px;
}

.eko-ui-v3 .eko-ui-record-card {
    padding: 18px 20px;
}

.eko-ui-v3 .eko-ui-record-card--neutral { background: #fff; }
.eko-ui-v3 .eko-ui-record-card--warning { background: #fffcf5; }
.eko-ui-v3 .eko-ui-record-card--warning::before { background: #f59e0b; }
.eko-ui-v3 .eko-ui-record-card--success { background: #f7fdf9; }
.eko-ui-v3 .eko-ui-record-card--success::before { background: var(--eko-ui-success); }

/* ========================================================================== */
/* 22. UI 3.0.2 — POSLATA PONUDA                                              */
/* ========================================================================== */
/*
 * Ova komponenta se koristi i na pravoj stranici i u Tester katalogu.
 * Glavni grid možeš menjati bez diranja PHP-a.
 */

.eko-ui-v3 .eko-ui-sent-card {
    display: grid;
    grid-template-columns: minmax(110px, .75fr) minmax(250px, 2fr) minmax(130px, .9fr) minmax(105px, .75fr) minmax(130px, auto);
    align-items: center;
    gap: 16px;
    padding: 14px 16px;
}

.eko-ui-v3 .eko-ui-sent-card::before { width: 0; }

.eko-ui-v3 .eko-ui-sent-card > div {
    min-width: 0;
}

.eko-ui-v3 .eko-ui-sent-card small,
.eko-ui-v3 .eko-ui-project-card small {
    display: block;
    margin-bottom: 5px;
    color: var(--eko-ui-muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.eko-ui-v3 .eko-ui-sent-card strong,
.eko-ui-v3 .eko-ui-sent-card span {
    display: block;
    overflow-wrap: anywhere;
}

.eko-ui-v3 .eko-ui-sent-card__customer > span {
    margin-top: 3px;
    color: var(--eko-ui-muted);
    font-size: 12px;
}

.eko-ui-v3 .eko-ui-sent-card__actions .eko-actions,
.eko-ui-v3 .eko-ui-sent-card__pdf .eko-actions {
    flex-wrap: nowrap;
}

/* ========================================================================== */
/* 23. UI 3.0.2 — PROJEKAT U IZRADI                                           */
/* ========================================================================== */
/*
 * Jedna kartica, sektorske varijante:
 * .eko-ui-project-card--commercial_technical
 * .eko-ui-project-card--production
 * .eko-ui-project-card--nt
 * .eko-ui-project-card--finance
 * .eko-ui-project-card--admin
 */

.eko-ui-v3 .eko-ui-project-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 13px;
}

.eko-ui-v3 .eko-ui-project-card__header strong,
.eko-ui-v3 .eko-ui-project-card__header span,
.eko-ui-v3 .eko-ui-project-card__header em {
    display: block;
}

.eko-ui-v3 .eko-ui-project-card__header strong {
    font-size: 22px;
    line-height: 1.15;
}

.eko-ui-v3 .eko-ui-project-card__header span {
    margin-top: 4px;
    font-size: 18px;
    line-height: 1.28;
}

.eko-ui-v3 .eko-ui-project-card__header em {
    margin-top: 4px;
    color: var(--eko-ui-muted);
    font-size: 12px;
    font-style: normal;
}

.eko-ui-v3 .eko-ui-project-card__pdf {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px 0;
    border-top: 1px solid var(--eko-ui-border);
}

.eko-ui-v3 .eko-ui-project-card__pdf > small {
    flex: 0 0 115px;
    margin: 0;
}

.eko-ui-v3 .eko-ui-project-card .eko-ui-record-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-left: 0;
}

.eko-ui-v3 .eko-ui-project-card .eko-ui-record-grid > div {
    padding: 11px 12px;
    border-right: 0;
}

.eko-ui-v3 .eko-ui-project-card__actions {
    display: grid;
    grid-template-columns: 115px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding-top: 12px;
}

.eko-ui-v3 .eko-ui-project-card__actions > small { margin: 0; }

.eko-ui-v3 .eko-ui-phase-controls {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;
    min-width: 0;
}

.eko-ui-v3 .eko-ui-phase-form {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    margin: 0;
}

.eko-ui-v3 .eko-ui-phase-form select,
.eko-ui-v3 .eko-ui-phase-controls > select {
    min-width: 150px;
    height: var(--eko-ui-button-height);
    border: 1px solid var(--eko-ui-border-strong);
    border-radius: var(--eko-ui-button-radius);
}

/* ========================================================================== */
/* 24. UI 3.0.2 — KATALOG AKCIJA                                              */
/* ========================================================================== */

.eko-ui-v3 .eko-ui-action-catalog-grid,
.eko-ui-v3 .eko-ui-button-catalog-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 22px;
}

.eko-ui-v3 .eko-ui-action-demo {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--eko-ui-border);
    border-radius: 10px;
    background: var(--eko-ui-surface-soft);
}

.eko-ui-v3 .eko-ui-action-demo code {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eko-ui-v3 .eko-ui-variant-block {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--eko-ui-border);
}

/* ========================================================================== */
/* 25. UI 3.0.2 — RESPONSIVE STVARNIH KARTICA                                 */
/* ========================================================================== */

@media (max-width: 1120px) {
    .eko-ui-v3 .eko-ui-sent-card {
        grid-template-columns: minmax(100px, .8fr) minmax(220px, 1.8fr) minmax(120px, 1fr) minmax(100px, .8fr);
    }

    .eko-ui-v3 .eko-ui-sent-card__actions {
        grid-column: 1 / -1;
    }

    .eko-ui-v3 .eko-ui-action-catalog-grid,
    .eko-ui-v3 .eko-ui-button-catalog-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    /* Poslata ponuda: svako polje postaje jedan red labela / vrednost. */
    .eko-ui-v3 .eko-ui-sent-card {
        display: block;
        padding: 0 14px;
    }

    .eko-ui-v3 .eko-ui-sent-card > div {
        display: grid;
        grid-template-columns: minmax(96px, 31%) minmax(0, 1fr);
        align-items: center;
        gap: 0 10px;
        min-width: 0;
        padding: 0;
        border-bottom: 1px solid var(--eko-ui-border);
    }

    .eko-ui-v3 .eko-ui-sent-card > div:last-child {
        border-bottom: 0;
    }

    .eko-ui-v3 .eko-ui-sent-card > div > small {
        grid-column: 1;
        grid-row: 1 / span 5;
        margin: 0;
        padding: 12px 0;
        border: 0;
    }

    .eko-ui-v3 .eko-ui-sent-card > div > :not(small) {
        grid-column: 2;
        padding: 3px 0;
        border: 0;
    }

    .eko-ui-v3 .eko-ui-sent-card > div > :not(small):first-of-type {
        padding-top: 12px;
    }

    .eko-ui-v3 .eko-ui-sent-card > div > :not(small):last-child {
        padding-bottom: 12px;
    }

    .eko-ui-v3 .eko-ui-sent-card__customer,
    .eko-ui-v3 .eko-ui-sent-card__pdf,
    .eko-ui-v3 .eko-ui-sent-card__actions {
        padding: 0;
    }

    /* Projekat u izradi. */
    .eko-ui-v3 .eko-ui-project-card {
        padding: 14px;
    }

    .eko-ui-v3 .eko-ui-project-card__header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .eko-ui-v3 .eko-ui-project-card__header strong {
        font-size: 20px;
    }

    .eko-ui-v3 .eko-ui-project-card__header span {
        font-size: 17px;
    }

    .eko-ui-v3 .eko-ui-project-card__pdf,
    .eko-ui-v3 .eko-ui-project-card__actions,
    .eko-ui-v3 .eko-ui-project-card .eko-ui-record-grid {
        grid-template-columns: minmax(96px, 31%) minmax(0, 1fr);
    }

    .eko-ui-v3 .eko-ui-project-card__pdf {
        display: grid;
    }

    .eko-ui-v3 .eko-ui-project-card__pdf > small {
        flex: none;
    }

    .eko-ui-v3 .eko-ui-project-card .eko-ui-record-grid > div {
        display: contents;
    }

    .eko-ui-v3 .eko-ui-project-card .eko-ui-record-grid dt,
    .eko-ui-v3 .eko-ui-project-card .eko-ui-record-grid dd {
        padding: 11px 0;
        border-bottom: 1px solid var(--eko-ui-border);
    }

    .eko-ui-v3 .eko-ui-project-card .eko-ui-record-grid dd {
        margin: 0;
    }

    .eko-ui-v3 .eko-ui-project-card__actions .eko-actions {
        flex-wrap: wrap !important;
        overflow-x: visible;
    }

    .eko-ui-v3 .eko-ui-phase-controls {
        overflow-x: auto;
    }

    .eko-ui-v3 .eko-ui-action-catalog-grid,
    .eko-ui-v3 .eko-ui-button-catalog-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 390px) {
    .eko-ui-v3 .eko-ui-action-catalog-grid,
    .eko-ui-v3 .eko-ui-button-catalog-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================================================== */
/* D. STANJE AKCIJA                                                           */
/* ========================================================================== */
.eko-ui-v3 .eko-ui-action[aria-busy="true"],
.eko-ui-v3 .eko-ui-button[aria-busy="true"] {
    opacity: .68;
    cursor: wait;
}
