:root {
    --primary: #174d73;
    --primary-dark: #103851;
    --border: #d7e0e7;
    --background: #eef3f6;
    --row-alt: #f7fafc;
    --row-hover: #eaf2f7;
    --new-row: #d9f5df;
    --text: #1f2933;
    --muted: #687782;
    --success: #16803c;
    --danger: #b42318;
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    background: var(--background);
    color: var(--text);
    font-family: Arial, Helvetica, sans-serif;
}

.page {
    width: min(1500px, 96%);
    margin: 24px auto;
}

.header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 18px 22px;
    color: white;
    background: var(--primary);
    border-radius: 10px 10px 0 0;
}

.brand {
    display: flex;
    align-items: center;
    gap: 18px;
}

.logo {
    display: block;
    width: 210px;
    max-width: 34vw;
    height: auto;
    object-fit: contain;
}

h1 {
    margin: 0;
    font-size: 25px;
    letter-spacing: 0.2px;
}

.header-details {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 7px;
    font-size: 14px;
    opacity: 0.9;
}

.separator {
    opacity: 0.65;
}

.online-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 8px;
    font-weight: bold;
}

.online-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: #31d158;
    box-shadow: 0 0 7px rgba(49, 209, 88, 0.8);
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 18px;
}

.header-count {
    font-size: 14px;
    white-space: nowrap;
}

.button {
    display: inline-block;
    padding: 10px 15px;
    border: 0;
    border-radius: 6px;
    background: var(--primary);
    color: white;
    text-decoration: none;
    font-weight: bold;
    white-space: nowrap;
    cursor: pointer;
}

.button:hover {
    background: var(--primary-dark);
}

.button-light {
    background: white;
    color: var(--primary);
}

.button-light:hover {
    background: #edf4f8;
}
.stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(150px, 1fr));
    gap: 12px;
    padding: 14px;
    background: white;
    border-right: 1px solid var(--border);
    border-left: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}

.stat-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 15px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: #f8fbfd;
}

.stat-card strong {
    color: var(--primary);
    font-size: 22px;
}

.stat-label {
    color: var(--muted);
    font-size: 13px;
    font-weight: bold;
}

.quick-dates {
    display: flex;
    gap: 7px;
}

.quick-button {
    padding: 10px 13px;
    border: 1px solid #b8c5cf;
    border-radius: 6px;
    background: white;
    color: var(--primary);
    font-weight: bold;
    cursor: pointer;
}

.quick-button:hover,
.quick-button.active {
    border-color: var(--primary);
    background: var(--primary);
    color: white;
}
.toolbar {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    padding: 14px;
    background: white;
    border-right: 1px solid var(--border);
    border-left: 1px solid var(--border);
}

.date-group {
    display: flex;
    flex-direction: column;
    gap: 5px;
    color: var(--muted);
    font-size: 12px;
    font-weight: bold;
}

.date-filter,
.search {
    padding: 10px 12px;
    border: 1px solid #b8c5cf;
    border-radius: 6px;
    background: white;
    color: var(--text);
    font-size: 15px;
}

.date-filter {
    min-width: 155px;
}

.search {
    width: min(480px, 100%);
}

.toolbar-count {
    margin-left: auto;
    padding-bottom: 10px;
    color: var(--muted);
    font-size: 14px;
    white-space: nowrap;
}

.table-wrapper {
    overflow-x: auto;
    background: white;
    border: 1px solid var(--border);
    border-radius: 0 0 10px 10px;
}

.caller-table {
    border-radius: 0 0 10px 10px;
}

table {
    width: 100%;
    min-width: 980px;
    border-collapse: collapse;
}

th,
td {
    padding: 11px 12px;
    border-bottom: 1px solid var(--border);
    text-align: left;
    white-space: nowrap;
}

th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #dbe9f2;
    color: #173b53;
    font-size: 14px;
}

tbody tr:nth-child(even) {
    background: var(--row-alt);
}

tbody tr:hover {
    background: var(--row-hover);
}

.caller-link {
    color: var(--primary);
    font-weight: bold;
    text-decoration: none;
}

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

.status-ok {
    color: var(--success);
    font-weight: bold;
}

.status-error {
    color: var(--danger);
    font-weight: bold;
}

.new-record {
    animation: highlight 4s ease-out;
}

@keyframes highlight {
    0% {
        background: var(--new-row);
    }

    100% {
        background: transparent;
    }
}

