:root {
    --hiq-ink: #102a43;
    --hiq-muted: #52677b;
    --hiq-border: #c9d7e3;
    --hiq-surface: #ffffff;
    --hiq-soft: #f3f8fc;
    --hiq-soft-strong: #e7f0f7;
    --hiq-primary: #185a86;
    --hiq-primary-dark: #104569;
    --hiq-report-total-surface: #eef5fa;
    --hiq-report-total-border: #7ca5c1;
    --hiq-success: #187a4b;
    --hiq-danger: #a52b39;
    --hiq-warning: #8a5a00;
    --hiq-radius: 14px;
    --hiq-shadow: 0 4px 14px rgba(16, 42, 67, .09);
}

html,
body {
    font-family: var(--hiq-font-sans);
}

.hiq-workspace,
.hiq-account-workspace {
    box-sizing: border-box;
    width: min(1120px, calc(100% - 24px));
    margin: 18px auto 32px;
    color: var(--hiq-ink);
    font-size: var(--hiq-screen-body-size);
    line-height: var(--hiq-type-line-normal);
}

.hiq-account-workspace {
    width: min(720px, calc(100% - 24px));
}

.hiq-workspace *,
.hiq-account-workspace * {
    box-sizing: border-box;
}

.hiq-workspace-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
    padding: 17px 19px;
    border: 1px solid var(--hiq-border);
    border-radius: var(--hiq-radius);
    background: linear-gradient(135deg, #ffffff, var(--hiq-soft-strong));
    box-shadow: var(--hiq-shadow);
}

.hiq-workspace-heading {
    min-width: 0;
}

.hiq-workspace-eyebrow {
    display: block;
    margin-bottom: 3px;
    color: var(--hiq-primary);
    font-size: var(--hiq-type-caption-size);
    font-weight: var(--hiq-type-weight-strong);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.hiq-workspace-title {
    margin: 0;
    color: #0d2235;
    font-size: var(--hiq-screen-page-title-size);
    line-height: var(--hiq-type-line-compact);
}

.hiq-workspace-description {
    max-width: 70ch;
    margin: 7px 0 0;
    color: var(--hiq-muted);
    font-size: var(--hiq-screen-helper-size);
    line-height: var(--hiq-type-line-normal);
}

.hiq-workspace-actions,
.hiq-form-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.hiq-workspace-actions {
    justify-content: flex-end;
}

.hiq-panel {
    margin-bottom: 12px;
    overflow: hidden;
    border: 1px solid var(--hiq-border);
    border-radius: var(--hiq-radius);
    background: var(--hiq-surface);
    box-shadow: var(--hiq-shadow);
}

.hiq-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 46px;
    padding: 10px 14px;
    border-bottom: 1px solid var(--hiq-border);
    background: var(--hiq-soft);
    font-size: var(--hiq-screen-section-title-size);
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-panel-body {
    padding: 14px;
}

.hiq-panel-compact .hiq-panel-body {
    padding-block: 11px;
}

.hiq-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 12px;
}

.hiq-stat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
    gap: 8px;
}

.hiq-stat {
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid #d7e1e9;
    border-radius: 11px;
    background: var(--hiq-soft);
}