.empty,
.error {
    padding: 34px;
    text-align: center;
    color: var(--muted);
}

.error {
    color: var(--danger);
}

.footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 18px;
    padding: 12px 4px 0;
    border-top: 1px solid var(--border);
    color: #6f7d89;
    font-size: 11px;
}

.footer strong {
    color: var(--primary);
}

@media (max-width: 850px) {
        .stats {
        grid-template-columns: repeat(2, minmax(130px, 1fr));
    }

    .quick-dates {
        width: 100%;
    }

    .quick-button {
        flex: 1;
    }
    .header,
    .toolbar,
    .header-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .brand {
        align-items: flex-start;
        flex-direction: column;
    }

    .logo {
        width: 180px;
        max-width: 100%;
    }

    .header-actions {
        gap: 10px;
    }

    .search {
        width: 100%;
    }

    .toolbar-count {
        margin-left: 0;
        padding-bottom: 0;
    }
}
.caller-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(180px, 1fr));
    gap: 12px;
    padding: 14px;
    background: white;
    border-right: 1px solid var(--border);
    border-left: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}

.caller-summary > div {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: #f8fbfd;
}

.caller-summary span {
    color: var(--muted);
    font-size: 12px;
    font-weight: bold;
}

.caller-summary strong {
    color: var(--primary);
    font-size: 18px;
}

@media (max-width: 850px) {
    .caller-summary {
        grid-template-columns: 1fr;
    }
}
.login-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px;
    background: var(--background);
}

.login-card {
    width: min(420px, 100%);
    padding: 28px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: white;
    box-shadow: 0 16px 40px rgba(16, 56, 81, 0.12);
}

.login-logo {
    display: block;
    width: 210px;
    max-width: 100%;
    margin: 0 auto 18px;
}

.login-card h1 {
    margin: 0;
    text-align: center;
    color: var(--primary);
    font-size: 24px;
}

.login-subtitle {
    margin: 8px 0 22px;
    text-align: center;
    color: var(--muted);
}

.login-card form {
    display: grid;
    gap: 16px;
}

.login-card label {
    display: grid;
    gap: 6px;
    color: var(--muted);
    font-size: 13px;
    font-weight: bold;
}

.login-card input {
    width: 100%;
    padding: 11px 12px;
    border: 1px solid #b8c5cf;
    border-radius: 6px;
    font-size: 15px;
}

.login-card input:focus {
    outline: 2px solid rgba(23, 77, 115, 0.18);
    border-color: var(--primary);
}

.login-button {
    width: 100%;
    margin-top: 4px;
}

.login-error {
    margin-bottom: 16px;
    padding: 10px 12px;
    border: 1px solid #f2b8b5;
    border-radius: 6px;
    background: #fff1f0;
    color: #b42318;
    font-size: 14px;
}

.logged-user {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    min-width: 150px;
}

.logged-user-name {
    color: #ffffff;
    font-size: 14px;
    font-weight: bold;
}

.logged-user-role {
    color: #ffffff;
    font-size: 11px;
    font-weight: bold;
    text-transform: uppercase;
    opacity: 0.75;
}

.logout-form {
    margin: 0;
}
.header-actions {
    gap: 18px;
}

.logged-user {
    margin-left: 8px;
}
.logged-user {
    padding-right: 4px;
}

.logout-form {
    margin-left: -4px;
}
.logged-user-name::before {
    content: "●";
    display: inline-block;
    margin-right: 7px;
    color: #ffffff;
    font-size: 9px;
    vertical-align: middle;
}

.logged-user-role {
    font-size: 10px;
    letter-spacing: 0.04em;
    opacity: 0.7;
}
.logout-form .button {
    background: #eef3f6;
    border-color: #c5d0d8;
    color: var(--primary);
}

.logout-form .button:hover {
    background: #e2e9ee;
}

#excel-button {
    background: #ffffff;
    border-color: #ffffff;
    color: var(--primary);
}
.header-actions {
    display: flex;
    align-items: center;
    gap: 20px;
}

.logged-user {
    min-width: 180px;
    text-align: right;
}
/* Hemoglobe Dashboard v2.4.1 Workflow UI */

.claim-button {
    padding: 7px 12px;
    border: 1px solid var(--primary);
    border-radius: 6px;
    background: var(--primary);
    color: #ffffff;
    font-size: 12px;
    font-weight: bold;
    cursor: pointer;
}