.hiq-stat span {
    display: block;
    color: var(--hiq-muted);
    font-size: var(--hiq-screen-stat-label-size);
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-stat strong {
    display: block;
    margin-top: 2px;
    overflow-wrap: anywhere;
    font-size: var(--hiq-screen-stat-value-size);
}

.hiq-field {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.hiq-field > label,
.hiq-field-label {
    color: var(--hiq-ink);
    font-size: var(--hiq-screen-label-size);
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-field input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),
.hiq-field select,
.hiq-field textarea,
.hiq-input-control {
    width: 100%;
    min-height: 44px;
    padding: 8px 10px;
    border: 1px solid #9fb1c0;
    border-radius: 9px;
    background: #fff;
    color: #111827;
    font: inherit;
}

.hiq-field textarea {
    min-height: 86px;
    resize: vertical;
}

.hiq-check {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    min-height: 40px;
    color: var(--hiq-ink);
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-check input {
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
}

.hiq-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 8px 13px;
    border: 1px solid #7c94a8;
    border-radius: 9px;
    background: #fff;
    color: var(--hiq-ink);
    font: inherit;
    font-size: var(--hiq-screen-body-size);
    font-weight: var(--hiq-type-weight-strong);
    line-height: var(--hiq-type-line-compact);
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

.hiq-action:hover,
.hiq-action:focus-visible {
    border-color: var(--hiq-primary);
    background: #eef6fb;
    color: var(--hiq-primary-dark);
}

.hiq-action-primary {
    border-color: var(--hiq-primary);
    background: var(--hiq-primary);
    color: #fff;
}

.hiq-action-primary:hover,
.hiq-action-primary:focus-visible {
    background: var(--hiq-primary-dark);
    color: #fff;
}

.hiq-action-danger {
    border-color: #d49aa2;
    background: #fff5f6;
    color: var(--hiq-danger);
}

.hiq-action[disabled],
.hiq-action[aria-disabled="true"] {
    opacity: .55;
    cursor: not-allowed;
}

.hiq-status,
.hiq-note,
.hiq-warning-note {
    margin-bottom: 12px;
    padding: 10px 13px;
    border: 1px solid #9bc8ad;
    border-radius: 10px;
    background: #eef9f2;
    color: #164936;
    font-weight: var(--hiq-type-weight-strong);
    line-height: var(--hiq-type-line-normal);
}

.hiq-note {
    border-color: var(--hiq-border);
    background: var(--hiq-soft);
    color: var(--hiq-muted);
    font-weight: var(--hiq-type-weight-medium);
}

.hiq-warning-note {
    border-color: #ddc17a;
    background: #fff9e8;
    color: #624400;
}

.hiq-muted-text {
    color: var(--hiq-muted);
    font-size: var(--hiq-screen-helper-size);
    line-height: var(--hiq-type-line-normal);
}

.hiq-location-summary {
    margin: 8px 0 0;
    color: inherit;
    font-weight: var(--hiq-type-weight-strong);
    line-height: var(--hiq-type-line-normal);
}

.hiq-location-toast {
    position: fixed;
    z-index: 1100;
    inset-inline-end: 18px;
    inset-block-end: 18px;
    width: min(420px, calc(100vw - 28px));
    border: 1px solid #7ca4c2;
    border-radius: 14px;
    padding: 12px 14px;
    background: #f8fbfe;
    color: #102f4a;
    box-shadow: 0 12px 30px rgb(15 52 82 / 22%);
}

.hiq-location-toast-form {
    display: none;
}

.hiq-location-toast-content {
    display: flex;
    align-items: center;
    gap: 10px;
}

.hiq-location-toast-copy {
    display: grid;
    flex: 1 1 auto;
    gap: 3px;
    min-width: 0;
    line-height: var(--hiq-type-line-normal);
}

.hiq-location-toast-copy a {
    width: fit-content;
    color: #0b5c91;
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-location-toast-copy small {
    color: var(--hiq-muted);
}

.hiq-location-toast-progress {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    border: 3px solid #bfd3e2;
    border-block-start-color: #0b5c91;
    border-radius: 50%;
    animation: hiq-location-toast-spin 0.9s linear infinite;
}

.hiq-location-toast-actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
}

.hiq-location-toast-secondary {
    flex: 0 0 auto;
    border: 1px solid #7ca4c2;
    border-radius: 9px;
    padding: 7px 10px;
    background: #fff;
    color: #164d73;
    font: inherit;
    font-weight: var(--hiq-type-weight-strong);
    cursor: pointer;
}

.hiq-location-toast-secondary:disabled {
    cursor: default;
    opacity: 0.55;
}

.hiq-location-handoff {
    max-width: 720px;
}

.hiq-location-handoff-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.hiq-location-handoff-copy {
    display: grid;
    gap: 6px;
    margin-top: 14px;
}

.hiq-location-handoff-copy > label {
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-location-handoff-copy-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hiq-location-handoff-copy-row > input {
    flex: 1 1 260px;
    min-width: 0;
    min-height: 42px;
    border: 1px solid #7ca4c2;
    border-radius: 10px;
    padding: 8px 12px;
    background: #fff;
    color: var(--hiq-ink);
    font: inherit;
}

.hiq-location-handoff-copy-button {
    min-height: 42px;
    border: 1px solid #7ca4c2;
    border-radius: 10px;
    padding: 8px 14px;
    background: #fff;
    color: #164d73;
    font: inherit;
    font-weight: var(--hiq-type-weight-strong);
    cursor: pointer;
}

.hiq-location-handoff-copy-status {
    min-height: 1.4em;
    color: var(--hiq-muted);
}

.hiq-location-handoff-open,
.hiq-location-handoff-return {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border: 1px solid #7ca4c2;
    border-radius: 10px;
    padding: 8px 14px;
    font-weight: var(--hiq-type-weight-strong);
    text-decoration: none;
}

.hiq-location-handoff-open {
    background: var(--hiq-primary);
    color: #fff;
}

.hiq-location-handoff-return {
    background: #fff;
    color: #164d73;
}

@keyframes hiq-location-toast-spin {
    to {
        transform: rotate(360deg);
    }
}

.hiq-disclosure {
    margin-top: 10px;
    border: 1px solid var(--hiq-border);
    border-radius: 11px;
    background: #fff;
}

.hiq-disclosure > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 44px;
    padding: 9px 12px;
    color: var(--hiq-primary-dark);
    font-size: var(--hiq-screen-body-size);
    font-weight: var(--hiq-type-weight-strong);
    cursor: pointer;
    list-style: none;
}

.hiq-disclosure > summary::-webkit-details-marker {
    display: none;
}

.hiq-disclosure > summary::after {
    content: "+";
    font-size: var(--hiq-type-compact-title-size);
    line-height: var(--hiq-type-line-compact);
}

.hiq-disclosure[open] > summary::after {
    content: "−";
}

.hiq-disclosure-body {
    display: grid;
    gap: 12px;
    padding: 12px;
    border-top: 1px solid var(--hiq-border);
    background: #fbfdff;
}

.hiq-data-table {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--hiq-type-label-size);
}

.hiq-data-table th,
.hiq-data-table td {
    padding: 9px 8px;
    border-bottom: 1px solid #e2e8ef;
    text-align: start;
    vertical-align: top;
}

.hiq-data-table th {
    background: var(--hiq-soft);
    color: #324b61;
    font-size: var(--hiq-type-caption-size);
    letter-spacing: .03em;
    text-transform: uppercase;
}

.hiq-chip {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 3px 8px;
    border-radius: 999px;
    background: #e8eef4;
    color: #334e68;
    font-size: var(--hiq-type-caption-size);
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-chip-success {
    background: #dff5e8;
    color: #14643d;
}

.hiq-chip-warning {
    background: #fff1bd;
    color: #6d4800;
}

.hiq-chip-danger {
    background: #fde5e8;
    color: #8d2632;
}

.hiq-authenticated-language {
    display: flex;
    align-items: center;
    margin-inline-start: auto;
}

.hiq-authenticated-language .hiq-language-selector {
    flex-wrap: nowrap;
    gap: 4px;
}

.hiq-authenticated-language .hiq-language-option {
    min-height: 38px;
    padding: 6px 9px;
    font-size: var(--hiq-type-meta-size);
}

html:lang(he) .hiq-workspace-eyebrow,
html:lang(he) .hiq-data-table th {
    letter-spacing: 0;
    text-transform: none;
}

@media (max-width: 700px) {
    .hiq-location-toast {
        inset-inline: 10px;
        inset-block-end: 10px;
        width: auto;
    }

    .hiq-workspace,
    .hiq-account-workspace {
        width: min(100% - 16px, 1120px);
        margin-top: 10px;
    }

    .hiq-workspace-header {
        display: grid;
        gap: 10px;
        padding: 14px;
    }

    .hiq-workspace-actions {
        justify-content: stretch;
    }

    .hiq-workspace-actions .hiq-action,
    .hiq-form-actions .hiq-action {
        flex: 1 1 145px;
    }

    .hiq-panel-body {
        padding: 11px;
    }

    .hiq-grid {
        grid-template-columns: 1fr;
    }

    .hiq-data-table,
    .hiq-data-table thead,
    .hiq-data-table tbody,
    .hiq-data-table tr,
    .hiq-data-table th,
    .hiq-data-table td {
        display: block;
    }

    .hiq-data-table thead {
        display: none;
    }

    .hiq-data-table tr {
        margin-bottom: 10px;
        padding: 8px 10px;
        border: 1px solid var(--hiq-border);
        border-radius: 11px;
        background: #fff;
    }

    .hiq-data-table td {
        padding: 6px 0;
        border: 0;
    }

    .hiq-data-table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 2px;
        color: var(--hiq-muted);
        font-size: var(--hiq-type-caption-size);
        font-weight: var(--hiq-type-weight-strong);
    }

    .hiq-authenticated-language .hiq-language-option {
        min-width: 42px;
        padding-inline: 7px;
    }
}

@media (max-width: 420px) {
    .hiq-authenticated-language .hiq-language-option {
        min-width: 38px;
        font-size: var(--hiq-type-caption-size);
    }
}

@media print {
    .hiq-workspace-actions,
    .hiq-authenticated-language,
    .hiq-location-toast,
    .hiq-disclosure > summary::after {
        display: none;
    }

    .hiq-panel,
    .hiq-workspace-header {
        box-shadow: none;
    }
}
.hiq-login-page {
    min-height: calc(100vh - 70px);
    display: grid;
    place-items: center;
    padding: 24px 16px;
    font-family: var(--hiq-font-sans);
    background:
        radial-gradient(circle at 50% 0%, #dbeafe 0, #f8fafc 46%, #e2e8f0 100%);
}

.hiq-login-shell {
    width: min(980px, 100%);
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    overflow: hidden;
    border: 1px solid #cbd5e1;
    border-radius: 28px;
    background: rgba(255,255,255,.97);
    box-shadow: 0 24px 70px rgba(15,23,42,.18);
}

.hiq-login-welcome {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(32px, 6vw, 64px);
    background:
        linear-gradient(145deg, rgba(22,75,122,.98), rgba(31,111,174,.94));
    color: white;
}

.hiq-login-brand {
    width: 100%;
    max-width: 520px;
}

.hiq-login-brand-image {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 16px;
}

.hiq-login-brand-mobile {
    display: none;
}

.hiq-login-tagline {
    margin-top: 16px;
    max-width: 520px;
    font-size: var(--hiq-type-page-title-size);
    line-height: var(--hiq-type-line-normal);
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-login-description {
    margin-top: 18px;
    max-width: 520px;
    color: #dbeafe;
    font-size: var(--hiq-type-body-size);
    line-height: var(--hiq-type-line-relaxed);
}

.hiq-login-content {
    padding: clamp(26px, 5vw, 48px);
}

.hiq-login-title {
    margin: 0;
    color: #111827;
    font-size: var(--hiq-type-page-title-size);
    line-height: var(--hiq-type-line-compact);
}

.hiq-login-subtitle {
    margin: 9px 0 24px;
    color: #475569;
    line-height: var(--hiq-type-line-relaxed);
}

.hiq-login-status {
    margin-bottom: 20px;
    padding: 15px 16px;
    border: 1px solid #60a5fa;
    border-radius: 14px;
    background: #eff6ff;
    color: #1e3a5f;
    font-weight: var(--hiq-type-weight-strong);
    line-height: var(--hiq-type-line-normal);
}

.hiq-login-errors {
    margin-bottom: 16px;
    color: #b91c1c;
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-login-field {
    margin-bottom: 16px;
}

.hiq-login-label {
    display: block;
    margin-bottom: 7px;
    color: #111827;
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-login-input {
    width: 100%;
    min-height: 54px;
    box-sizing: border-box;
    padding: 12px 14px;
    border: 1px solid #94a3b8;
    border-radius: 13px;
    background: white;
    color: #111827;
    font-size: var(--hiq-type-control-size);
}

.hiq-login-input:focus {
    outline: 3px solid rgba(59,130,246,.22);
    border-color: #2563eb;
}

.hiq-login-primary {
    width: 100%;
    min-height: 56px;
    border: 0;
    border-radius: 14px;
    background: linear-gradient(135deg, #1f6fae, #164b7a);
    color: white;
    font-size: var(--hiq-type-control-size);
    font-weight: var(--hiq-type-weight-strong);
    box-shadow: 0 8px 22px rgba(22,75,122,.24);
}

.hiq-login-primary:disabled {
    opacity: .65;
}

.hiq-login-note {
    margin-top: 13px;
    color: #64748b;
    font-size: var(--hiq-type-label-size);
    line-height: var(--hiq-type-line-normal);
    text-align: center;
}

.hiq-login-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 28px 0 18px;
    color: #64748b;
    font-size: var(--hiq-type-label-size);
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-login-divider::before,
.hiq-login-divider::after {
    content: "";
    height: 1px;
    flex: 1;
    background: #cbd5e1;
}

.hiq-password-section {
    border: 1px solid #dbe2ea;
    border-radius: 16px;
    background: #f8fafc;
    overflow: hidden;
}

.hiq-password-summary {
    padding: 16px;
    cursor: pointer;
    color: #334155;
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-password-body {
    padding: 0 16px 18px;
}

.hiq-password-row {
    display: flex;
    gap: 8px;
}

.hiq-password-row .hiq-login-input {
    flex: 1;
    min-width: 0;
}

.hiq-password-toggle {
    min-width: 76px;
    border: 1px solid #94a3b8;
    border-radius: 13px;
    background: white;
    color: #334155;
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-login-secondary {
    width: 100%;
    min-height: 50px;
    border: 1px solid #64748b;
    border-radius: 12px;
    background: white;
    color: #1e293b;
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-remember {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0;
    color: #334155;
    font-weight: var(--hiq-type-weight-strong);
}

@media (max-width: 800px) {
    .hiq-login-page {
        padding: 12px;
        align-items: start;
    }

    .hiq-login-shell {
        grid-template-columns: 1fr;
        border-radius: 21px;
    }

    .hiq-login-welcome {
        padding: 28px 24px;
    }

    .hiq-login-brand {
        max-width: 132px;
        margin: 0 auto;
    }

    .hiq-login-brand-wide {
        display: none;
    }

    .hiq-login-brand-mobile {
        display: block;
    }

    .hiq-login-description {
        display: none;
    }

    .hiq-login-content {
        padding: 26px 20px 30px;
    }
}
/* hiq-work-hub-navigation */
.hiq-work-hub-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 16px;
    padding: 6px;
    border: 1px solid #bfd2e4;
    border-radius: 14px;
    background: #edf5fc;
}

.hiq-work-hub-link {
    display: inline-flex;
    flex: 1 1 145px;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid transparent;
    border-radius: 10px;
    color: #164b7a;
    font-weight: var(--hiq-type-weight-strong);
    text-align: center;
    text-decoration: none;
}

.hiq-work-hub-link:hover {
    border-color: #7da4c4;
    background: #fff;
    color: #123f67;
}

.hiq-work-hub-link.is-current {
    border-color: #164b7a;
    background: #164b7a;
    color: #fff;
    box-shadow: 0 2px 6px rgba(15, 35, 55, .18);
}

@media (max-width: 640px) {
    .hiq-work-hub-nav {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hiq-work-hub-link {
        min-width: 0;
    }
}
/* /hiq-work-hub-navigation */

/* hiq-work-reports
   Reusable report presentation for the Work hub. Page markup supplies data;
   this shared layer owns typography, controls, calendar, responsive, and print. */
.hiq-reports-view,
.hiq-reports-view * {
    box-sizing: border-box;
    font-family: var(--hiq-font-sans);
}

.hiq-reports-view {
    font-size: var(--hiq-screen-body-size);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-kicker {
    font-size: var(--hiq-screen-stat-label-size);
    font-weight: var(--hiq-screen-weight-strong);
}

.hiq-reports-view .hiq-title {
    font-size: var(--hiq-screen-page-title-size);
    font-weight: var(--hiq-screen-weight-strong);
    line-height: var(--hiq-type-line-compact);
}

.hiq-reports-view .hiq-report-summary {
    margin-bottom: 18px;
}

.hiq-reports-view .hiq-report-summary-heading {
    margin-bottom: 12px;
}

.hiq-reports-view .hiq-report-print-context {
    display: none;
}

.hiq-reports-view .hiq-card-header .hiq-section-title > span:first-child,
.hiq-reports-view .hiq-report-summary-heading h2 {
    margin: 0;
    color: var(--hiq-ink);
    font-size: var(--hiq-screen-section-title-size);
    font-weight: var(--hiq-screen-weight-strong);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-report-summary-heading .hiq-export-button {
    min-width: 150px;
}

.hiq-reports-view .hiq-report-intro {
    margin-bottom: 12px;
    font-size: var(--hiq-screen-body-size);
    font-weight: var(--hiq-screen-weight-regular);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-report-period-controls {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    margin-bottom: 12px;
}

.hiq-reports-view .hiq-report-range-switch,
.hiq-reports-view .hiq-report-period-navigation {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.hiq-reports-view .hiq-report-period-controls a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 8px 14px;
    border: 1px solid var(--hiq-border);
    border-radius: 999px;
    background: #fff;
    color: var(--hiq-primary);
    font-size: var(--hiq-screen-body-size);
    font-weight: var(--hiq-screen-weight-strong);
    line-height: var(--hiq-type-line-normal);
    text-decoration: none;
}

.hiq-reports-view .hiq-report-period-controls a:hover,
.hiq-reports-view .hiq-report-period-controls a.active {
    border-color: var(--hiq-primary);
    background: var(--hiq-primary);
    color: #fff;
}

.hiq-reports-view .hiq-report-period-label {
    margin-top: 3px;
    color: var(--hiq-muted);
    font-size: var(--hiq-screen-helper-size);
    font-weight: var(--hiq-screen-weight-regular);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-live-summary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.hiq-reports-view .hiq-live-summary-grid .hiq-live-clock-card,
.hiq-reports-view .hiq-live-summary-grid .hiq-metric-card {
    border: 1px solid var(--hiq-border);
    border-radius: 14px;
    background: linear-gradient(180deg, #fff, var(--hiq-soft));
    box-shadow: var(--hiq-shadow);
}

.hiq-reports-view .hiq-metric-label,
.hiq-reports-view .hiq-personal-calendar-heading h3 {
    font-size: var(--hiq-screen-section-title-size);
    font-weight: var(--hiq-screen-weight-strong);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-big-number {
    font-size: var(--hiq-screen-metric-value-size);
    font-weight: var(--hiq-screen-weight-strong);
    line-height: var(--hiq-type-line-compact);
}

.hiq-reports-view .hiq-metric-card .hiq-muted {
    font-size: var(--hiq-screen-helper-size);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-quick-reports {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 0;
}

.hiq-reports-view .hiq-report-link {
    display: flex;
    min-height: 78px;
    padding: 10px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    border: 1px solid #b9c5d1;
    border-radius: 12px;
    background: #f6f9fc;
    color: var(--hiq-primary);
    text-align: center;
    text-decoration: none;
}

.hiq-reports-view .hiq-report-link:hover {
    background: #e9f2fb;
    color: var(--hiq-primary-dark);
}

.hiq-reports-view .hiq-report-link strong {
    font-size: var(--hiq-screen-body-size);
    font-weight: var(--hiq-screen-weight-strong);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-report-link span,
.hiq-reports-view .hiq-report-link small {
    font-size: var(--hiq-screen-helper-size);
    font-weight: var(--hiq-screen-weight-regular);
    line-height: var(--hiq-type-line-normal);
    opacity: .82;
}

.hiq-reports-view .hiq-personal-calendar {
    margin-top: 16px;
    overflow: hidden;
    border: 1px solid var(--hiq-border);
    border-radius: 14px;
    background: #fff;
}

.hiq-reports-view .hiq-personal-calendar-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--hiq-border);
    background: linear-gradient(135deg, #f8fbfe, var(--hiq-soft-strong));
}

.hiq-reports-view .hiq-personal-calendar-heading h3 {
    margin: 0 0 3px;
    color: var(--hiq-ink);
}

.hiq-reports-view .hiq-personal-calendar-heading p {
    margin: 0;
    color: var(--hiq-muted);
    font-size: var(--hiq-screen-helper-size);
    font-weight: var(--hiq-screen-weight-regular);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-personal-calendar-scroll {
    overflow-x: auto;
}

.hiq-reports-view .hiq-personal-calendar-table {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--hiq-type-helper-size);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-personal-calendar-table th,
.hiq-reports-view .hiq-personal-calendar-table td {
    padding: 12px 14px;
    border-bottom: 1px solid #e7ebf0;
    text-align: start;
    vertical-align: top;
}

.hiq-reports-view .hiq-personal-calendar-table thead th {
    background: #f3f6f9;
    color: #2e4153;
    font-size: var(--hiq-screen-label-size);
    font-weight: var(--hiq-screen-weight-strong);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-personal-calendar-table tbody tr:last-child > * {
    border-bottom: 0;
}

.hiq-reports-view .hiq-personal-calendar-table tfoot .hiq-report-total-row > *,
.hiq-week-table > .hiq-report-total-row > * {
    border-top: 2px solid var(--hiq-report-total-border);
    background: var(--hiq-report-total-surface);
    color: var(--hiq-primary-dark);
    font-weight: var(--hiq-screen-weight-strong);
}

.hiq-week-table > .hiq-report-total-row {
    background: var(--hiq-report-total-surface);
}

.hiq-reports-view .hiq-personal-calendar-table tr.hiq-calendar-today {
    background: #f0f8ff;
}

.hiq-reports-view .hiq-personal-calendar-table tr.hiq-calendar-empty {
    color: #6f7b86;
}

.hiq-reports-view .hiq-calendar-day {
    min-width: 150px;
}

.hiq-reports-view .hiq-calendar-day strong,
.hiq-reports-view .hiq-calendar-day span {
    display: inline;
}

.hiq-reports-view .hiq-calendar-day span {
    margin-inline-end: 8px;
    color: var(--hiq-muted);
    font-size: var(--hiq-type-meta-size);
    font-variant-numeric: tabular-nums;
}

.hiq-reports-view .hiq-calendar-today-label {
    display: inline-flex;
    margin-top: 5px;
    padding: 2px 7px;
    border-radius: 999px;
    background: var(--hiq-primary);
    color: #fff;
    font-size: var(--hiq-type-caption-size);
    font-style: normal;
    font-weight: var(--hiq-type-weight-strong);
    line-height: var(--hiq-type-line-compact);
}

.hiq-reports-view .hiq-calendar-worked {
    color: var(--hiq-primary);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.hiq-reports-view .hiq-calendar-events {
    min-width: 210px;
}

.hiq-reports-view .hiq-calendar-events summary {
    color: var(--hiq-primary);
    cursor: pointer;
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-reports-view .hiq-calendar-event-list {
    display: grid;
    gap: 6px;
    margin-top: 9px;
}

.hiq-reports-view .hiq-calendar-event {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr);
    gap: 7px;
    align-items: baseline;
    padding-top: 6px;
    border-top: 1px dashed #d7e0e8;
    font-size: var(--hiq-type-meta-size);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-calendar-event time {
    font-variant-numeric: tabular-nums;
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-reports-view .hiq-calendar-event small {
    grid-column: 1 / -1;
    color: var(--hiq-muted);
}

.hiq-reports-view .hiq-advanced-report {
    margin-top: 14px;
    overflow: hidden;
    border: 1px solid var(--hiq-border);
    border-radius: 14px;
    background: #f8fbff;
}

.hiq-reports-view .hiq-advanced-report > summary {
    display: flex;
    min-height: 56px;
    padding: 15px 17px;
    align-items: center;
    color: var(--hiq-primary);
    cursor: pointer;
    font-size: var(--hiq-screen-section-title-size);
    font-weight: var(--hiq-type-weight-strong);
    line-height: var(--hiq-type-line-normal);
    user-select: none;
}

.hiq-reports-view .hiq-advanced-report[open] > summary {
    border-bottom: 1px solid var(--hiq-border);
    background: #eef4fb;
}

.hiq-reports-view .hiq-export-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
    padding: 16px;
    align-items: end;
}

.hiq-reports-view .hiq-field {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.hiq-reports-view .hiq-field label {
    color: var(--hiq-ink);
    font-size: var(--hiq-type-label-size);
    font-weight: var(--hiq-type-weight-strong);
}

.hiq-reports-view .hiq-input,
.hiq-reports-view .hiq-select {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: 9px 10px;
    border: 1px solid #9fb1c0;
    border-radius: 9px;
    background: #fff;
    color: var(--hiq-ink);
    font-size: var(--hiq-type-helper-size);
    font-weight: var(--hiq-type-weight-medium);
    line-height: var(--hiq-type-line-normal);
}

.hiq-reports-view .hiq-export-actions {
    display: grid;
    grid-column: span 2;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.hiq-reports-view .hiq-advanced-report .hiq-muted {
    padding: 0 16px 16px;
    font-size: var(--hiq-type-meta-size);
    line-height: var(--hiq-type-line-normal);
}

@media (max-width: 1100px) {
    .hiq-reports-view .hiq-export-grid,
    .hiq-reports-view .hiq-quick-reports {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .hiq-reports-view .hiq-live-summary-grid,
    .hiq-reports-view .hiq-quick-reports,
    .hiq-reports-view .hiq-export-grid {
        grid-template-columns: 1fr;
    }

    .hiq-reports-view .hiq-export-actions {
        grid-column: span 1;
        grid-template-columns: 1fr;
    }

    .hiq-reports-view .hiq-report-period-controls {
        align-items: stretch;
        flex-direction: column;
    }

    .hiq-reports-view .hiq-report-range-switch,
    .hiq-reports-view .hiq-report-period-navigation {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hiq-reports-view .hiq-big-number {
        font-size: var(--hiq-type-page-title-size);
    }

    .hiq-reports-view .hiq-personal-calendar-heading {
        padding: 14px;
    }

    .hiq-reports-view .hiq-personal-calendar-table thead {
        display: none;
    }

    .hiq-reports-view .hiq-personal-calendar-table,
    .hiq-reports-view .hiq-personal-calendar-table tbody,
    .hiq-reports-view .hiq-personal-calendar-table tfoot,
    .hiq-reports-view .hiq-personal-calendar-table tr,
    .hiq-reports-view .hiq-personal-calendar-table th,
    .hiq-reports-view .hiq-personal-calendar-table td {
        display: block;
        width: 100%;
    }

    .hiq-reports-view .hiq-personal-calendar-table tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 12px;
        border-bottom: 1px solid var(--hiq-border);
    }

    .hiq-reports-view .hiq-personal-calendar-table th,
    .hiq-reports-view .hiq-personal-calendar-table td {
        min-width: 0;
        padding: 7px 8px;
        border: 0;
        font-size: var(--hiq-type-label-size);
    }

    .hiq-reports-view .hiq-personal-calendar-table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 2px;
        color: var(--hiq-muted);
        font-size: var(--hiq-type-caption-size);
        font-weight: var(--hiq-type-weight-strong);
        text-transform: uppercase;
    }

    .hiq-reports-view .hiq-calendar-day,
    .hiq-reports-view .hiq-calendar-events {
        grid-column: 1 / -1;
    }
}

/* /hiq-work-reports */