.claim-button:hover {
    opacity: 0.9;
}

.claim-button:disabled {
    cursor: wait;
    opacity: 0.6;
}

.workflow-cell {
    white-space: nowrap;
}

.workflow-badge {
    display: inline-block;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: bold;
}

.workflow-assigned {
    background: #e5f1fb;
    color: #1769aa;
}

.workflow-completed {
    background: #e3f5e8;
    color: #237a3b;
}

.workflow-problem {
    background: #fdebea;
    color: #b42318;
}

/* Hemoglobe Dashboard v2.4.2 Workflow UI */
.workflow-actions{display:flex;align-items:center;gap:7px}.workflow-action{padding:7px 10px;border:1px solid transparent;border-radius:6px;font-size:11px;font-weight:bold;cursor:pointer}.complete-button{border-color:#16803c;background:#16803c;color:#fff}.complete-button:hover{background:#116a31}.not-completed-button{border-color:#b42318;background:#fff;color:#b42318}.not-completed-button:hover{background:#fff1f0}.workflow-action:disabled{cursor:wait;opacity:.6}.workflow-not_completed{background:#fdebea;color:#b42318}.workflow-reason{display:block;margin-top:4px;color:var(--muted);font-size:10px;white-space:normal}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}.modal-backdrop{position:absolute;inset:0;background:rgba(16,56,81,.55)}.modal-dialog{position:relative;z-index:1;width:min(520px,100%);max-height:calc(100vh - 40px);overflow-y:auto;padding:22px;border-radius:12px;background:#fff;box-shadow:0 24px 60px rgba(16,56,81,.28)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.modal-header h2{margin:0;color:var(--primary);font-size:21px}.modal-close{padding:2px 8px;border:0;background:transparent;color:var(--muted);font-size:28px;line-height:1;cursor:pointer}.modal-field{display:grid;gap:7px;margin-bottom:16px;color:var(--muted);font-size:13px;font-weight:bold}.modal-field small{font-weight:normal}.modal-field select,.modal-field textarea{width:100%;padding:10px 12px;border:1px solid #b8c5cf;border-radius:6px;background:#fff;color:var(--text);font:inherit;font-weight:normal}.modal-field textarea{resize:vertical}.modal-error{margin-bottom:14px;padding:10px 12px;border:1px solid #f2b8b5;border-radius:6px;background:#fff1f0;color:#b42318;font-size:13px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.button-secondary{border:1px solid #c5d0d8;background:#eef3f6;color:var(--primary)}.button-secondary:hover{background:#e2e9ee}.button-danger{background:#b42318;color:#fff}.button-danger:hover{background:#8f1c14}.modal-open{overflow:hidden}@media(max-width:850px){.workflow-actions{align-items:stretch;flex-direction:column}.workflow-action{width:100%}.modal-actions{flex-direction:column-reverse}.modal-actions .button{width:100%}}


/* Hemoglobe Dashboard v2.4.3 Filters Build 001 */
.workflow-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:14px;padding:14px;border-right:1px solid var(--border);border-left:1px solid var(--border);border-top:1px solid var(--border);background:#f8fbfd}
.workflow-filter-group,.operator-filter-group{display:grid;gap:6px}
.workflow-filter-group{flex:1 1 720px}
.workflow-filter-label{color:var(--muted);font-size:12px;font-weight:bold}
.workflow-filter-buttons{display:flex;flex-wrap:wrap;gap:7px}
.workflow-filter-button{display:inline-flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #b8c5cf;border-radius:999px;background:#fff;color:var(--primary);font-size:12px;font-weight:bold;cursor:pointer}
.workflow-filter-button span{min-width:22px;padding:2px 6px;border-radius:999px;background:#eaf2f7;color:var(--primary);text-align:center;font-size:10px}
.workflow-filter-button:hover,.workflow-filter-button.active{border-color:var(--primary);background:var(--primary);color:#fff}
.workflow-filter-button.active span,.workflow-filter-button:hover span{background:rgba(255,255,255,.18);color:#fff}
.operator-filter{min-width:210px;padding:9px 11px;border:1px solid #b8c5cf;border-radius:6px;background:#fff;color:var(--text);font-size:13px}
.clear-workflow-filters{padding:9px 11px;border:1px solid #c5d0d8;border-radius:6px;background:#fff;color:var(--muted);font-size:12px;font-weight:bold;cursor:pointer}
.clear-workflow-filters:hover{border-color:var(--primary);color:var(--primary)}
@media(max-width:850px){.workflow-filters,.workflow-filter-buttons{align-items:stretch;flex-direction:column}.workflow-filter-button,.operator-filter,.clear-workflow-filters{width:100%}.workflow-filter-button{justify-content:space-between}}


/* Hemoglobe Dashboard v2.4.3 Filters Build 001 Rev.A */

.workflow-filters {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 18px 24px;
    padding: 18px;
    border: 1px solid #bdd2e0;
    border-top: 4px solid var(--primary);
    background:
        linear-gradient(
            180deg,
            #edf6fb 0%,
            #f8fbfd 100%
        );
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.workflow-filter-group {
    min-width: 0;
}

.workflow-filter-group::before {
    content: "Workflow";
    display: block;
    margin-bottom: 4px;
    color: var(--primary);
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.01em;
}

.workflow-filter-label {
    color: #496575;
    font-size: 12px;
    font-weight: 700;
}

.workflow-filter-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 8px;
}

.workflow-filter-button {
    min-height: 40px;
    padding: 9px 13px;
    border-width: 1px;
    border-style: solid;
    border-radius: 10px;
    background: #ffffff;
    font-size: 12px;
    font-weight: 800;
    box-shadow: 0 1px 2px rgba(16, 56, 81, 0.06);
    transition:
        transform 120ms ease,
        box-shadow 120ms ease,
        background 120ms ease,
        color 120ms ease;
}

.workflow-filter-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(16, 56, 81, 0.10);
}

.workflow-filter-button span {
    min-width: 26px;
    padding: 3px 7px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
}

/* Όλες */
.workflow-filter-button[data-workflow-filter="all"] {
    border-color: #174d73;
    color: #174d73;
}

.workflow-filter-button[data-workflow-filter="all"] span {
    background: #e2edf4;
    color: #174d73;
}

.workflow-filter-button[data-workflow-filter="all"].active {
    background: #174d73;
    color: #ffffff;
}

/* Εκκρεμεί */
.workflow-filter-button[data-workflow-filter="pending"] {
    border-color: #9aa9b5;
    color: #52616c;
}

.workflow-filter-button[data-workflow-filter="pending"] span {
    background: #edf1f4;
    color: #52616c;
}

.workflow-filter-button[data-workflow-filter="pending"].active {
    background: #687782;
    border-color: #687782;
    color: #ffffff;
}

/* Σε επεξεργασία */
.workflow-filter-button[data-workflow-filter="assigned"] {
    border-color: #5a9dce;
    color: #1769aa;
}

.workflow-filter-button[data-workflow-filter="assigned"] span {
    background: #e5f1fb;
    color: #1769aa;
}

.workflow-filter-button[data-workflow-filter="assigned"].active {
    background: #1769aa;
    border-color: #1769aa;
    color: #ffffff;
}

/* Ολοκληρώθηκε */
.workflow-filter-button[data-workflow-filter="completed"] {
    border-color: #63ad77;
    color: #237a3b;
}

.workflow-filter-button[data-workflow-filter="completed"] span {
    background: #e3f5e8;
    color: #237a3b;
}

.workflow-filter-button[data-workflow-filter="completed"].active {
    background: #237a3b;
    border-color: #237a3b;
    color: #ffffff;
}

/* Μη διεκπεραιώθηκε */
.workflow-filter-button[data-workflow-filter="problem"] {
    border-color: #df7b73;
    color: #b42318;
}

.workflow-filter-button[data-workflow-filter="problem"] span {
    background: #fdebea;
    color: #b42318;
}

.workflow-filter-button[data-workflow-filter="problem"].active {
    background: #b42318;
    border-color: #b42318;
    color: #ffffff;
}

.workflow-filter-button.active span {
    background: rgba(255, 255, 255, 0.22);
    color: #ffffff;
}

.operator-filter-group {
    min-width: 250px;
    padding: 12px;
    border: 1px solid #cbdbe5;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.78);
}

.operator-filter {
    width: 100%;
    min-width: 230px;
    min-height: 40px;
    margin-top: 6px;
    border-color: #9fb7c7;
    background: #ffffff;
    font-weight: 700;
}

.clear-workflow-filters {
    grid-column: 2;
    justify-self: stretch;
    min-height: 38px;
    border-color: #9fb7c7;
    background: #ffffff;
    color: var(--primary);
}

.clear-workflow-filters:hover {
    background: #eaf2f7;
}

@media (max-width: 1000px) {
    .workflow-filters {
        grid-template-columns: 1fr;
    }

    .operator-filter-group,
    .clear-workflow-filters {
        grid-column: 1;
        width: 100%;
    }

    .operator-filter {
        min-width: 0;
    }
}

@media (max-width: 850px) {
    .workflow-filters {
        padding: 14px;
    }

    .workflow-filter-buttons {
        gap: 8px;
    }

    .workflow-filter-button {
        width: 100%;
        justify-content: space-between;
    }
}


/* Hemoglobe Dashboard v2.4.3 Reopen Build 002 */

.problem-workflow {
    display: flex;
    align-items: center;
    gap: 10px;
}

.reopen-button {
    border-color: #9a6a00;
    background: #fff8df;
    color: #7a5200;
}

.reopen-button:hover {
    background: #f5e9b8;
}

.reopen-button:disabled {
    cursor: wait;
    opacity: 0.6;
}

@media (max-width: 850px) {
    .problem-workflow {
        align-items: stretch;
        flex-direction: column;
    }

    .reopen-button {
        width: 100%;
    }
}


/* Hemoglobe Dashboard v2.4.3 Terminology Build 003 */

.workflow-filter-button[data-workflow-filter="problem"] {
    min-width: 225px;
}

.problem-workflow .workflow-badge {
    max-width: 220px;
    white-space: normal;
    line-height: 1.25;
    text-align: center;
}

@media (max-width: 850px) {
    .workflow-filter-button[data-workflow-filter="problem"] {
        min-width: 0;
    }

    .problem-workflow .workflow-badge {
        max-width: none;
    }
}


/* Hemoglobe Dashboard v2.5.0 Admin Statistics Build 001 */

.statistics-toolbar {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    padding: 14px;
    border-right: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    border-left: 1px solid var(--border);
    background: #ffffff;
}

.statistics-access-note {
    margin-left: auto;
    padding: 9px 12px;
    border: 1px solid #c7d9e5;
    border-radius: 999px;
    background: #edf6fb;
    color: var(--primary);
    font-size: 12px;
    font-weight: bold;
}

.statistics-summary {
    display: grid;
    grid-template-columns:
        repeat(6, minmax(130px, 1fr));
    gap: 12px;
    padding: 14px;
    border-right: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    border-left: 1px solid var(--border);
    background: #f8fbfd;
}

.statistics-summary-card {
    display: grid;
    gap: 8px;
    padding: 15px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: #ffffff;
}

.statistics-summary-card span {
    color: var(--muted);
    font-size: 12px;
    font-weight: bold;
}

.statistics-summary-card strong {
    color: var(--primary);
    font-size: 23px;
}

.statistics-summary-card.statistics-success strong {
    color: var(--success);
}

.statistics-summary-card.statistics-problem strong {
    color: var(--danger);
}

.statistics-panel {
    padding: 16px 14px 0;
    border-right: 1px solid var(--border);
    border-left: 1px solid var(--border);
    background: #ffffff;
}

.statistics-panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.statistics-panel-heading h2 {
    margin: 0;
    color: var(--primary);
    font-size: 20px;
}

.statistics-panel-heading p {
    margin: 5px 0 0;
    color: var(--muted);
    font-size: 13px;
}

.statistics-table-wrapper {
    border-radius: 10px;
}

.statistics-table {
    min-width: 1100px;
}

.statistics-table td {
    vertical-align: middle;
}

.statistics-username {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 10px;
    font-weight: normal;
}

.statistics-value-success {
    color: var(--success);
    font-weight: bold;
}

.statistics-value-problem {
    color: var(--danger);
    font-weight: bold;
}

.statistics-rate {
    display: grid;
    gap: 5px;
    min-width: 125px;
}

.statistics-rate strong {
    color: var(--primary);
    font-size: 13px;
}

.statistics-rate-track {
    display: block;
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: #e5edf2;
}

.statistics-rate-fill {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--success);
}

@media (max-width: 1100px) {
    .statistics-summary {
        grid-template-columns:
            repeat(3, minmax(130px, 1fr));
    }
}

@media (max-width: 850px) {
    .statistics-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .statistics-access-note {
        margin-left: 0;
        text-align: center;
    }

    .statistics-summary {
        grid-template-columns:
            repeat(2, minmax(130px, 1fr));
    }
}

@media (max-width: 520px) {
    .statistics-summary {
        grid-template-columns: 1fr;
    }
}


/* Hemoglobe Dashboard v2.5.0 Admin Statistics Build 002 */
.greek-date-picker{position:relative}.greek-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:180px;min-height:40px;padding:9px 12px;border:1px solid #9fb7c7;border-radius:7px;background:#fff;color:var(--text);font-size:14px;font-weight:700;cursor:pointer}.greek-calendar{position:absolute;top:calc(100% + 8px);left:0;z-index:50;width:310px;padding:14px;border:1px solid #b8cbd7;border-radius:12px;background:#fff;box-shadow:0 16px 38px rgba(16,56,81,.18)}.greek-calendar-header{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;margin-bottom:12px;color:var(--primary);text-align:center}.calendar-nav-button,.calendar-today-button{border:1px solid #c6d5df;border-radius:7px;background:#f5f9fb;color:var(--primary);font-weight:800;cursor:pointer}.calendar-nav-button{width:36px;height:34px;font-size:22px}.calendar-today-button{padding:8px 12px}.greek-calendar-weekdays,.greek-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.greek-calendar-weekdays{margin-bottom:6px;color:var(--muted);font-size:11px;font-weight:800;text-align:center}.calendar-empty-day{min-height:34px}.calendar-day{min-height:34px;border:0;border-radius:7px;background:transparent;color:var(--text);font-weight:700;cursor:pointer}.calendar-day:hover{background:#eaf2f7;color:var(--primary)}.calendar-day.is-today{box-shadow:inset 0 0 0 1px var(--primary)}.calendar-day.is-selected{background:var(--primary);color:#fff}.greek-calendar-footer{display:flex;justify-content:flex-end;margin-top:12px}.statistics-live-panel{display:grid;gap:2px;margin-left:auto;padding:8px 12px;border:1px solid #c7d9e5;border-radius:10px;background:#f8fbfd;color:var(--muted);font-size:11px}.statistics-live-indicator{font-size:12px;font-weight:900}.statistics-live-indicator.is-live{color:var(--success)}.statistics-live-indicator.is-waiting{color:#a86f00}.statistics-live-indicator.is-error{color:var(--danger)}.statistics-assigned{border-top:4px solid #2e72a2}.statistics-progress{border-top:4px solid #d68a14}.statistics-success{border-top:4px solid var(--success)}.statistics-problem{border-top:4px solid var(--danger)}.statistics-reopened{border-top:4px solid #7754a8}.statistics-rate-card{border-top:4px solid #24876d}.statistics-rank{width:54px;text-align:center;font-size:18px;font-weight:900}.statistics-rate.rate-high .statistics-rate-fill{background:var(--success)}.statistics-rate.rate-medium .statistics-rate-fill{background:#d68a14}.statistics-rate.rate-low .statistics-rate-fill{background:var(--danger)}@media(max-width:850px){.statistics-live-panel{margin-left:0}.greek-calendar{width:min(310px,calc(100vw - 48px))}}

/* Click-to-copy prescription / approval numbers */
.copy-value {
    cursor: pointer;
    text-decoration: underline dotted;
    text-underline-offset: 3px;
    transition: opacity 0.15s ease;
}

.copy-value:hover {
    opacity: 0.65;
}

.copy-value.copied {
    font-weight: 600;
}

/* European date field with native calendar picker */
.date-picker-wrap {
    position: relative;
    display: flex;
    align-items: center;
    gap: 6px;
}

.date-picker-button {
    height: 42px;
    min-width: 44px;
    padding: 0 9px;
    border: 1px solid #b8c7d9;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
}

.date-picker-button:hover {
    background: #f4f7fa;
}

.date-picker-native {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}


/* Dashboard calendar: dates containing records */
.calendar-day {
    position: relative;
}

.calendar-day.has-records {
    font-weight: 900;
    color: var(--primary);
}

.calendar-day.has-records::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 3px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: currentColor;
    transform: translateX(-50%);
}

.calendar-day.has-records.is-selected {
    color: #fff;
}

.calendar-record-legend {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 10px;
    padding-top: 9px;
    border-top: 1px solid #e0e8ee;
    color: var(--muted);
    font-size: 11px;
    font-weight: 700;
}

.calendar-record-dot {
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: var(--primary);
}
