
500;600;700;800&display=swap');

:root {
    --bg: #070a12;
    --bg-soft: #0b1120;
    --card: rgba(15, 23, 42, .78);
    --card-hover: rgba(20, 30, 52, .95);
    --border: rgba(71, 85, 105, .42);

    --cyan: #00f2fe;
    --cyan-2: #4facfe;
    --purple: #7f00ff;
    --purple-2: #e100ff;

    --text: #f8fafc;
    --muted: #94a3b8;
    --success: #22c55e;
    --danger: #ef4444;
    --warning: #f59e0b;

    --glow-cyan: rgba(0,242,254,.18);
    --glow-purple: rgba(127,0,255,.22);
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: Inter, 'Segoe UI', Roboto, Arial, sans-serif;
}

body {
    min-height: 100vh;
    color: var(--text);
    background:
        radial-gradient(circle at 50% 0%, #1e1b4b 0%, transparent 40%),
        radial-gradient(circle at 100% 100%, rgba(127,0,255,.12), transparent 35%),
        var(--bg);
    padding: 24px 16px;
}

button,
input,
select,
textarea {
    font: inherit;
}

button {
    cursor: pointer;
}

.app {
    width: 100%;
    max-width: 1080px;
    margin: auto;
}

/* =========================================================
   HEADER
========================================================= */

.header {
    text-align: center;
    padding: 25px 0 35px;
}

.logo-wrap {
    position: relative;
    width: 100px;
    height: 100px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-glow {
    position: absolute;
    inset: 5px;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        var(--cyan),
        var(--purple) 55%,
        transparent 72%
    );
    opacity: .3;
    filter: blur(25px);
}

.logo {
    position: relative;
    width: 86px;
    height: 86px;
    filter:
        drop-shadow(0 0 12px rgba(0,242,254,.6))
        drop-shadow(0 0 25px rgba(127,0,255,.4));
}

.brand {
    margin-top: 6px;
    font-size: 34px;
    font-weight: 800;
    letter-spacing: -1px;
    background: linear-gradient(
        135deg,
        #fff 20%,
        var(--cyan) 58%,
        var(--cyan-2)
    );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.tagline {
    margin-top: 5px;
    color: var(--cyan);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 3px;
}

/* =========================================================
   DASHBOARD
========================================================= */

.dashboard {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 24px;
}

.stat {
    background: rgba(15,23,42,.72);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 16px;
}

.stat-label {
    color: var(--muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 7px;
}

.stat-value {
    font-size: 22px;
    font-weight: 800;
}

.stat-value.cyan {
    color: var(--cyan);
}

.stat-value.green {
    color: #4ade80;
}

/* =========================================================
   MAIN CARD
========================================================= */

.card {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 26px;
    padding: 26px;
    backdrop-filter: blur(24px);
    box-shadow:
        0 25px 60px rgba(0,0,0,.55),
        0 0 30px rgba(0,242,254,.035);
}

.view {
    animation: enter .25s ease;
}

@keyframes enter {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =========================================================
   MENU
========================================================= */

.menu-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.menu-btn {
    border: 1px solid var(--border);
    background: rgba(255,255,255,.025);
    color: var(--text);
    border-radius: 18px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    text-align: left;
    transition: .25s;
}

.menu-btn:hover {
    background: var(--card-hover);
    border-color: var(--cyan);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px var(--glow-cyan);
}

.menu-icon {
    width: 44px;
    height: 44px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 21px;
    background: linear-gradient(
        135deg,
        rgba(0,242,254,.14),
        rgba(127,0,255,.16)
    );
    border: 1px solid rgba(0,242,254,.18);
}

.menu-content {
    flex: 1;
}

.menu-title {
    font-weight: 800;
    font-size: 14px;
}

.menu-description {
    margin-top: 4px;
    color: var(--muted);
    font-size: 11px;
}

.arrow {
    color: var(--cyan);
}

/* =========================================================
   SECTION HEADER
========================================================= */

.section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding-bottom: 16px;
    margin-bottom: 18px;
    border-bottom: 1px solid var(--border);
}

.section-title {
    color: var(--cyan);
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.back {
    border: 1px solid var(--border);
    background: rgba(255,255,255,.04);
    color: var(--muted);
    padding: 8px 14px;
    border-radius: 10px;
    font-size: 11px;
}

.back:hover {
    color: white;
    border-color: var(--cyan);
}

/* =========================================================
   DOCUMENT LIST
========================================================= */

.document-list {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.document-btn {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 13px;
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 14px 16px;
    color: white;
    background: rgba(7,10,18,.55);
    transition: .2s;
    text-align: left;
}

.document-btn:hover {
    border-color: var(--cyan);
    background: rgba(0,242,254,.055);
    transform: translateX(3px);
}

.document-number {
    color: var(--cyan);
    font-weight: 800;
    min-width: 24px;
}

.document-name {
    flex: 1;
    font-size: 13px;
    font-weight: 600;
}

.document-type {
    color: var(--muted);
    font-size: 10px;
}

/* =========================================================
   FORM
========================================================= */

.form-meta {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.badge {
    padding: 6px 9px;
    border-radius: 8px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .5px;
    text-transform: uppercase;
}

.badge-draft {
    color: #fbbf24;
    background: rgba(245,158,11,.1);
    border: 1px solid rgba(245,158,11,.25);
}

.badge-secure {
    color: var(--cyan);
    background: rgba(0,242,254,.08);
    border: 1px solid rgba(0,242,254,.22);
}

.document-id {
    margin-left: auto;
    color: var(--muted);
    font-size: 10px;
}

.form-section {
    background: rgba(7,10,18,.55);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 20px;
    margin-bottom: 15px;
}

.form-section-title {
    color: var(--cyan);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
}

.grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px;
}

.field {
    margin-bottom: 11px;
}

label {
    display: block;
    color: var(--muted);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 6px;
}

input,
select,
textarea {
    width: 100%;
    color: white;
    background: rgba(15,23,42,.85);
    border: 1px solid var(--border);
    border-radius: 9px;
    padding: 11px 12px;
    outline: none;
    font-size: 12px;
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--cyan);
    box-shadow: 0 0 12px var(--glow-cyan);
}

textarea {
    resize: vertical;
}

/* =========================================================
   TABLE
========================================================= */

.table-wrap {
    overflow-x: auto;
}

table {
    width: 100%;
    border-collapse: collapse;
}

th {
    color: var(--cyan);
    font-size: 9px;
    text-transform: uppercase;
    text-align: left;
    padding: 9px 6px;
    border-bottom: 1px solid var(--border);
}

td {
    padding: 7px 4px;
}

td input,
td select {
    min-width: 100px;
    padding: 8px;
}

.add-row {
    margin-top: 10px;
    width: 100%;
    padding: 10px;
    color: var(--cyan);
    background: rgba(0,242,254,.07);
    border: 1px dashed var(--cyan);
    border-radius: 9px;
    font-size: 11px;
    font-weight: 800;
}

.delete-row {
    width: 30px;
    height: 32px;
    color: #fca5a5;
    background: rgba(239,68,68,.12);
    border: 1px solid rgba(239,68,68,.25);
    border-radius: 7px;
}

/* =========================================================
   SIGNATURE
========================================================= */

.signature {
    background: rgba(15,23,42,.75);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 14px;
    margin-bottom: 10px;
}

.signature-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 9px;
}

.signature-title {
    color: var(--muted);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.sig-canvas {
    width: 100%;
    height: 120px;
    display: block;
    background: white;
    border: 2px dashed var(--cyan);
    border-radius: 9px;
    touch-action: none;
}

.signature-tools {
    margin-top: 8px;
    display: flex;
    justify-content: space-between;
    color: var(--muted);
    font-size: 9px;
}

.clear-signature {
    color: #fca5a5;
    background: rgba(239,68,68,.1);
    border: 1px solid rgba(239,68,68,.2);
    border-radius: 7px;
    padding: 5px 9px;
    font-size: 9px;
}

/* =========================================================
   ACTIONS
========================================================= */

.actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 18px;
}

.action {
    padding: 14px;
    border-radius: 12px;
    border: 1px solid var(--border);
    background: rgba(255,255,255,.04);
    color: white;
    font-size: 11px;
    font-weight: 800;
}

.action:hover {
    border-color: var(--cyan);
}

.action-primary {
    background: linear-gradient(
        135deg,
        #4facfe,
        #7f00ff
    );
    border: none;
}

.action-qr {
    color: var(--cyan);
    border-color: rgba(0,242,254,.35);
}

/* =========================================================
   QR
========================================================= */

.qr-box {
    display: none;
    margin-top: 16px;
    padding: 18px;
    text-align: center;
    background: rgba(255,255,255,.02);
    border: 1px dashed var(--cyan);
    border-radius: 14px;
}

#qrcode {
    background: white;
    display: inline-block;
    padding: 10px;
    border-radius: 8px;
}

.qr-info {
    color: var(--muted);
    font-size: 9px;
    margin-top: 10px;
}

.hash {
    color: var(--cyan);
    word-break: break-all;
    font-family: monospace;
    font-size: 9px;
    margin-top: 7px;
}

/* =========================================================
   FOOTER
========================================================= */

.footer {
    text-align: center;
    color: #475569;
    font-size: 9px;
    margin-top: 20px;
    letter-spacing: 1px;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:700px) {

    body {
        padding: 12px 8px;
    }

    .card {
        padding: 17px;
        border-radius: 20px;
    }

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

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

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

    .document-type {
        display: none;
    }

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

    .document-id {
        width: 100%;
        margin-left: 0;
    }
}

/* =========================================================
   PRINT
========================================================= */

@media print {

    body {
        background: white !important;
        color: black !important;
        padding: 0;
    }

    .app {
        max-width: none;
    }

    .card {
        background: white !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0;
    }

    .header {
        padding: 0 0 20px;
    }

    .logo-glow {
        display: none;
    }

    .dashboard,
    .actions,
    .back,
    .add-row,
    .delete-row,
    .footer,
    .no-print {
        display: none !important;
    }

    .brand {
        background: none;
        -webkit-text-fill-color: black;
        color: black;
    }

    .tagline {
        color: #333;
    }

    .form-section {
        background: white !important;
        border: 1px solid #ccc;
        color: black;
        break-inside: avoid;
    }

    .form-section-title,
    th {
        color: black;
    }

    label {
        color: #333;
    }

    input,
    select,
    textarea {
        background: white !important;
        color: black !important;
        border: 1px solid #aaa;
    }

    .qr-box {
        display: block !important;
        border: 1px solid #aaa;
    }
}

/* =========================================================
   VARDIQO v2 — SPRINT 1 UI LAYER
   App shell + dashboard + mobile navigation
========================================================= */

:root {
    --vq-bg-deep: #050914;
    --vq-bg: #07111f;
    --vq-surface: rgba(12, 23, 40, .88);
    --vq-surface-2: rgba(17, 31, 52, .92);
    --vq-border: rgba(125, 211, 252, .12);
    --vq-cyan: #22d3ee;
    --vq-cyan-soft: rgba(34, 211, 238, .12);
    --vq-purple: #8b5cf6;
    --vq-success: #34d399;
    --vq-warning: #fbbf24;
    --vq-danger: #fb7185;
    --vq-text: #f8fafc;
    --vq-muted: #94a3b8;
    --vq-shadow: 0 24px 70px rgba(0,0,0,.38);
    --vq-radius-xl: 28px;
    --vq-radius-lg: 20px;
    --vq-radius-md: 14px;
}

body {
    background:
        radial-gradient(circle at 15% -10%, rgba(34,211,238,.10), transparent 34%),
        radial-gradient(circle at 90% 0%, rgba(139,92,246,.16), transparent 34%),
        linear-gradient(180deg, var(--vq-bg-deep), var(--vq-bg) 45%, #06101c);
    padding: 0 16px 96px;
}

.app {
    max-width: 1180px;
}

/* --- top app bar --- */
.vq-appbar {
    position: sticky;
    top: 0;
    z-index: 120;
    margin: 0 -16px 22px;
    padding: 14px 16px;
    background: rgba(5, 9, 20, .78);
    border-bottom: 1px solid rgba(148,163,184,.10);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
}

.vq-appbar-inner {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 14px;
}

.vq-mark {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background:
        linear-gradient(145deg, rgba(34,211,238,.18), rgba(139,92,246,.20));
    border: 1px solid rgba(34,211,238,.22);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        0 10px 28px rgba(34,211,238,.08);
}

.vq-mark svg {
    width: 31px;
    height: 31px;
    filter: drop-shadow(0 0 10px rgba(34,211,238,.28));
}

.vq-brand-block {
    min-width: 0;
}

.vq-brand-name {
    font-size: 20px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .08em;
    color: var(--vq-text);
}

.vq-brand-tagline {
    margin-top: 5px;
    font-size: 9px;
    color: var(--vq-cyan);
    letter-spacing: .20em;
    font-weight: 800;
    text-transform: uppercase;
}

.vq-appbar-spacer {
    flex: 1;
}

.vq-status {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 11px;
    border-radius: 999px;
    color: #cbd5e1;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.07);
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap;
}

.vq-status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--vq-success);
    box-shadow: 0 0 12px rgba(52,211,153,.7);
}

.vq-header-action {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.035);
    color: var(--vq-text);
    display: grid;
    place-items: center;
    font-size: 17px;
}

/* hide old hero header + old global dashboard */
body > .app > .header,
body > .app > .dashboard {
    display: none;
}

/* --- dashboard hero --- */
.vq-dashboard-hero {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(34,211,238,.14);
    border-radius: var(--vq-radius-xl);
    padding: 28px;
    margin-bottom: 18px;
    background:
        linear-gradient(135deg, rgba(11,24,42,.96), rgba(12,22,42,.90)),
        radial-gradient(circle at 90% 10%, rgba(139,92,246,.22), transparent 40%);
    box-shadow: var(--vq-shadow);
}

.vq-dashboard-hero::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    right: -120px;
    top: -150px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(34,211,238,.18), transparent 67%);
    pointer-events: none;
}

.vq-eyebrow {
    position: relative;
    z-index: 1;
    color: var(--vq-cyan);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .18em;
    font-weight: 800;
}

.vq-hero-title {
    position: relative;
    z-index: 1;
    margin-top: 8px;
    font-size: clamp(25px, 4vw, 42px);
    line-height: 1.08;
    letter-spacing: -.035em;
    font-weight: 800;
    max-width: 720px;
}

.vq-hero-subtitle {
    position: relative;
    z-index: 1;
    margin-top: 11px;
    color: #9fb0c5;
    font-size: 13px;
    line-height: 1.65;
    max-width: 720px;
}

.vq-search {
    position: relative;
    z-index: 1;
    margin-top: 22px;
    display: flex;
    gap: 10px;
    align-items: center;
    max-width: 680px;
}

.vq-search-box {
    flex: 1;
    min-width: 0;
    position: relative;
}

.vq-search-box input {
    height: 48px;
    padding: 0 16px 0 44px;
    border-radius: 15px;
    background: rgba(3,10,20,.66);
    border: 1px solid rgba(148,163,184,.16);
    font-size: 12px;
}

.vq-search-box input:focus {
    border-color: rgba(34,211,238,.60);
    box-shadow: 0 0 0 4px rgba(34,211,238,.07);
}

.vq-search-icon {
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translateY(-50%);
    color: #7f94aa;
    font-size: 15px;
    pointer-events: none;
}

/* --- statistics --- */
.vq-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 12px;
    margin: 18px 0;
}

.vq-stat-card {
    position: relative;
    overflow: hidden;
    min-height: 124px;
    padding: 17px;
    border-radius: var(--vq-radius-lg);
    border: 1px solid var(--vq-border);
    background: linear-gradient(180deg, rgba(16,31,52,.88), rgba(9,19,34,.90));
    box-shadow: 0 14px 35px rgba(0,0,0,.22);
}

.vq-stat-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 16px;
    bottom: 16px;
    width: 2px;
    border-radius: 2px;
    background: linear-gradient(var(--vq-cyan), var(--vq-purple));
    opacity: .85;
}

.vq-stat-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.vq-stat-label {
    color: var(--vq-muted);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .12em;
    font-weight: 800;
}

.vq-stat-icon {
    width: 31px;
    height: 31px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: rgba(34,211,238,.07);
    border: 1px solid rgba(34,211,238,.10);
    font-size: 14px;
}

.vq-stat-number {
    margin-top: 14px;
    font-size: 29px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -.04em;
}

.vq-stat-note {
    margin-top: 8px;
    color: #708398;
    font-size: 9px;
}

/* --- dashboard sections --- */
.vq-dashboard-layout {
    display: grid;
    grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr);
    gap: 16px;
    margin-top: 16px;
}

.vq-panel {
    border-radius: 22px;
    border: 1px solid rgba(148,163,184,.11);
    background: linear-gradient(180deg, rgba(13,25,43,.90), rgba(8,17,30,.92));
    box-shadow: 0 18px 45px rgba(0,0,0,.20);
    padding: 20px;
}

.vq-panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 15px;
}

.vq-panel-title {
    font-size: 14px;
    font-weight: 800;
    letter-spacing: -.01em;
}

.vq-panel-subtitle {
    margin-top: 4px;
    color: #71849a;
    font-size: 10px;
}

.vq-text-btn {
    border: 0;
    background: transparent;
    color: var(--vq-cyan);
    font-size: 10px;
    font-weight: 800;
    padding: 4px;
}

/* --- quick actions --- */
.vq-quick-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0,1fr));
    gap: 10px;
}

.vq-quick {
    min-height: 116px;
    padding: 14px;
    border-radius: 17px;
    border: 1px solid rgba(148,163,184,.11);
    background: rgba(255,255,255,.024);
    color: var(--vq-text);
    text-align: left;
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.vq-quick:hover {
    transform: translateY(-2px);
    border-color: rgba(34,211,238,.30);
    background: rgba(34,211,238,.045);
}

.vq-quick-icon {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    margin-bottom: 16px;
    background: linear-gradient(145deg, rgba(34,211,238,.12), rgba(139,92,246,.11));
    border: 1px solid rgba(34,211,238,.12);
    font-size: 17px;
}

.vq-quick-title {
    font-size: 11px;
    font-weight: 800;
}

.vq-quick-caption {
    margin-top: 5px;
    font-size: 9px;
    color: #6f8298;
    line-height: 1.35;
}

/* --- recent documents --- */
.vq-recent-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.vq-recent-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border-radius: 14px;
    border: 1px solid rgba(148,163,184,.08);
    background: rgba(255,255,255,.018);
}

.vq-recent-doc-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: rgba(34,211,238,.07);
    color: var(--vq-cyan);
    font-size: 15px;
}

.vq-recent-content {
    min-width: 0;
    flex: 1;
}

.vq-recent-title {
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vq-recent-meta {
    margin-top: 4px;
    color: #6f8298;
    font-size: 8px;
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
}

.vq-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 23px;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    border: 1px solid rgba(245,158,11,.18);
    background: rgba(245,158,11,.08);
    color: #fbbf24;
}

.vq-empty {
    padding: 28px 14px;
    text-align: center;
    border: 1px dashed rgba(148,163,184,.12);
    border-radius: 16px;
    color: #65798e;
    font-size: 10px;
    line-height: 1.6;
}

/* --- modules section --- */
.vq-modules-title {
    margin: 22px 0 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.vq-modules-title strong {
    font-size: 13px;
}

.vq-modules-title span {
    color: #667b91;
    font-size: 9px;
}

/* adapt existing module menu */
#mainView .menu-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
}

#mainView .menu-btn {
    min-height: 94px;
    border-radius: 18px;
    padding: 16px;
    background: linear-gradient(180deg, rgba(255,255,255,.032), rgba(255,255,255,.014));
    border-color: rgba(148,163,184,.10);
    box-shadow: none;
}

#mainView .menu-btn:hover {
    transform: translateY(-2px);
    border-color: rgba(34,211,238,.30);
    background: rgba(34,211,238,.04);
    box-shadow: 0 14px 30px rgba(0,0,0,.20);
}

#mainView .menu-icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    font-size: 18px;
}

#mainView .menu-title {
    font-size: 12px;
}

#mainView .menu-description {
    font-size: 9px;
    line-height: 1.45;
}

/* main content card becomes transparent dashboard container */
.card {
    background: rgba(7, 15, 27, .58);
    border-color: rgba(148,163,184,.10);
    box-shadow: 0 28px 70px rgba(0,0,0,.28);
}

/* --- bottom navigation --- */
.vq-bottom-nav {
    position: fixed;
    left: 50%;
    bottom: 14px;
    z-index: 130;
    transform: translateX(-50%);
    width: min(calc(100% - 24px), 620px);
    min-height: 62px;
    padding: 7px 9px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    background: rgba(7,14,25,.90);
    border: 1px solid rgba(148,163,184,.13);
    box-shadow: 0 18px 55px rgba(0,0,0,.48);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
}

.vq-nav-btn {
    min-width: 64px;
    height: 48px;
    padding: 5px 9px;
    border: 0;
    border-radius: 14px;
    background: transparent;
    color: #718499;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-size: 16px;
    transition: .2s ease;
}

.vq-nav-btn small {
    font-size: 7px;
    font-weight: 800;
    letter-spacing: .02em;
}

.vq-nav-btn.active,
.vq-nav-btn:hover {
    color: var(--vq-cyan);
    background: rgba(34,211,238,.07);
}

.vq-fab {
    width: 51px;
    height: 51px;
    margin-top: -25px;
    border: 0;
    border-radius: 17px;
    display: grid;
    place-items: center;
    color: white;
    font-size: 25px;
    font-weight: 400;
    background: linear-gradient(145deg, #22d3ee, #7c3aed);
    box-shadow: 0 10px 28px rgba(34,211,238,.20), 0 9px 28px rgba(124,58,237,.20);
}

/* document views should have comfortable top separation */
#documentsView,
#formView,
#archiveView,
#verificationView {
    padding-top: 3px;
}

/* responsive */
@media(max-width: 900px) {
    .vq-quick-grid {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }

    .vq-stat-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .vq-dashboard-layout {
        grid-template-columns: 1fr;
    }

    #mainView .menu-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media(max-width: 700px) {
    body {
        padding: 0 10px 94px;
    }

    .vq-appbar {
        margin: 0 -10px 16px;
        padding: 11px 10px;
    }

    .vq-appbar-inner {
        gap: 10px;
    }

    .vq-mark {
        width: 40px;
        height: 40px;
        flex-basis: 40px;
        border-radius: 12px;
    }

    .vq-mark svg {
        width: 27px;
        height: 27px;
    }

    .vq-brand-name {
        font-size: 16px;
    }

    .vq-brand-tagline {
        font-size: 7px;
    }

    .vq-status {
        padding: 7px 8px;
        font-size: 8px;
    }

    .vq-header-action {
        display: none;
    }

    .vq-dashboard-hero {
        padding: 21px 18px;
        border-radius: 22px;
    }

    .vq-hero-title {
        font-size: 26px;
    }

    .vq-hero-subtitle {
        font-size: 11px;
    }

    .vq-search {
        margin-top: 17px;
    }

    .vq-search-box input {
        height: 46px;
        font-size: 11px;
    }

    .vq-stat-grid {
        gap: 9px;
        margin: 13px 0;
    }

    .vq-stat-card {
        min-height: 108px;
        padding: 14px;
        border-radius: 17px;
    }

    .vq-stat-number {
        font-size: 25px;
    }

    .vq-stat-label {
        font-size: 8px;
    }

    .vq-quick-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .vq-panel {
        padding: 16px;
        border-radius: 19px;
    }

    #mainView .menu-grid {
        grid-template-columns: 1fr;
    }

    #mainView .menu-btn {
        min-height: 82px;
    }

    .card {
        padding: 14px;
        border-radius: 20px;
    }

    .vq-bottom-nav {
        bottom: 8px;
    }
}

@media(max-width: 430px) {
    .vq-status-label {
        display: none;
    }

    .vq-stat-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .vq-stat-card {
        min-height: 102px;
    }

    .vq-stat-note {
        display: none;
    }

    .vq-nav-btn {
        min-width: 52px;
    }
}

@media print {
    .vq-appbar,
    .vq-bottom-nav,
    .vq-dashboard-hero,
    .vq-stat-grid,
    .vq-dashboard-layout,
    .vq-modules-title {
        display: none !important;
    }

    body > .app > .header {
        display: block !important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 1.1 FUNCTIONAL RECOVERY
   Beléptetés + előzmények / dokumentumtár
========================================================= */
.vq-archive-toolbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) 190px;
    gap:10px;
    margin-bottom:14px;
}
.vq-archive-toolbar input,
.vq-archive-toolbar select{
    height:44px;
    border-radius:13px;
    font-size:11px;
}
.vq-history-grid{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);
    gap:14px;
}
.vq-history-list{
    display:flex;
    flex-direction:column;
    gap:8px;
    max-height:66vh;
    overflow:auto;
    padding-right:3px;
}
.vq-history-item{
    width:100%;
    display:flex;
    align-items:center;
    gap:11px;
    text-align:left;
    padding:13px;
    border-radius:15px;
    border:1px solid rgba(148,163,184,.10);
    background:rgba(255,255,255,.022);
    color:var(--text);
    transition:.18s ease;
}
.vq-history-item:hover,
.vq-history-item.active{
    border-color:rgba(34,211,238,.32);
    background:rgba(34,211,238,.045);
}
.vq-history-icon{
    width:38px;height:38px;flex:0 0 38px;
    display:grid;place-items:center;
    border-radius:12px;
    background:rgba(34,211,238,.07);
    border:1px solid rgba(34,211,238,.10);
}
.vq-history-main{min-width:0;flex:1}
.vq-history-title{
    font-size:10px;font-weight:800;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.vq-history-meta{
    color:#73879c;font-size:8px;margin-top:4px;
    display:flex;gap:6px;flex-wrap:wrap;
}
.vq-history-detail{
    min-height:280px;
    border-radius:18px;
    border:1px solid rgba(148,163,184,.10);
    background:rgba(5,13,24,.48);
    padding:18px;
}
.vq-detail-head{
    display:flex;justify-content:space-between;gap:14px;align-items:flex-start;
    padding-bottom:14px;margin-bottom:14px;
    border-bottom:1px solid rgba(148,163,184,.10);
}
.vq-detail-title{font-size:16px;font-weight:800}
.vq-detail-id{font-size:9px;color:var(--vq-cyan);margin-top:5px;font-family:monospace}
.vq-detail-grid{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;margin-bottom:15px;
}
.vq-detail-card{
    border:1px solid rgba(148,163,184,.08);
    background:rgba(255,255,255,.018);
    border-radius:12px;padding:10px;
}
.vq-detail-label{
    font-size:7px;color:#708398;text-transform:uppercase;
    letter-spacing:.09em;font-weight:800;margin-bottom:5px;
}
.vq-detail-value{
    font-size:10px;color:#e2e8f0;word-break:break-word;
}
.vq-fields-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0 6px;
}
.vq-fields-table td{
    padding:8px 9px;
    font-size:9px;
    border-top:1px solid rgba(148,163,184,.07);
    border-bottom:1px solid rgba(148,163,184,.07);
    background:rgba(255,255,255,.018);
}
.vq-fields-table td:first-child{
    width:42%;
    color:#7d91a7;
    border-left:1px solid rgba(148,163,184,.07);
    border-radius:10px 0 0 10px;
}
.vq-fields-table td:last-child{
    color:#e2e8f0;
    border-right:1px solid rgba(148,163,184,.07);
    border-radius:0 10px 10px 0;
}
.vq-detail-actions{
    display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;
}
.vq-small-action{
    border:1px solid rgba(148,163,184,.14);
    background:rgba(255,255,255,.025);
    color:#cbd5e1;
    border-radius:10px;
    padding:8px 10px;
    font-size:8px;font-weight:800;
}
.vq-small-action:hover{border-color:rgba(34,211,238,.35);color:var(--vq-cyan)}
@media(max-width:800px){
    .vq-history-grid{grid-template-columns:1fr}
    .vq-history-list{max-height:none}
}
@media(max-width:520px){
    .vq-archive-toolbar{grid-template-columns:1fr}
    .vq-detail-grid{grid-template-columns:1fr}
}
@media print{
    .vq-archive-toolbar,.vq-history-list{display:none!important}
    .vq-history-grid{display:block!important}
    .vq-history-detail{border:0!important;background:white!important;color:black!important}
}


/* =========================================================
   VARDIQO v2 — SPRINT 1.3 LIFECYCLE
   Nyitott folyamatok / beléptetés / kulcskiadás / lezárás
========================================================= */

.vq-stat-card.vq-clickable{
    cursor:pointer;
    transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.vq-stat-card.vq-clickable:hover{
    transform:translateY(-3px);
    border-color:rgba(34,211,238,.34);
    background:linear-gradient(180deg,rgba(18,38,61,.95),rgba(10,23,40,.95));
}
.vq-stat-card.vq-people::before{background:linear-gradient(#34d399,#22d3ee)}
.vq-stat-card.vq-keys::before{background:linear-gradient(#fbbf24,#f97316)}
.vq-stat-card.vq-protocols::before{background:linear-gradient(#8b5cf6,#22d3ee)}
.vq-stat-card.vq-openall::before{background:linear-gradient(#fb7185,#8b5cf6)}

.vq-status-badge{
    display:inline-flex;
    align-items:center;
    gap:5px;
    min-height:24px;
    padding:5px 9px;
    border-radius:999px;
    font-size:8px;
    line-height:1;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
    white-space:nowrap;
}
.vq-status-open{
    color:#67e8f9;
    background:rgba(34,211,238,.10);
    border:1px solid rgba(34,211,238,.20);
}
.vq-status-issued{
    color:#fbbf24;
    background:rgba(245,158,11,.10);
    border:1px solid rgba(245,158,11,.20);
}
.vq-status-done{
    color:#86efac;
    background:rgba(34,197,94,.10);
    border:1px solid rgba(34,197,94,.20);
}

.vq-open-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:14px;
}
.vq-open-filter{
    display:flex;
    gap:7px;
    flex-wrap:wrap;
}
.vq-filter-btn{
    border:1px solid rgba(148,163,184,.12);
    background:rgba(255,255,255,.025);
    color:#8195aa;
    border-radius:999px;
    padding:8px 11px;
    font-size:8px;
    font-weight:800;
}
.vq-filter-btn.active,
.vq-filter-btn:hover{
    color:var(--vq-cyan);
    border-color:rgba(34,211,238,.30);
    background:rgba(34,211,238,.06);
}
.vq-open-list{
    display:flex;
    flex-direction:column;
    gap:9px;
}
.vq-open-item{
    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    padding:14px;
    border-radius:16px;
    border:1px solid rgba(148,163,184,.10);
    background:rgba(255,255,255,.020);
}
.vq-open-icon{
    width:42px;height:42px;
    display:grid;place-items:center;
    border-radius:13px;
    background:rgba(34,211,238,.06);
    border:1px solid rgba(34,211,238,.10);
    font-size:18px;
}
.vq-open-title{
    font-size:11px;
    font-weight:800;
}
.vq-open-primary{
    margin-top:4px;
    color:#dbeafe;
    font-size:10px;
    font-weight:700;
}
.vq-open-meta{
    margin-top:5px;
    color:#72869b;
    font-size:8px;
    display:flex;
    gap:7px;
    flex-wrap:wrap;
}
.vq-open-actions{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.vq-close-btn{
    border:1px solid rgba(34,197,94,.24);
    background:rgba(34,197,94,.08);
    color:#86efac;
    border-radius:11px;
    padding:9px 12px;
    font-size:8px;
    font-weight:800;
}
.vq-close-btn:hover{
    background:rgba(34,197,94,.13);
    border-color:rgba(34,197,94,.40);
}
.vq-view-btn{
    border:1px solid rgba(148,163,184,.13);
    background:rgba(255,255,255,.025);
    color:#cbd5e1;
    border-radius:11px;
    padding:9px 11px;
    font-size:8px;
    font-weight:800;
}
.vq-view-btn:hover{color:var(--vq-cyan);border-color:rgba(34,211,238,.30)}

.vq-lifecycle-note{
    display:flex;
    align-items:center;
    gap:9px;
    margin:0 0 15px;
    padding:11px 13px;
    border-radius:13px;
    background:rgba(34,211,238,.045);
    border:1px solid rgba(34,211,238,.10);
    color:#8da3b9;
    font-size:9px;
    line-height:1.5;
}
.vq-lifecycle-note strong{color:#dbeafe}

@media(max-width:650px){
    .vq-open-item{
        grid-template-columns:38px minmax(0,1fr);
    }
    .vq-open-actions{
        grid-column:1/-1;
        justify-content:stretch;
    }
    .vq-open-actions button{flex:1}
    .vq-open-toolbar{
        align-items:flex-start;
        flex-direction:column;
    }
}
@media(max-width:700px){
    .vq-stat-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}
@media print{
    #openItemsView{display:none!important}
}


input[readonly]{
    color:#9fb7ca;
    background:rgba(34,211,238,.035);
    border-color:rgba(34,211,238,.12);
    cursor:default;
}


.vq-open-actions .vq-view-btn,
.vq-open-actions .vq-close-btn{
    min-width:84px;
}
@media(max-width:900px){
    .vq-open-actions .vq-view-btn,
    .vq-open-actions .vq-close-btn{
        min-width:auto;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 1.6
   Szerkesztés minden rekordnál + checklist hiba/fotó
========================================================= */

.check-item{
    padding:13px;
    margin-bottom:10px;
    border:1px solid rgba(148,163,184,.09);
    border-radius:14px;
    background:rgba(255,255,255,.018);
}
.check-item > label{
    margin-bottom:8px;
}
.issue-detail{
    display:none;
    margin-top:11px;
    padding-top:11px;
    border-top:1px solid rgba(148,163,184,.09);
}
.issue-detail.visible{
    display:block;
    animation:enter .18s ease;
}
.issue-photo-card{
    margin-top:10px;
    padding:12px;
    border-radius:13px;
    border:1px dashed rgba(34,211,238,.20);
    background:rgba(34,211,238,.025);
}
.issue-photo-question{
    color:#8da3b9;
    font-size:9px;
    line-height:1.5;
}
.issue-photo-actions{
    display:flex;
    gap:8px;
    margin-top:9px;
    flex-wrap:wrap;
}
.issue-photo-btn{
    border:1px solid rgba(34,211,238,.20);
    background:rgba(34,211,238,.07);
    color:#67e8f9;
    border-radius:10px;
    padding:8px 10px;
    font-size:8px;
    font-weight:800;
}
.issue-photo-btn.secondary{
    border-color:rgba(148,163,184,.14);
    background:rgba(255,255,255,.025);
    color:#9fb0c5;
}
.issue-photo-btn.delete{
    border-color:rgba(251,113,133,.22);
    background:rgba(251,113,133,.07);
    color:#fda4af;
}
.issue-photo-preview{
    display:none;
    margin-top:11px;
}
.issue-photo-preview.visible{
    display:block;
}
.issue-photo-preview img{
    display:block;
    width:100%;
    max-height:320px;
    object-fit:contain;
    border-radius:12px;
    background:#020617;
    border:1px solid rgba(148,163,184,.12);
}
.issue-photo-meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    margin-top:8px;
    color:#71859b;
    font-size:8px;
}
.vq-signature-trust-info{
    margin:0 0 12px;
    padding:11px 13px;
    border-radius:13px;
    background:rgba(139,92,246,.055);
    border:1px solid rgba(139,92,246,.14);
    color:#91a3b8;
    font-size:9px;
    line-height:1.55;
}
.vq-signature-trust-info strong{
    color:#ddd6fe;
}
@media(max-width:520px){
    .issue-photo-actions button{
        flex:1;
    }
}
@media print{
    .issue-photo-actions,
    .issue-photo-question,
    input[type="file"]{
        display:none!important;
    }
}


.vq-open-primary{
    font-variant-numeric:tabular-nums;
}
.vq-history-date,
.vq-recent-date{
    margin-top:4px;
    color:#dbeafe;
    font-size:9px;
    font-weight:700;
    font-variant-numeric:tabular-nums;
}
.vq-history-date{
    display:block;
}


/* =========================================================
   VARDIQO v2 — SPRINT 1.8
   Compact operations-first dashboard
========================================================= */

.vq-compact-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:12px;
}
.vq-compact-site{
    min-width:0;
}
.vq-compact-eyebrow{
    color:var(--vq-cyan);
    font-size:9px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}
.vq-compact-site-name{
    margin-top:4px;
    color:#f8fafc;
    font-size:19px;
    font-weight:800;
    letter-spacing:-.02em;
}
.vq-compact-clock{
    flex:0 0 auto;
    text-align:right;
}
.vq-compact-date{
    color:#cbd5e1;
    font-size:10px;
    font-weight:700;
}
.vq-compact-time{
    margin-top:2px;
    color:#6f849a;
    font-size:9px;
}

.vq-primary-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-bottom:10px;
}
.vq-primary-action{
    min-height:82px;
    display:flex;
    align-items:center;
    gap:13px;
    padding:15px 17px;
    border-radius:18px;
    color:#f8fafc;
    text-align:left;
    border:1px solid rgba(34,211,238,.14);
    background:
        linear-gradient(145deg,rgba(13,32,51,.96),rgba(10,22,39,.94));
    box-shadow:0 12px 30px rgba(0,0,0,.16);
    transition:.18s ease;
}
.vq-primary-action:hover{
    transform:translateY(-2px);
    border-color:rgba(34,211,238,.34);
    background:
        linear-gradient(145deg,rgba(16,39,61,.98),rgba(12,26,45,.96));
}
.vq-primary-action.pool{
    border-color:rgba(139,92,246,.18);
}
.vq-primary-action.pool:hover{
    border-color:rgba(139,92,246,.42);
}
.vq-primary-action.key{
    border-color:rgba(245,158,11,.18);
}
.vq-primary-action.key:hover{
    border-color:rgba(245,158,11,.42);
}
.vq-primary-icon{
    width:46px;
    height:46px;
    flex:0 0 46px;
    display:grid;
    place-items:center;
    border-radius:14px;
    font-size:21px;
    background:rgba(34,211,238,.07);
    border:1px solid rgba(34,211,238,.10);
}
.vq-primary-copy{min-width:0}
.vq-primary-title{
    font-size:12px;
    font-weight:800;
}
.vq-primary-sub{
    margin-top:4px;
    color:#72879b;
    font-size:8px;
    line-height:1.35;
}

.vq-secondary-actions{
    display:flex;
    gap:7px;
    overflow-x:auto;
    padding:1px 1px 6px;
    scrollbar-width:none;
}
.vq-secondary-actions::-webkit-scrollbar{display:none}
.vq-secondary-btn{
    flex:0 0 auto;
    border:1px solid rgba(148,163,184,.11);
    background:rgba(255,255,255,.022);
    color:#91a5b9;
    border-radius:999px;
    padding:8px 11px;
    font-size:8px;
    font-weight:800;
    white-space:nowrap;
}
.vq-secondary-btn:hover{
    color:var(--vq-cyan);
    border-color:rgba(34,211,238,.28);
    background:rgba(34,211,238,.05);
}

.vq-stat-grid.vq-compact-stats{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:8px;
    margin:10px 0 12px;
}
.vq-compact-stats .vq-stat-card{
    min-height:94px;
    padding:13px 14px;
    border-radius:16px;
}
.vq-compact-stats .vq-stat-number{
    margin-top:9px;
    font-size:25px;
}
.vq-compact-stats .vq-stat-note{
    margin-top:5px;
    font-size:7px;
}
.vq-compact-stats .vq-stat-icon{
    width:27px;
    height:27px;
    font-size:12px;
}
.vq-compact-stats .vq-stat-label{
    font-size:7px;
}

.vq-dashboard-bottom{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(310px,.72fr);
    gap:10px;
}
.vq-dashboard-bottom .vq-panel{
    padding:15px;
    border-radius:17px;
}
.vq-mini-help{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
}
.vq-mini-help button{
    min-height:50px;
    display:flex;
    align-items:center;
    gap:9px;
    padding:10px;
    border-radius:13px;
    border:1px solid rgba(148,163,184,.09);
    background:rgba(255,255,255,.018);
    color:#cbd5e1;
    text-align:left;
}
.vq-mini-help button:hover{
    border-color:rgba(34,211,238,.25);
}
.vq-mini-help-icon{
    width:30px;height:30px;flex:0 0 30px;
    display:grid;place-items:center;
    border-radius:9px;
    background:rgba(34,211,238,.055);
    font-size:13px;
}
.vq-mini-help strong{
    display:block;
    font-size:9px;
}
.vq-mini-help small{
    display:block;
    margin-top:2px;
    color:#708499;
    font-size:7px;
}
.vq-required-mark{
    color:#fb7185;
    margin-left:3px;
}

@media(min-width:901px){
    #mainView{
        min-height:calc(100vh - 150px);
    }
}

@media(max-width:1050px){
    .vq-stat-grid.vq-compact-stats{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}
@media(max-width:800px){
    .vq-dashboard-bottom{
        grid-template-columns:1fr;
    }
}
@media(max-width:700px){
    .vq-compact-head{
        margin-bottom:10px;
    }
    .vq-compact-site-name{
        font-size:16px;
    }
    .vq-primary-actions{
        grid-template-columns:1fr;
        gap:8px;
    }
    .vq-primary-action{
        min-height:68px;
        padding:12px 13px;
    }
    .vq-primary-icon{
        width:40px;height:40px;flex-basis:40px;
        font-size:18px;
    }
    .vq-stat-grid.vq-compact-stats{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:7px;
    }
    .vq-compact-stats .vq-stat-card{
        min-height:90px;
    }
    .vq-dashboard-bottom{
        display:block;
    }
    .vq-dashboard-bottom > .vq-panel{
        margin-bottom:9px;
    }
    .vq-mini-help{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 1.9
   Pool kulcs határidő + késésriasztás
========================================================= */

.vq-overdue-banner{
    display:none;
    flex:1;
    min-width:0;
    margin-left:12px;
    padding:10px 13px;
    border-radius:12px;
    border:2px solid rgba(251,113,133,.62);
    background:
        linear-gradient(135deg,rgba(127,29,29,.94),rgba(76,5,25,.94));
    color:#fff1f2;
    box-shadow:
        0 0 0 1px rgba(251,113,133,.12),
        0 10px 28px rgba(127,29,29,.32);
    font-size:10px;
    line-height:1.35;
    font-weight:800;
}
.vq-overdue-banner.visible{
    display:block;
    animation:vqAlertPulse 1.8s ease-in-out infinite;
}
.vq-overdue-banner strong{
    color:#fecdd3;
}
.vq-overdue-title{
    color:#fecaca;
    font-size:8px;
    letter-spacing:.09em;
    text-transform:uppercase;
    margin-bottom:3px;
}
.vq-overdue-list{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
@keyframes vqAlertPulse{
    0%,100%{box-shadow:0 0 0 1px rgba(251,113,133,.12),0 10px 28px rgba(127,29,29,.28)}
    50%{box-shadow:0 0 0 3px rgba(251,113,133,.12),0 10px 34px rgba(251,113,133,.26)}
}

.vq-attention-list{
    display:flex;
    flex-direction:column;
    gap:8px;
}
.vq-attention-item{
    display:flex;
    align-items:center;
    gap:11px;
    padding:11px 12px;
    border-radius:13px;
    border:1px solid rgba(148,163,184,.09);
    background:rgba(255,255,255,.018);
}
.vq-attention-item.overdue{
    border-color:rgba(251,113,133,.22);
    background:rgba(251,113,133,.045);
}
.vq-attention-item.soon{
    border-color:rgba(245,158,11,.18);
    background:rgba(245,158,11,.035);
}
.vq-attention-icon{
    width:34px;height:34px;flex:0 0 34px;
    display:grid;place-items:center;
    border-radius:10px;
    background:rgba(255,255,255,.035);
    font-size:15px;
}
.vq-attention-copy{min-width:0;flex:1}
.vq-attention-title{
    font-size:9px;
    font-weight:800;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.vq-attention-meta{
    margin-top:3px;
    color:#75899f;
    font-size:7px;
}
.vq-attention-time{
    flex:0 0 auto;
    text-align:right;
}
.vq-attention-time strong{
    display:block;
    font-size:8px;
}
.vq-attention-time small{
    display:block;
    margin-top:3px;
    color:#71849a;
    font-size:7px;
}
.vq-attention-item.overdue .vq-attention-time strong{color:#fda4af}
.vq-attention-item.soon .vq-attention-time strong{color:#fbbf24}

@media(max-width:900px){
    .vq-overdue-banner{
        margin-left:8px;
        font-size:8px;
        padding:8px 10px;
    }
}
@media(max-width:700px){
    .vq-appbar-inner{
        flex-wrap:wrap;
    }
    .vq-overdue-banner{
        order:4;
        flex-basis:100%;
        margin:4px 0 0;
    }
    .vq-overdue-list{
        white-space:normal;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 2.0
   Pool urgency colors + shift summary
========================================================= */

.pool-warning{
    border-color:rgba(245,158,11,.42)!important;
    background:
        linear-gradient(180deg,rgba(120,53,15,.18),rgba(44,22,7,.22))!important;
}
.pool-warning .vq-open-title,
.pool-warning .vq-open-primary,
.pool-warning .vq-history-title,
.pool-warning .vq-history-date,
.pool-warning .vq-history-meta,
.pool-warning .vq-attention-title{
    color:#fbbf24!important;
    font-weight:800!important;
}
.pool-overdue{
    border-color:rgba(248,113,113,.55)!important;
    background:
        linear-gradient(180deg,rgba(127,29,29,.22),rgba(69,10,10,.24))!important;
    box-shadow:
        0 0 0 1px rgba(248,113,113,.08),
        0 10px 30px rgba(127,29,29,.10);
}
.pool-overdue .vq-open-title,
.pool-overdue .vq-open-primary,
.pool-overdue .vq-history-title,
.pool-overdue .vq-history-date,
.pool-overdue .vq-history-meta,
.pool-overdue .vq-attention-title{
    color:#f87171!important;
    font-weight:900!important;
}
.vq-pool-deadline-warning{
    color:#fbbf24!important;
    font-weight:900!important;
}
.vq-pool-deadline-overdue{
    color:#f87171!important;
    font-weight:900!important;
}

.vq-stat-card.pool-tile-warning{
    border-color:rgba(245,158,11,.50)!important;
    box-shadow:0 0 0 1px rgba(245,158,11,.08),0 14px 34px rgba(120,53,15,.16);
}
.vq-stat-card.pool-tile-warning .vq-stat-label,
.vq-stat-card.pool-tile-warning .vq-stat-number{
    color:#fbbf24!important;
}
.vq-stat-card.pool-tile-overdue{
    border-color:rgba(248,113,113,.58)!important;
    box-shadow:0 0 0 1px rgba(248,113,113,.10),0 14px 36px rgba(127,29,29,.20);
}
.vq-stat-card.pool-tile-overdue .vq-stat-label,
.vq-stat-card.pool-tile-overdue .vq-stat-number{
    color:#f87171!important;
    font-weight:900!important;
}

.vq-shift-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
}
.vq-shift-card{
    min-height:72px;
    padding:12px;
    border-radius:13px;
    border:1px solid rgba(148,163,184,.09);
    background:rgba(255,255,255,.018);
}
.vq-shift-label{
    color:#7f93a8;
    font-size:7px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.vq-shift-value{
    margin-top:7px;
    color:#f8fafc;
    font-size:20px;
    font-weight:800;
}
.vq-shift-note{
    margin-top:4px;
    color:#62768b;
    font-size:7px;
}
.vq-shift-foot{
    margin-top:9px;
    padding-top:9px;
    border-top:1px solid rgba(148,163,184,.08);
    color:#71859a;
    font-size:7px;
    line-height:1.5;
}

@media(max-width:700px){
    .vq-shift-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 2.1
   Globális kereső + statisztika + lejárt Pool számláló
========================================================= */

.vq-overdue-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:28px;
    height:28px;
    margin-right:8px;
    padding:0 8px;
    border-radius:999px;
    color:white;
    background:#ef4444;
    border:2px solid rgba(255,255,255,.55);
    font-size:13px;
    font-weight:900;
    box-shadow:0 0 18px rgba(239,68,68,.55);
    vertical-align:middle;
    animation:vqCountBlink 1s steps(2,end) infinite;
}
@keyframes vqCountBlink{
    0%,45%{opacity:1;transform:scale(1)}
    46%,100%{opacity:.35;transform:scale(.94)}
}

.vq-global-search{
    position:relative;
    margin:10px 0 8px;
}
.vq-global-search input{
    height:44px;
    padding-left:42px;
    border-radius:14px;
    background:rgba(5,13,24,.72);
}
.vq-global-search-icon{
    position:absolute;
    left:15px;
    top:50%;
    transform:translateY(-50%);
    color:#6f859a;
    pointer-events:none;
}
.vq-search-results{
    display:none;
    margin-top:8px;
    max-height:320px;
    overflow:auto;
    border-radius:14px;
    border:1px solid rgba(148,163,184,.10);
    background:rgba(6,15,27,.97);
    box-shadow:0 20px 45px rgba(0,0,0,.38);
}
.vq-search-results.visible{display:block}
.vq-search-result{
    width:100%;
    display:flex;
    align-items:center;
    gap:11px;
    padding:11px 12px;
    color:#e2e8f0;
    text-align:left;
    border:0;
    border-bottom:1px solid rgba(148,163,184,.07);
    background:transparent;
}
.vq-search-result:last-child{border-bottom:0}
.vq-search-result:hover{background:rgba(34,211,238,.045)}
.vq-search-result-icon{
    width:34px;height:34px;flex:0 0 34px;
    display:grid;place-items:center;
    border-radius:10px;
    background:rgba(34,211,238,.06);
}
.vq-search-result-main{min-width:0;flex:1}
.vq-search-result-title{
    font-size:9px;
    font-weight:800;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.vq-search-result-meta{
    margin-top:3px;
    color:#71859a;
    font-size:7px;
}
.vq-search-result-hit{
    margin-top:3px;
    color:#a5b4c6;
    font-size:7px;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.vq-search-empty{
    padding:18px;
    color:#6f8297;
    text-align:center;
    font-size:8px;
}

.vq-statistics-toolbar{
    display:grid;
    grid-template-columns:220px 180px 180px auto;
    gap:9px;
    margin-bottom:14px;
}
.vq-statistics-toolbar select,
.vq-statistics-toolbar input{
    height:42px;
    border-radius:12px;
    font-size:9px;
}
.vq-statistics-range{
    display:none;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-bottom:12px;
}
.vq-statistics-range.visible{display:grid}
.vq-stats-summary{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
    margin-bottom:14px;
}
.vq-stats-card{
    padding:13px;
    border-radius:14px;
    border:1px solid rgba(148,163,184,.09);
    background:rgba(255,255,255,.018);
}
.vq-stats-card-label{
    color:#71869a;
    font-size:7px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:800;
}
.vq-stats-card-value{
    margin-top:6px;
    color:#f8fafc;
    font-size:22px;
    font-weight:800;
}
.vq-stats-card-note{
    margin-top:4px;
    color:#60758a;
    font-size:7px;
}
.vq-chart-wrap{
    padding:14px;
    border-radius:16px;
    border:1px solid rgba(148,163,184,.09);
    background:rgba(255,255,255,.015);
}
#vqStatsChart{
    width:100%;
    height:320px;
    display:block;
}
.vq-statistics-source{
    margin-top:10px;
    color:#65798f;
    font-size:7px;
}
@media(max-width:850px){
    .vq-statistics-toolbar{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:600px){
    .vq-statistics-toolbar,
    .vq-stats-summary{
        grid-template-columns:1fr;
    }
    .vq-statistics-range{
        grid-template-columns:1fr;
    }
    #vqStatsChart{height:260px}
}


/* =========================================================
   VARDIQO v2 — SPRINT 2.2
   Sticky navigation + search page + contextual new buttons
========================================================= */

.vq-brand-home{
    display:flex;
    align-items:center;
    gap:14px;
    text-decoration:none;
    color:inherit;
    cursor:pointer;
}
.vq-brand-home:hover .vq-brand-name{
    color:var(--vq-cyan);
}
#vqOverdueBanner{
    cursor:pointer;
}

.vq-page-actions{
    position:sticky;
    top:76px;
    z-index:105;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:0 0 14px;
    padding:9px 10px;
    border-radius:15px;
    border:1px solid rgba(148,163,184,.10);
    background:rgba(7,14,25,.92);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    box-shadow:0 12px 28px rgba(0,0,0,.24);
}
.vq-page-actions-left,
.vq-page-actions-right{
    display:flex;
    align-items:center;
    gap:8px;
}
.vq-page-action-btn{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:8px 11px;
    border-radius:11px;
    border:1px solid rgba(148,163,184,.12);
    background:rgba(255,255,255,.025);
    color:#cbd5e1;
    font-size:8px;
    font-weight:800;
    white-space:nowrap;
}
.vq-page-action-btn:hover{
    color:var(--vq-cyan);
    border-color:rgba(34,211,238,.28);
    background:rgba(34,211,238,.05);
}
.vq-page-action-btn.primary{
    color:white;
    border-color:rgba(34,211,238,.24);
    background:linear-gradient(145deg,rgba(34,211,238,.18),rgba(139,92,246,.16));
}
.vq-page-context{
    color:#71859a;
    font-size:8px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    max-width:320px;
}

.vq-search-page-head{
    margin-bottom:12px;
}
.vq-search-page-input{
    position:relative;
}
.vq-search-page-input input{
    height:48px;
    padding-left:43px;
    border-radius:14px;
}
.vq-search-page-grid{
    display:flex;
    flex-direction:column;
    gap:9px;
}
.vq-search-page-card{
    display:grid;
    grid-template-columns:42px minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    padding:13px;
    border-radius:15px;
    border:1px solid rgba(148,163,184,.10);
    background:rgba(255,255,255,.018);
    cursor:pointer;
}
.vq-search-page-card:hover{
    border-color:rgba(34,211,238,.28);
    background:rgba(34,211,238,.04);
}
.vq-search-page-hit{
    margin-top:5px;
    color:#a8b7c7;
    font-size:8px;
    line-height:1.45;
}
.vq-search-page-count{
    margin-top:6px;
    color:#71859a;
    font-size:8px;
}
.vq-search-page-empty{
    padding:30px 15px;
    text-align:center;
    color:#708398;
    border:1px dashed rgba(148,163,184,.12);
    border-radius:15px;
    font-size:9px;
}

@media(max-width:700px){
    .vq-page-actions{
        top:64px;
        padding:8px;
    }
    .vq-page-context{
        display:none;
    }
    .vq-page-action-btn{
        min-height:34px;
        padding:7px 9px;
        font-size:7px;
    }
    .vq-search-page-card{
        grid-template-columns:38px minmax(0,1fr);
    }
    .vq-search-page-card > .vq-status-badge{
        grid-column:1/-1;
        justify-self:start;
    }
}
@media print{
    .vq-page-actions{display:none!important}
}


/* =========================================================
   VARDIQO v2 — SPRINT 2.3
   Bottom quick actions + compact shift summary
========================================================= */

.vq-shift-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

.vq-quick-sheet-backdrop{
    position:fixed;
    inset:0;
    z-index:190;
    display:none;
    align-items:flex-end;
    justify-content:center;
    padding:16px;
    background:rgba(2,6,23,.58);
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
}
.vq-quick-sheet-backdrop.visible{
    display:flex;
}
.vq-quick-sheet{
    width:min(100%,520px);
    border-radius:22px;
    padding:16px;
    background:
        linear-gradient(180deg,rgba(13,25,43,.98),rgba(7,15,27,.99));
    border:1px solid rgba(148,163,184,.13);
    box-shadow:0 24px 80px rgba(0,0,0,.55);
    animation:sheetIn .18s ease;
}
@keyframes sheetIn{
    from{opacity:0;transform:translateY(18px)}
    to{opacity:1;transform:translateY(0)}
}
.vq-quick-sheet-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:12px;
}
.vq-quick-sheet-title{
    font-size:12px;
    font-weight:800;
}
.vq-quick-sheet-sub{
    margin-top:3px;
    color:#71859a;
    font-size:8px;
}
.vq-quick-sheet-close{
    width:34px;height:34px;
    display:grid;place-items:center;
    border-radius:10px;
    border:1px solid rgba(148,163,184,.12);
    background:rgba(255,255,255,.025);
    color:#94a3b8;
}
.vq-quick-sheet-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
}
.vq-quick-sheet-action{
    min-height:100px;
    padding:13px;
    border-radius:16px;
    border:1px solid rgba(148,163,184,.10);
    background:rgba(255,255,255,.02);
    color:#f8fafc;
    text-align:left;
}
.vq-quick-sheet-action:hover{
    border-color:rgba(34,211,238,.30);
    background:rgba(34,211,238,.045);
}
.vq-quick-sheet-icon{
    width:36px;height:36px;
    display:grid;place-items:center;
    border-radius:11px;
    margin-bottom:11px;
    background:rgba(34,211,238,.07);
    font-size:16px;
}
.vq-quick-sheet-action strong{
    display:block;
    font-size:9px;
}
.vq-quick-sheet-action small{
    display:block;
    margin-top:4px;
    color:#6f8297;
    font-size:7px;
    line-height:1.35;
}
.vq-nav-btn.stats-nav{
    color:#718499;
}
.vq-nav-btn.stats-nav:hover,
.vq-nav-btn.stats-nav.active{
    color:var(--vq-purple);
    background:rgba(139,92,246,.08);
}

@media(max-width:520px){
    .vq-quick-sheet-grid{
        grid-template-columns:1fr;
    }
    .vq-quick-sheet-action{
        min-height:68px;
        display:flex;
        align-items:center;
        gap:10px;
    }
    .vq-quick-sheet-icon{
        margin-bottom:0;
        flex:0 0 36px;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 2.4
   Bent töltött idő + egységes jegyzőkönyv + nagyobb gyorsgombok
========================================================= */

.vq-secondary-btn{
    padding:10px 14px!important;
    font-size:9px!important;
    min-height:38px;
}
.vq-secondary-actions{
    gap:9px!important;
    padding-bottom:8px!important;
}

.vq-presence-timer{
    display:inline-flex;
    align-items:center;
    gap:5px;
    margin-left:6px;
    color:#67e8f9;
    font-size:8px;
    font-weight:900;
    font-variant-numeric:tabular-nums;
}
.vq-presence-timer::before{
    content:"◷";
    opacity:.8;
}

.vq-protocol-selector{
    margin-bottom:14px;
    padding:15px;
    border-radius:16px;
    border:1px solid rgba(34,211,238,.13);
    background:
        linear-gradient(180deg,rgba(12,28,47,.90),rgba(8,18,32,.92));
}
.vq-protocol-selector label{
    display:block;
    margin-bottom:7px;
    color:#8ca1b6;
    font-size:8px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.vq-protocol-selector select{
    height:46px;
    border-radius:13px;
    font-size:10px;
    font-weight:700;
}
.vq-protocol-selector-help{
    margin-top:7px;
    color:#657a90;
    font-size:8px;
    line-height:1.45;
}
.vq-protocol-empty{
    padding:28px 16px;
    text-align:center;
    border:1px dashed rgba(148,163,184,.12);
    border-radius:15px;
    color:#71859a;
    font-size:9px;
    line-height:1.6;
}

.vq-shift-card.clickable{
    cursor:pointer;
    transition:.18s ease;
}
.vq-shift-card.clickable:hover{
    transform:translateY(-2px);
    border-color:rgba(34,211,238,.28);
    background:rgba(34,211,238,.035);
}

@media(max-width:700px){
    .vq-secondary-btn{
        padding:10px 13px!important;
        font-size:8.5px!important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 2.5
   Széthúzott gyorsgombok + részletes káreseti jegyzőkönyv
========================================================= */

.vq-secondary-actions{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:10px!important;
    overflow:visible!important;
}
.vq-secondary-btn{
    width:100%;
    min-width:0;
    min-height:42px;
    padding:10px 12px!important;
    white-space:normal!important;
    text-align:center;
    line-height:1.25;
}
.vq-damage-note{
    margin-top:10px;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(245,158,11,.15);
    background:rgba(245,158,11,.04);
    color:#8799ab;
    font-size:8px;
    line-height:1.5;
}
@media(max-width:1000px){
    .vq-secondary-actions{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}
@media(max-width:600px){
    .vq-secondary-actions{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 2.6
   Káreseti jegyzőkönyv tanúfolyam + 3 nagy gyorsgomb egy sorban
========================================================= */

.vq-primary-actions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.vq-witness-section{
    display:none;
}
.vq-witness-section.visible{
    display:block;
    animation:enter .18s ease;
}
.vq-inline-question{
    margin-top:10px;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(34,211,238,.12);
    background:rgba(34,211,238,.035);
    color:#879bad;
    font-size:8px;
    line-height:1.5;
}
@media(max-width:700px){
    .vq-primary-actions{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:7px!important;
    }
    .vq-primary-action{
        min-height:74px!important;
        padding:10px!important;
        gap:8px!important;
    }
    .vq-primary-icon{
        width:36px!important;
        height:36px!important;
        flex-basis:36px!important;
        font-size:16px!important;
    }
    .vq-primary-title{
        font-size:9px!important;
    }
    .vq-primary-sub{
        display:none!important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 2.8
========================================================= */
.vq-witness-container{display:flex;flex-direction:column;gap:10px}
.vq-witness-number{color:var(--vq-cyan);font-weight:900}
.vq-participant-table select,.vq-participant-table input{min-width:120px}
.vq-participant-reason{display:none;margin-top:6px}
.vq-participant-reason.visible{display:block}
.vq-participant-signature{min-width:230px}
.vq-participant-signature .sig-canvas{height:100px}
.vq-required-signature-note{margin-top:8px;color:#fbbf24;font-size:8px;font-weight:800}
@media(max-width:850px){.vq-participant-table{min-width:880px}}


/* =========================================================
   VARDIQO v2 — SPRINT 2.9
   Tiszta jegyzőkönyv-blokkok + jogszabályi blokk
========================================================= */

.vq-legal-note{
    margin-bottom:14px;
    padding:13px 14px;
    border-radius:14px;
    border:1px solid rgba(34,211,238,.15);
    background:
        linear-gradient(135deg,rgba(34,211,238,.055),rgba(139,92,246,.035));
    color:#9eb1c4;
    font-size:8px;
    line-height:1.65;
}
.vq-legal-note strong{
    color:#67e8f9;
    font-size:8.5px;
}
.vq-legal-note .vq-legal-title{
    margin-bottom:5px;
    color:#e2e8f0;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}


/* =========================================================
   VARDIQO v2 — SPRINT 3.1
   Kamerajegyzőkönyv + Csendes tűzriadó véglegesítési folyamat
========================================================= */

.vq-legal-section{
    margin-bottom:14px;
    padding:13px 14px;
    border-radius:14px;
    border:1px solid rgba(34,211,238,.13);
    background:rgba(34,211,238,.035);
    color:#9db0c2;
    font-size:8px;
    line-height:1.65;
}
.vq-legal-section strong{color:#67e8f9}
.vq-camera-table input,
.vq-camera-table select{
    min-width:150px;
}
.vq-camera-note{
    margin-top:10px;
    padding:10px 12px;
    border-radius:12px;
    border:1px solid rgba(148,163,184,.10);
    background:rgba(255,255,255,.018);
    color:#8295a8;
    font-size:8px;
    line-height:1.55;
}
.vq-participant-row-ready{
    border-left:2px solid rgba(34,211,238,.32);
}


/* =========================================================
   VARDIQO v2 — SPRINT 3.3
   Kameravisszanézés feltételes blokkok
========================================================= */

.vq-conditional-section{
    display:none;
}
.vq-conditional-section.visible{
    display:block;
    animation:enter .18s ease;
}


/* =========================================================
   VARDIQO v2 — SPRINT 3.4
   Központi, teljes körű kereső
========================================================= */

.vq-search-filters{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:9px;
    margin:10px 0 12px;
}
.vq-search-filters select,
.vq-search-filters input{
    min-height:40px;
    border-radius:11px;
    font-size:8px;
}
.vq-search-filter-label{
    display:block;
    margin-bottom:5px;
    color:#70859a;
    font-size:7px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.07em;
}
.vq-search-clear{
    display:flex;
    justify-content:flex-end;
    margin-bottom:10px;
}
.vq-search-highlight{
    color:#67e8f9;
    font-weight:900;
}
@media(max-width:850px){
    .vq-search-filters{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:520px){
    .vq-search-filters{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 3.5
   Feltételes időszűrő + Telephely/Cég/Név szűrők
========================================================= */

.vq-search-filters{
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.vq-search-datetime-wrap{
    display:none;
}
.vq-search-datetime-wrap.visible{
    display:block;
}
.vq-search-datetime-pair{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}
@media(max-width:900px){
    .vq-search-filters{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:520px){
    .vq-search-filters{
        grid-template-columns:1fr;
    }
    .vq-search-datetime-pair{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 3.7
   PocketBase server-first / multi-user
========================================================= */
.vq-server-state{
    display:inline-flex;
    align-items:center;
    gap:5px;
    margin-top:4px;
    font-size:7px;
    font-weight:800;
    color:#64748b;
}
.vq-server-state::before{
    content:"";
    width:6px;
    height:6px;
    border-radius:50%;
    background:#64748b;
}
.vq-server-state.online{
    color:#34d399;
}
.vq-server-state.online::before{
    background:#34d399;
    box-shadow:0 0 10px rgba(52,211,153,.65);
}
.vq-server-state.error{
    color:#fb7185;
}
.vq-server-state.error::before{
    background:#fb7185;
    box-shadow:0 0 10px rgba(251,113,133,.55);
}


/* =========================================================
   VARDIQO v2 — SPRINT 3.9
   RESPONSIVE / TABLET / DESKTOP SCALE
========================================================= */

/* Alap skálázás */
html{
    font-size:16px;
}

body{
    font-size:14px;
}

input,
select,
textarea,
button{
    font-size:clamp(12px, .75vw, 15px);
}

label{
    font-size:clamp(10px, .65vw, 13px);
}

.vq-brand-name{
    font-size:clamp(18px, 1.7vw, 25px);
}

.vq-brand-tagline{
    font-size:clamp(8px, .7vw, 11px);
}

.vq-hero-title{
    font-size:clamp(28px, 3.3vw, 46px);
}

.vq-hero-subtitle{
    font-size:clamp(12px, 1vw, 16px);
}

.vq-eyebrow,
.vq-stat-label,
.vq-panel-subtitle,
.vq-quick-caption,
.vq-recent-meta,
.vq-history-meta,
.vq-open-meta,
.vq-detail-id,
.vq-search-filter-label{
    font-size:clamp(9px, .68vw, 12px);
}

.vq-stat-number{
    font-size:clamp(28px, 2.5vw, 38px);
}

.vq-stat-note{
    font-size:clamp(9px, .72vw, 12px);
}

.vq-panel-title,
.section-title{
    font-size:clamp(14px, 1vw, 18px);
}

.vq-quick-title,
.menu-title,
.document-name,
.vq-open-title,
.vq-history-title{
    font-size:clamp(12px, .9vw, 15px);
}

.menu-description,
.document-type,
.vq-open-primary,
.vq-detail-value,
.vq-fields-table td{
    font-size:clamp(10px, .8vw, 13px);
}

.form-section-title{
    font-size:clamp(12px, .9vw, 15px);
}

.vq-status,
.vq-status-badge,
.badge,
.vq-pill{
    font-size:clamp(9px, .68vw, 11px);
}

/* Nagyobb érintési felületek */
input,
select,
textarea{
    min-height:44px;
    padding:12px 14px;
}

textarea{
    min-height:110px;
}

.action,
.add-row,
.back,
.vq-small-action,
.vq-view-btn,
.vq-close-btn,
.vq-page-action-btn{
    min-height:44px;
}

/* =========================================================
   TABLET
========================================================= */
@media (min-width: 700px){

    body{
        padding-left:20px;
        padding-right:20px;
    }

    .app,
    .vq-appbar-inner{
        max-width:1280px;
    }

    .card{
        padding:22px;
    }

    .vq-dashboard-hero{
        padding:30px;
    }

    .vq-panel{
        padding:22px;
    }

    .vq-quick{
        min-height:126px;
        padding:16px;
    }

    .vq-quick-icon{
        width:42px;
        height:42px;
        font-size:18px;
    }

    .form-section{
        padding:22px;
    }
}

/* =========================================================
   DESKTOP
========================================================= */
@media (min-width: 1024px){

    body{
        padding-left:28px;
        padding-right:28px;
    }

    .app,
    .vq-appbar-inner{
        max-width:1440px;
    }

    .vq-appbar{
        padding-top:16px;
        padding-bottom:16px;
    }

    .vq-mark{
        width:50px;
        height:50px;
        flex-basis:50px;
    }

    .vq-dashboard-hero{
        padding:34px 36px;
    }

    .vq-search{
        max-width:820px;
    }

    .vq-search-box input{
        height:54px;
        font-size:15px;
    }

    .vq-stat-grid{
        gap:16px;
    }

    .vq-stat-card{
        min-height:145px;
        padding:22px;
    }

    .vq-dashboard-layout{
        grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);
        gap:20px;
    }

    .vq-panel{
        padding:24px;
    }

    .vq-quick-grid{
        gap:14px;
    }

    .vq-quick{
        min-height:138px;
        padding:18px;
    }

    #mainView .menu-grid{
        gap:16px;
    }

    #mainView .menu-btn{
        min-height:110px;
        padding:20px;
    }

    .card{
        padding:26px;
    }

    .form-section{
        padding:24px;
        border-radius:18px;
    }

    .grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:16px 18px;
    }

    .field{
        margin-bottom:14px;
    }

    input,
    select,
    textarea{
        font-size:14px;
        border-radius:11px;
    }

    .signature{
        padding:18px;
    }

    .sig-canvas{
        height:150px;
    }

    .vq-history-grid{
        grid-template-columns:minmax(360px,.85fr) minmax(0,1.35fr);
        gap:18px;
    }

    .vq-history-list{
        max-height:72vh;
    }

    .vq-history-item{
        padding:16px;
    }

    .vq-open-item{
        padding:17px;
    }

    .vq-search-filters{
        grid-template-columns:repeat(4,minmax(180px,1fr));
        gap:12px;
    }

    .vq-search-filters select,
    .vq-search-filters input{
        min-height:46px;
        font-size:13px;
    }

    .vq-bottom-nav{
        width:min(calc(100% - 40px),760px);
        min-height:70px;
    }

    .vq-nav-btn{
        min-width:82px;
        height:54px;
        font-size:18px;
    }

    .vq-nav-btn small{
        font-size:9px;
    }

    .vq-fab{
        width:58px;
        height:58px;
        font-size:28px;
    }
}

/* =========================================================
   LARGE DESKTOP
========================================================= */
@media (min-width: 1440px){

    .app,
    .vq-appbar-inner{
        max-width:1580px;
    }

    .vq-dashboard-hero{
        padding:38px 42px;
    }

    .vq-stat-card{
        min-height:155px;
    }

    .vq-quick{
        min-height:148px;
    }

    .grid{
        gap:18px 22px;
    }
}

/* =========================================================
   PHONE SAFETY
========================================================= */
@media (max-width: 699px){

    body{
        font-size:13px;
    }

    input,
    select,
    textarea,
    button{
        font-size:12px;
    }

    .vq-hero-title{
        font-size:26px;
    }

    .vq-hero-subtitle{
        font-size:11px;
    }

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

    .vq-search-filters{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 4.0
   HIGH READABILITY / DESKTOP ACCESSIBILITY PASS
========================================================= */

/* A másodlagos szövegek se legyenek halványak */
.vq-brand-tagline,
.vq-hero-subtitle,
.vq-stat-label,
.vq-stat-note,
.vq-panel-subtitle,
.vq-quick-caption,
.vq-recent-meta,
.vq-history-meta,
.vq-open-meta,
.vq-detail-id,
.vq-search-filter-label,
.menu-description,
.document-type,
.vq-open-primary,
.vq-detail-value,
.form-section-title,
label,
small,
.muted,
.vq-muted,
.vq-usertext span,
.vq-server-state{
    color:#cbd5e1 !important;
    opacity:1 !important;
}

/* Világos kártyákon sötét, erős szöveg */
.card,
.form-section,
.vq-history-item,
.vq-open-item,
.vq-fields-table,
.vq-detail-card{
    color:#172033;
}
.card label,
.form-section label,
.vq-fields-table th,
.vq-fields-table td,
.vq-detail-card,
.card .muted,
.form-section .muted{
    color:#334155 !important;
    opacity:1 !important;
}

/* Input olvashatóság */
input,
select,
textarea{
    color:#111827 !important;
    background:#ffffff !important;
    font-weight:600;
}
input::placeholder,
textarea::placeholder{
    color:#64748b !important;
    opacity:1;
}

/* Desktopon lényegesen nagyobb skála */
@media (min-width:1024px){

    body{
        font-size:17px !important;
        line-height:1.55;
    }

    .app,
    .vq-appbar-inner{
        max-width:1580px;
    }

    .vq-brand-name{
        font-size:28px !important;
    }

    .vq-brand-tagline{
        font-size:13px !important;
    }

    .vq-usertext strong{
        font-size:15px !important;
    }

    .vq-usertext span,
    .vq-server-state{
        font-size:12px !important;
    }

    .vq-hero-title{
        font-size:50px !important;
        line-height:1.05;
    }

    .vq-hero-subtitle{
        font-size:18px !important;
        line-height:1.5;
    }

    .vq-eyebrow{
        font-size:13px !important;
    }

    .vq-stat-number{
        font-size:42px !important;
    }

    .vq-stat-label{
        font-size:14px !important;
        font-weight:800;
    }

    .vq-stat-note{
        font-size:13px !important;
    }

    .vq-panel-title,
    .section-title{
        font-size:21px !important;
    }

    .vq-panel-subtitle{
        font-size:14px !important;
    }

    .vq-quick-title,
    .menu-title,
    .document-name,
    .vq-open-title,
    .vq-history-title{
        font-size:17px !important;
        line-height:1.35;
    }

    .vq-quick-caption,
    .menu-description,
    .document-type,
    .vq-open-primary,
    .vq-open-meta,
    .vq-history-meta,
    .vq-detail-value{
        font-size:14px !important;
        line-height:1.5;
    }

    .vq-status,
    .vq-status-badge,
    .badge,
    .vq-pill{
        font-size:12px !important;
    }

    label,
    .vq-search-filter-label{
        font-size:14px !important;
        font-weight:800 !important;
        line-height:1.35;
    }

    input,
    select,
    textarea,
    button{
        font-size:16px !important;
    }

    input,
    select{
        min-height:52px;
    }

    textarea{
        min-height:135px;
    }

    .action,
    .add-row,
    .back,
    .vq-small-action,
    .vq-view-btn,
    .vq-close-btn,
    .vq-page-action-btn{
        min-height:50px;
        font-size:15px !important;
        font-weight:800;
    }

    .vq-search-box input{
        height:58px;
        font-size:17px !important;
    }

    .vq-quick{
        min-height:158px;
    }

    .vq-quick-icon{
        width:48px;
        height:48px;
        font-size:21px;
    }

    .vq-stat-card{
        min-height:165px;
    }

    .form-section-title{
        font-size:17px !important;
        font-weight:900;
    }

    .vq-fields-table th{
        font-size:14px !important;
    }

    .vq-fields-table td{
        font-size:15px !important;
    }

    .vq-nav-btn{
        font-size:21px !important;
    }

    .vq-nav-btn small{
        font-size:11px !important;
        font-weight:800;
    }
}

/* Nagy monitor */
@media (min-width:1440px){
    body{
        font-size:18px !important;
    }

    .vq-hero-title{
        font-size:56px !important;
    }

    .vq-panel-title,
    .section-title{
        font-size:23px !important;
    }

    input,
    select,
    textarea,
    button{
        font-size:17px !important;
    }

    label,
    .vq-search-filter-label{
        font-size:15px !important;
    }

    .vq-quick-title,
    .menu-title,
    .document-name,
    .vq-open-title,
    .vq-history-title{
        font-size:18px !important;
    }

    .vq-quick-caption,
    .menu-description,
    .document-type,
    .vq-open-primary,
    .vq-open-meta,
    .vq-history-meta,
    .vq-detail-value{
        font-size:15px !important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 4.1
   DESKTOP READABILITY / CLEAN RESPONSIVE LAYOUT
========================================================= */

/* --- Global color hierarchy on dark surfaces --- */
body,
.vq-appbar,
.vq-dashboard-hero,
.vq-panel,
.vq-stat-card,
.vq-quick,
.vq-bottom-nav,
.vq-open-item,
.vq-history-item{
    color:#f8fafc;
}

.vq-muted,
.muted,
.vq-panel-subtitle,
.vq-stat-note,
.vq-quick-caption,
.vq-open-meta,
.vq-history-meta,
.vq-detail-id,
.vq-usertext span,
.vq-server-state,
.menu-description,
.document-type{
    color:#cbd5e1 !important;
    opacity:1 !important;
}

.vq-eyebrow,
.vq-brand-tagline,
.vq-stat-label,
.vq-search-filter-label{
    color:#94a3b8 !important;
    opacity:1 !important;
}

/* --- Desktop typography --- */
@media (min-width:1024px){

    body{
        font-size:16px !important;
        line-height:1.5;
    }

    .app,
    .vq-appbar-inner{
        max-width:1500px;
    }

    .vq-appbar{
        padding:18px 24px;
    }

    .vq-mark{
        width:54px;
        height:54px;
        flex-basis:54px;
    }

    .vq-brand-name{
        font-size:30px !important;
        line-height:1.05;
        letter-spacing:.01em;
    }

    .vq-brand-tagline{
        font-size:13px !important;
        font-weight:800;
        letter-spacing:.18em;
    }

    .vq-usertext strong{
        font-size:16px !important;
    }

    .vq-usertext span,
    .vq-server-state{
        font-size:12px !important;
    }

    .vq-dashboard-hero{
        padding:30px 34px;
        border-radius:24px;
    }

    .vq-eyebrow{
        font-size:13px !important;
        font-weight:900;
    }

    .vq-hero-title{
        font-size:34px !important;
        line-height:1.08;
        margin-bottom:8px;
    }

    .vq-hero-subtitle{
        font-size:16px !important;
        line-height:1.5;
        max-width:900px;
    }

    .vq-search{
        max-width:none;
    }

    .vq-search-box input{
        height:58px;
        font-size:16px !important;
        padding-left:52px;
    }

    /* main three actions */
    .vq-quick-grid{
        gap:16px;
    }

    .vq-quick{
        min-height:108px;
        padding:18px 20px;
        border-radius:20px;
        align-items:center;
    }

    .vq-quick-icon{
        width:54px;
        height:54px;
        font-size:24px;
        border-radius:16px;
        flex:0 0 54px;
    }

    .vq-quick-title{
        font-size:18px !important;
        line-height:1.25;
    }

    .vq-quick-caption{
        font-size:14px !important;
        line-height:1.35;
        margin-top:3px;
    }

    /* small shortcut pills */
    #mainView .menu-grid{
        gap:12px;
    }

    #mainView .menu-btn{
        min-height:58px;
        padding:12px 16px;
        font-size:15px !important;
        border-radius:16px;
    }

    .menu-title{
        font-size:15px !important;
        line-height:1.2;
    }

    .menu-description{
        font-size:13px !important;
    }

    /* KPI row */
    .vq-stat-grid{
        gap:14px;
    }

    .vq-stat-card{
        min-height:156px;
        padding:20px;
        border-radius:20px;
    }

    .vq-stat-label{
        font-size:14px !important;
        font-weight:900;
        line-height:1.3;
    }

    .vq-stat-number{
        font-size:42px !important;
        line-height:1;
        margin:12px 0 8px;
    }

    .vq-stat-note{
        font-size:14px !important;
        line-height:1.35;
    }

    /* lower panels */
    .vq-dashboard-layout{
        grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);
        gap:16px;
    }

    .vq-panel{
        padding:22px;
        border-radius:20px;
    }

    .vq-panel-title{
        font-size:22px !important;
        line-height:1.2;
    }

    .vq-panel-subtitle{
        font-size:15px !important;
        line-height:1.4;
        margin-top:4px;
    }

    /* Forms */
    .card{
        padding:26px;
        border-radius:22px;
    }

    .form-section{
        padding:22px;
        border-radius:18px;
    }

    .form-section-title{
        font-size:18px !important;
        line-height:1.25;
        margin-bottom:16px;
    }

    .grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:18px 20px;
    }

    label{
        font-size:14px !important;
        font-weight:800 !important;
        line-height:1.35;
        color:#334155 !important;
    }

    input,
    select,
    textarea{
        font-size:16px !important;
        min-height:50px;
        padding:12px 14px;
        border-radius:12px;
    }

    textarea{
        min-height:130px;
    }

    .action,
    .add-row,
    .back,
    .vq-small-action,
    .vq-view-btn,
    .vq-close-btn,
    .vq-page-action-btn{
        min-height:48px;
        font-size:15px !important;
        font-weight:800;
        padding:10px 16px;
    }

    /* Lists */
    .vq-open-item,
    .vq-history-item{
        padding:18px;
        border-radius:18px;
    }

    .vq-open-title,
    .vq-history-title,
    .document-name{
        font-size:17px !important;
        line-height:1.3;
    }

    .vq-open-primary,
    .vq-detail-value,
    .document-type{
        font-size:14px !important;
        line-height:1.45;
    }

    .vq-open-meta,
    .vq-history-meta{
        font-size:13px !important;
        line-height:1.45;
    }

    /* Search / statistics */
    .vq-search-filters{
        grid-template-columns:repeat(4,minmax(180px,1fr));
        gap:12px;
    }

    .vq-search-filter-label{
        font-size:13px !important;
        font-weight:900;
    }

    /* Bottom nav */
    .vq-bottom-nav{
        width:min(calc(100% - 48px),780px);
        min-height:72px;
        padding:8px 14px;
        border-radius:22px;
    }

    .vq-nav-btn{
        min-width:88px;
        height:56px;
        font-size:20px !important;
    }

    .vq-nav-btn small{
        font-size:11px !important;
        font-weight:800;
    }

    .vq-fab{
        width:62px;
        height:62px;
        font-size:30px;
    }
}

/* --- Large desktop refinement --- */
@media (min-width:1440px){

    .app,
    .vq-appbar-inner{
        max-width:1580px;
    }

    .vq-hero-title{
        font-size:38px !important;
    }

    .vq-stat-card{
        min-height:166px;
    }

    .vq-panel-title{
        font-size:23px !important;
    }
}

/* --- Tablet --- */
@media (min-width:700px) and (max-width:1023px){

    body{
        font-size:15px;
    }

    .vq-hero-title{
        font-size:30px !important;
    }

    .vq-quick-title{
        font-size:16px !important;
    }

    .vq-quick-caption,
    .vq-stat-note,
    .vq-panel-subtitle{
        font-size:13px !important;
    }
}

/* --- Phone safety --- */
@media (max-width:699px){

    body{
        font-size:13px;
    }

    .vq-hero-title{
        font-size:26px !important;
    }

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

    .vq-search-filters{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 4.2
   PROFESSIONAL READABILITY SYSTEM
   Full application: dashboard + forms + protocols + lists
========================================================= */

@media screen {

    :root{
        --vq-readable-main:#f8fafc;
        --vq-readable-body:#e2e8f0;
        --vq-readable-secondary:#cbd5e1;
        --vq-readable-muted:#aebdd0;
        --vq-readable-faint:#94a3b8;
        --vq-readable-input:#111827;
        --vq-readable-input-muted:#64748b;
    }

    /*
       DARK SURFACES
       Do not allow low-contrast inherited dark text.
    */
    body,
    .card,
    .form-section,
    .signature,
    .vq-panel,
    .vq-stat-card,
    .vq-open-item,
    .vq-history-item,
    .vq-detail-card,
    .vq-legal-note,
    .vq-legal-section,
    .vq-camera-note,
    .vq-lifecycle-note,
    .vq-protocol-selector,
    .vq-inline-question,
    .vq-person-exercise,
    .vq-witness-block,
    .issue-detail,
    .issue-note,
    .issue-photo-card,
    .vq-conditional-section{
        color:var(--vq-readable-main);
    }

    /*
       Form and document text.
       This is deliberately broad because many protocol fields are
       created dynamically by JavaScript.
    */
    .form-section :where(
        p, span, div, li, td, th, label,
        strong, em, small
    ),
    .vq-legal-note :where(p, span, div, li, strong, em, small),
    .vq-legal-section :where(p, span, div, li, strong, em, small),
    .vq-camera-note :where(p, span, div, li, strong, em, small),
    .vq-lifecycle-note :where(p, span, div, li, strong, em, small),
    .vq-person-exercise :where(p, span, div, li, strong, em, small),
    .signature :where(p, span, div, strong, small),
    .issue-detail :where(p, span, div, strong, small),
    .issue-note :where(p, span, div, strong, small){
        color:var(--vq-readable-body) !important;
        opacity:1 !important;
    }

    /* Headings and section titles keep the VARDIQO accent */
    .section-title,
    .form-section-title,
    .vq-legal-title,
    .signature-title,
    .vq-detail-title,
    .vq-panel-title,
    .vq-open-title,
    .vq-history-title{
        color:#67e8f9 !important;
        opacity:1 !important;
        text-shadow:none;
    }

    /* Labels are never dark on dark again */
    label,
    .field > label,
    .form-section label,
    .vq-search-filter-label,
    .vq-detail-label,
    .issue-photo-question,
    .vq-participant-table th,
    .dynamic-table th,
    .vq-camera-table th{
        color:var(--vq-readable-secondary) !important;
        opacity:1 !important;
        font-weight:800 !important;
    }

    /* Required marks must remain obvious */
    .vq-required-mark,
    label .required,
    label [style*="red"]{
        color:#fb7185 !important;
    }

    /* Explanatory/secondary text – still clearly visible */
    .muted,
    .vq-muted,
    .menu-description,
    .document-type,
    .form-meta,
    .document-id,
    .qr-info,
    .signature-tools,
    .vq-camera-note,
    .vq-protocol-selector-help,
    .vq-lifecycle-note,
    .vq-history-meta,
    .vq-open-meta,
    .vq-detail-id,
    .vq-panel-subtitle,
    .vq-stat-note,
    .vq-quick-caption,
    .vq-primary-sub,
    .vq-quick-sheet-sub,
    .vq-attention-meta,
    .vq-attention-time,
    .issue-photo-meta,
    .issue-photo-name{
        color:var(--vq-readable-secondary) !important;
        opacity:1 !important;
    }

    /* Footer may be quieter, but not invisible */
    .footer{
        color:var(--vq-readable-faint) !important;
        opacity:1 !important;
    }

    /*
       INPUTS
       Light field + dark text is intentionally kept because it gives
       the highest contrast for long form completion.
    */
    input,
    select,
    textarea,
    .qr-field{
        background:#f8fafc !important;
        color:var(--vq-readable-input) !important;
        border-color:#94a3b8 !important;
        font-weight:600;
        caret-color:#111827;
    }

    input::placeholder,
    textarea::placeholder{
        color:var(--vq-readable-input-muted) !important;
        opacity:1 !important;
        font-weight:500;
    }

    select option,
    select optgroup{
        background:#ffffff;
        color:#111827;
    }

    input:disabled,
    select:disabled,
    textarea:disabled,
    input[readonly],
    textarea[readonly]{
        color:#334155 !important;
        background:#e2e8f0 !important;
        opacity:1 !important;
    }

    /* Tables inside documents */
    .table-wrap{
        border-radius:12px;
    }

    table{
        color:var(--vq-readable-body);
    }

    th{
        color:#67e8f9 !important;
        opacity:1 !important;
        font-weight:900;
    }

    td{
        color:var(--vq-readable-body) !important;
        opacity:1 !important;
    }

    /* Status / special-color text must survive broad readability rules */
    .hash,
    .badge-secure,
    .vq-presence-timer,
    .vq-server-state.online,
    .vq-overdue-count{
        opacity:1 !important;
    }

    .issue-status,
    .badge,
    .vq-pill,
    .vq-status,
    .vq-status-badge{
        font-weight:900 !important;
    }

    /* Buttons */
    button,
    .action,
    .back,
    .add-row,
    .vq-page-action-btn,
    .vq-small-action,
    .vq-view-btn,
    .vq-close-btn{
        font-weight:800;
    }
}


/* =========================================================
   DESKTOP — readable from a normal monitor distance
========================================================= */
@media screen and (min-width:1024px){

    body{
        font-size:17px !important;
        line-height:1.55;
    }

    .app,
    .vq-appbar-inner{
        max-width:1580px;
    }

    /* Header */
    .vq-brand-name{
        font-size:31px !important;
    }

    .vq-brand-tagline{
        font-size:14px !important;
        color:#cbd5e1 !important;
    }

    .vq-usertext strong{
        font-size:17px !important;
    }

    .vq-usertext span,
    .vq-server-state{
        font-size:13px !important;
        color:#cbd5e1 !important;
    }

    /* Dashboard */
    .vq-hero-title{
        font-size:38px !important;
    }

    .vq-hero-subtitle{
        font-size:17px !important;
        color:#cbd5e1 !important;
    }

    .vq-eyebrow,
    .vq-stat-label{
        font-size:14px !important;
        color:#cbd5e1 !important;
    }

    .vq-stat-note{
        font-size:15px !important;
    }

    .vq-quick-title{
        font-size:19px !important;
    }

    .vq-quick-caption{
        font-size:15px !important;
    }

    .menu-title{
        font-size:16px !important;
    }

    .menu-description{
        font-size:14px !important;
    }

    .vq-panel-title,
    .section-title{
        font-size:22px !important;
    }

    .vq-panel-subtitle{
        font-size:16px !important;
    }

    /* DOCUMENT HEADER / LIST */
    .document-name{
        font-size:18px !important;
    }

    .document-type{
        font-size:14px !important;
    }

    .document-number{
        font-size:16px !important;
    }

    .document-id,
    .form-meta{
        font-size:14px !important;
    }

    /* DOCUMENT / FORM – minimum readable scale */
    .form-section{
        padding:24px !important;
        margin-bottom:18px;
    }

    .form-section-title{
        font-size:18px !important;
        line-height:1.35;
        margin-bottom:18px;
    }

    label,
    .field > label{
        font-size:15px !important;
        line-height:1.35;
        letter-spacing:.025em;
        margin-bottom:8px;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:16px !important;
        line-height:1.45;
        min-height:52px;
        padding:13px 15px;
    }

    textarea,
    textarea.qr-field{
        min-height:135px;
    }

    /* Plain legal/instruction text in documents */
    .form-section :where(p, li),
    .vq-legal-note,
    .vq-legal-section,
    .vq-camera-note,
    .vq-lifecycle-note,
    .vq-protocol-selector-help,
    .vq-inline-question,
    .issue-note,
    .issue-detail{
        font-size:15px !important;
        line-height:1.6 !important;
    }

    .vq-legal-title{
        font-size:18px !important;
        line-height:1.35;
    }

    /* Dynamic participants / witnesses / silent fire drill */
    .vq-participant-table th,
    .dynamic-table th,
    .vq-camera-table th{
        font-size:14px !important;
        line-height:1.4;
    }

    .vq-participant-table td,
    .dynamic-table td,
    .vq-camera-table td{
        font-size:15px !important;
        line-height:1.5;
    }

    .vq-person-exercise .form-section-title,
    .vq-witness-block .form-section-title{
        font-size:17px !important;
    }

    /* Signature blocks */
    .signature{
        padding:18px;
    }

    .signature-title{
        font-size:15px !important;
    }

    .signature-tools,
    .clear-signature{
        font-size:13px !important;
    }

    .sig-canvas{
        height:165px;
    }

    /* QR / fingerprint / lifecycle */
    .qr-info,
    .hash,
    .vq-lifecycle-note{
        font-size:14px !important;
        line-height:1.55;
    }

    /* Actions */
    .action,
    .back,
    .add-row,
    .vq-page-action-btn,
    .vq-small-action,
    .vq-view-btn,
    .vq-close-btn{
        font-size:15px !important;
        min-height:50px;
    }

    /* Search / archive / open lists */
    .vq-open-title,
    .vq-history-title{
        font-size:18px !important;
    }

    .vq-open-primary,
    .vq-detail-value{
        font-size:16px !important;
    }

    .vq-open-meta,
    .vq-history-meta,
    .vq-detail-id{
        font-size:14px !important;
    }

    .vq-detail-label{
        font-size:14px !important;
    }

    .vq-fields-table th{
        font-size:14px !important;
    }

    .vq-fields-table td{
        font-size:15px !important;
    }

    /* Bottom navigation */
    .vq-nav-btn small{
        font-size:12px !important;
    }

    .footer{
        font-size:12px !important;
    }
}


/* =========================================================
   LARGE DESKTOP
========================================================= */
@media screen and (min-width:1440px){

    body{
        font-size:18px !important;
    }

    .vq-hero-title{
        font-size:40px !important;
    }

    label,
    .field > label{
        font-size:16px !important;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:17px !important;
    }

    .form-section :where(p, li),
    .vq-legal-note,
    .vq-legal-section,
    .vq-camera-note,
    .vq-lifecycle-note,
    .vq-protocol-selector-help,
    .vq-inline-question,
    .issue-note,
    .issue-detail{
        font-size:16px !important;
    }

    .vq-participant-table td,
    .dynamic-table td,
    .vq-camera-table td{
        font-size:16px !important;
    }
}


/* =========================================================
   TABLET
========================================================= */
@media screen and (min-width:700px) and (max-width:1023px){

    label,
    .field > label{
        font-size:14px !important;
        color:#cbd5e1 !important;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:15px !important;
    }

    .form-section :where(p, li),
    .vq-legal-note,
    .vq-camera-note,
    .vq-lifecycle-note{
        font-size:14px !important;
        line-height:1.55;
    }
}


/* =========================================================
   PHONE — compact but never low contrast
========================================================= */
@media screen and (max-width:699px){

    label,
    .field > label{
        color:#cbd5e1 !important;
        font-size:12px !important;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:14px !important;
    }

    .form-section :where(p, li),
    .vq-legal-note,
    .vq-camera-note,
    .vq-lifecycle-note{
        font-size:13px !important;
        line-height:1.5;
    }

    .form-section-title{
        font-size:14px !important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 4.3
   FULL READABILITY PASS
   Every page / every generated document / every small text
========================================================= */

@media screen {

    :root{
        --vq-white:#ffffff;
        --vq-text:#f8fafc;
        --vq-text-2:#e5edf7;
        --vq-text-3:#d2ddea;
        --vq-text-4:#b9c7d8;
        --vq-accent:#67e8f9;
        --vq-input-text:#111827;
        --vq-input-bg:#f8fafc;
    }

    /* Global fallback: no tiny dark text on dark UI */
    body,
    body *{
        text-rendering:optimizeLegibility;
        -webkit-font-smoothing:antialiased;
    }

    /* Dark surfaces default to bright text */
    .vq-appbar,
    .vq-dashboard-hero,
    .vq-panel,
    .vq-stat-card,
    .vq-quick,
    .vq-bottom-nav,
    .card,
    .form-section,
    .signature,
    .vq-open-item,
    .vq-history-item,
    .vq-detail-card,
    .vq-legal-note,
    .vq-legal-section,
    .vq-camera-note,
    .vq-lifecycle-note,
    .vq-protocol-selector,
    .vq-inline-question,
    .vq-person-exercise,
    .vq-witness-block,
    .issue-detail,
    .issue-note,
    .issue-photo-card,
    .vq-conditional-section,
    .vq-attention-panel,
    .vq-today-panel,
    .vq-primary-tile,
    .vq-quick-sheet,
    .vq-history-detail,
    .vq-search-panel,
    .vq-search-result-card{
        color:var(--vq-text) !important;
    }

    /* Broad text whitening for generated/dynamic content */
    :where(
        .vq-appbar,
        .vq-dashboard-hero,
        .vq-panel,
        .vq-stat-card,
        .vq-quick,
        .vq-bottom-nav,
        .card,
        .form-section,
        .signature,
        .vq-open-item,
        .vq-history-item,
        .vq-detail-card,
        .vq-legal-note,
        .vq-legal-section,
        .vq-camera-note,
        .vq-lifecycle-note,
        .vq-protocol-selector,
        .vq-inline-question,
        .vq-person-exercise,
        .vq-witness-block,
        .issue-detail,
        .issue-note,
        .issue-photo-card,
        .vq-conditional-section,
        .vq-attention-panel,
        .vq-today-panel,
        .vq-primary-tile,
        .vq-quick-sheet,
        .vq-history-detail,
        .vq-search-panel,
        .vq-search-result-card
    ) :where(
        p,span,div,li,td,th,label,strong,em,small,a
    ){
        opacity:1 !important;
    }

    /* Default body text on dark surfaces */
    :where(
        .card,
        .form-section,
        .signature,
        .vq-panel,
        .vq-open-item,
        .vq-history-item,
        .vq-detail-card,
        .vq-legal-note,
        .vq-legal-section,
        .vq-camera-note,
        .vq-lifecycle-note,
        .vq-person-exercise,
        .vq-witness-block,
        .issue-detail,
        .issue-note,
        .vq-conditional-section
    ) :where(p,span,div,li,td,small){
        color:var(--vq-text-2) !important;
    }

    /* Titles */
    .section-title,
    .form-section-title,
    .vq-legal-title,
    .signature-title,
    .vq-detail-title,
    .vq-panel-title,
    .vq-open-title,
    .vq-history-title,
    .vq-attention-title,
    .vq-today-title,
    .document-name,
    .menu-title,
    .vq-quick-title,
    .vq-primary-title{
        color:var(--vq-white) !important;
        opacity:1 !important;
    }

    /* Accent titles */
    .vq-eyebrow,
    .vq-brand-tagline,
    .vq-protocol-title,
    .vq-history-section-title,
    .vq-search-title{
        color:var(--vq-accent) !important;
        opacity:1 !important;
    }

    /* Labels */
    label,
    .field > label,
    .form-section label,
    .vq-search-filter-label,
    .vq-detail-label,
    .issue-photo-question,
    .vq-participant-table th,
    .dynamic-table th,
    .vq-camera-table th,
    .vq-fields-table th{
        color:var(--vq-text-3) !important;
        opacity:1 !important;
        font-weight:850 !important;
    }

    /* Secondary text */
    .muted,
    .vq-muted,
    .menu-description,
    .document-type,
    .form-meta,
    .document-id,
    .qr-info,
    .signature-tools,
    .vq-protocol-selector-help,
    .vq-history-meta,
    .vq-open-meta,
    .vq-detail-id,
    .vq-panel-subtitle,
    .vq-stat-note,
    .vq-quick-caption,
    .vq-primary-sub,
    .vq-quick-sheet-sub,
    .vq-attention-meta,
    .vq-attention-time,
    .issue-photo-meta,
    .issue-photo-name,
    .vq-usertext span,
    .vq-server-state,
    .vq-search-help,
    .vq-empty-state,
    .vq-empty-state-text,
    .vq-pool-empty,
    .vq-today-meta,
    .vq-today-foot,
    .footer{
        color:var(--vq-text-3) !important;
        opacity:1 !important;
    }

    /* Informational text: explicitly bright */
    .vq-pool-empty,
    .vq-attention-empty,
    .vq-empty-state,
    .vq-empty-state-text,
    .vq-search-empty,
    .vq-history-empty,
    .vq-list-empty,
    .vq-today-foot,
    .vq-today-meta,
    .vq-pool-message,
    .vq-info-text{
        color:var(--vq-text-2) !important;
        opacity:1 !important;
        font-weight:600;
    }

    /* Form fields */
    input,
    select,
    textarea,
    .qr-field{
        background:var(--vq-input-bg) !important;
        color:var(--vq-input-text) !important;
        border-color:#94a3b8 !important;
        font-weight:650;
        opacity:1 !important;
    }

    input::placeholder,
    textarea::placeholder{
        color:#64748b !important;
        opacity:1 !important;
        font-weight:550;
    }

    select option,
    select optgroup{
        background:#fff !important;
        color:#111827 !important;
    }

    input:disabled,
    select:disabled,
    textarea:disabled,
    input[readonly],
    textarea[readonly]{
        color:#334155 !important;
        background:#e2e8f0 !important;
        opacity:1 !important;
    }

    /* Tables */
    table,
    tbody,
    tr{
        color:var(--vq-text-2) !important;
    }

    th{
        color:var(--vq-accent) !important;
        opacity:1 !important;
        font-weight:900 !important;
    }

    td{
        color:var(--vq-text-2) !important;
        opacity:1 !important;
    }

    /* Keep meaningful semantic colors */
    .vq-presence-timer,
    .vq-server-state.online,
    .hash,
    .badge-secure,
    .vq-overdue-count{
        opacity:1 !important;
    }

    .footer{
        opacity:1 !important;
    }
}

/* =========================================================
   DESKTOP
========================================================= */
@media screen and (min-width:1024px){

    body{
        font-size:18px !important;
        line-height:1.55;
    }

    .app,
    .vq-appbar-inner{
        max-width:1600px;
    }

    /* HEADER */
    .vq-brand-name{
        font-size:34px !important;
    }

    .vq-brand-tagline{
        font-size:15px !important;
        letter-spacing:.16em;
    }

    .vq-usertext strong{
        font-size:18px !important;
    }

    .vq-usertext span,
    .vq-server-state{
        font-size:14px !important;
    }

    /* NAV / breadcrumb / small header controls */
    .top-nav,
    .top-nav button,
    .vq-page-nav,
    .vq-page-nav button,
    .back,
    .vq-page-action-btn{
        font-size:16px !important;
    }

    /* MAIN ACTION TILES */
    .vq-quick{
        min-height:122px !important;
        padding:20px 22px !important;
    }

    .vq-quick-title{
        font-size:22px !important;
        line-height:1.2 !important;
    }

    .vq-quick-caption{
        font-size:17px !important;
        line-height:1.4 !important;
        color:var(--vq-text-2) !important;
    }

    .vq-quick-icon{
        width:60px !important;
        height:60px !important;
        flex-basis:60px !important;
        font-size:27px !important;
    }

    /* SMALL SHORTCUTS */
    #mainView .menu-btn{
        min-height:64px !important;
        padding:14px 18px !important;
    }

    .menu-title{
        font-size:17px !important;
        line-height:1.25 !important;
    }

    .menu-description{
        font-size:15px !important;
        line-height:1.35 !important;
    }

    /* KPI */
    .vq-stat-label{
        font-size:16px !important;
        color:var(--vq-text-2) !important;
    }

    .vq-stat-number{
        font-size:46px !important;
    }

    .vq-stat-note{
        font-size:17px !important;
        color:var(--vq-text-2) !important;
    }

    /* LOWER DASHBOARD */
    .vq-panel-title{
        font-size:25px !important;
    }

    .vq-panel-subtitle{
        font-size:18px !important;
        color:var(--vq-text-2) !important;
    }

    .vq-pool-empty,
    .vq-attention-empty,
    .vq-empty-state,
    .vq-empty-state-text,
    .vq-pool-message,
    .vq-info-text{
        font-size:17px !important;
        line-height:1.55 !important;
    }

    /* TODAY SHIFT */
    .vq-today-title{
        font-size:25px !important;
    }

    .vq-today-card-title,
    .vq-today-stat-label{
        font-size:16px !important;
        color:var(--vq-text-2) !important;
    }

    .vq-today-stat-number{
        font-size:40px !important;
    }

    .vq-today-stat-note,
    .vq-today-meta,
    .vq-today-foot{
        font-size:15px !important;
        line-height:1.45 !important;
        color:var(--vq-text-3) !important;
    }

    /* DOCUMENT LIBRARY */
    .vq-history-title,
    .document-name{
        font-size:20px !important;
    }

    .document-type,
    .vq-history-meta,
    .vq-open-meta,
    .document-id,
    .form-meta{
        font-size:15px !important;
        line-height:1.45 !important;
    }

    .vq-history-item,
    .vq-open-item{
        padding:20px !important;
    }

    .vq-empty-state,
    .vq-empty-state-text{
        font-size:17px !important;
        line-height:1.5 !important;
    }

    /* SEARCH */
    .vq-search-filter-label,
    .vq-detail-label{
        font-size:15px !important;
    }

    .vq-search-help,
    .vq-search-result-meta{
        font-size:15px !important;
    }

    /* FORMS / DOCUMENTS */
    .form-section{
        padding:26px !important;
    }

    .form-section-title,
    .vq-legal-title,
    .signature-title{
        font-size:20px !important;
        line-height:1.35 !important;
    }

    label,
    .field > label{
        font-size:17px !important;
        line-height:1.4 !important;
        margin-bottom:9px !important;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:18px !important;
        min-height:54px !important;
        padding:14px 16px !important;
    }

    textarea,
    textarea.qr-field{
        min-height:145px !important;
    }

    /* Every textual paragraph in forms / protocols */
    .form-section :where(p,li,span,div),
    .vq-legal-note,
    .vq-legal-section,
    .vq-camera-note,
    .vq-lifecycle-note,
    .vq-protocol-selector-help,
    .vq-inline-question,
    .issue-note,
    .issue-detail,
    .vq-person-exercise,
    .vq-witness-block{
        font-size:17px !important;
        line-height:1.65 !important;
    }

    /* Tables / participant rows */
    .vq-participant-table th,
    .dynamic-table th,
    .vq-camera-table th,
    .vq-fields-table th{
        font-size:16px !important;
        line-height:1.4 !important;
    }

    .vq-participant-table td,
    .dynamic-table td,
    .vq-camera-table td,
    .vq-fields-table td{
        font-size:17px !important;
        line-height:1.5 !important;
    }

    /* Signature / small helpers */
    .signature-tools,
    .clear-signature,
    .qr-info,
    .hash,
    .vq-lifecycle-note{
        font-size:15px !important;
        line-height:1.55 !important;
    }

    .sig-canvas{
        height:175px !important;
    }

    /* Buttons */
    button,
    .action,
    .back,
    .add-row,
    .vq-page-action-btn,
    .vq-small-action,
    .vq-view-btn,
    .vq-close-btn{
        font-size:16px !important;
        min-height:50px !important;
    }

    /* Bottom navigation */
    .vq-nav-btn small{
        font-size:13px !important;
    }

    .footer{
        font-size:13px !important;
    }
}

/* =========================================================
   LARGE DESKTOP
========================================================= */
@media screen and (min-width:1440px){

    body{
        font-size:19px !important;
    }

    .vq-quick-title{
        font-size:23px !important;
    }

    .vq-quick-caption{
        font-size:18px !important;
    }

    .menu-title{
        font-size:18px !important;
    }

    .vq-stat-label{
        font-size:17px !important;
    }

    .vq-stat-note{
        font-size:18px !important;
    }

    .vq-panel-subtitle,
    .vq-pool-empty,
    .vq-attention-empty,
    .vq-empty-state,
    .vq-empty-state-text{
        font-size:18px !important;
    }

    label,
    .field > label{
        font-size:18px !important;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:18px !important;
    }

    .form-section :where(p,li,span,div),
    .vq-legal-note,
    .vq-legal-section,
    .vq-camera-note,
    .vq-lifecycle-note,
    .vq-protocol-selector-help,
    .vq-inline-question,
    .issue-note,
    .issue-detail{
        font-size:18px !important;
    }
}

/* =========================================================
   TABLET
========================================================= */
@media screen and (min-width:700px) and (max-width:1023px){

    body{
        font-size:16px !important;
    }

    .vq-quick-title{
        font-size:18px !important;
    }

    .vq-quick-caption,
    .vq-stat-note,
    .vq-panel-subtitle{
        font-size:15px !important;
    }

    label,
    .field > label{
        font-size:15px !important;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:16px !important;
    }

    .form-section :where(p,li,span,div),
    .vq-legal-note,
    .vq-camera-note,
    .vq-lifecycle-note{
        font-size:15px !important;
    }
}

/* =========================================================
   PHONE
========================================================= */
@media screen and (max-width:699px){

    body{
        font-size:14px !important;
    }

    .vq-quick-title{
        font-size:16px !important;
    }

    .vq-quick-caption,
    .vq-stat-note,
    .vq-panel-subtitle{
        font-size:13px !important;
    }

    label,
    .field > label{
        font-size:13px !important;
        color:var(--vq-text-3) !important;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:15px !important;
    }

    .form-section :where(p,li,span,div),
    .vq-legal-note,
    .vq-camera-note,
    .vq-lifecycle-note{
        font-size:14px !important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 4.4
   LAPTOP READABILITY PASS
   Mobile layout intentionally left unchanged
========================================================= */

/* ---------------------------------------------------------
   LAPTOP / SMALL DESKTOP
   Typical 13–15" laptops and 1280–1600 px wide screens.
   We deliberately enlarge text and allow cards to grow.
--------------------------------------------------------- */
@media screen and (min-width:700px) and (max-width:1439px){

    body{
        font-size:17px !important;
        line-height:1.55 !important;
    }

    /* ---------- Header ---------- */
    .vq-brand-name{
        font-size:32px !important;
        line-height:1.05 !important;
    }

    .vq-brand-tagline{
        font-size:14px !important;
        color:#e2e8f0 !important;
    }

    .vq-usertext strong{
        font-size:17px !important;
        color:#ffffff !important;
    }

    .vq-usertext span,
    .vq-server-state{
        font-size:13px !important;
        color:#dbe7f4 !important;
    }

    /* ---------- Main three tiles ---------- */
    .vq-quick{
        min-height:126px !important;
        padding:20px 22px !important;
        overflow:visible !important;
    }

    .vq-quick-title{
        font-size:23px !important;
        line-height:1.2 !important;
        color:#ffffff !important;
        font-weight:900 !important;
    }

    .vq-quick-caption{
        font-size:17px !important;
        line-height:1.42 !important;
        color:#edf4fb !important;
        font-weight:600 !important;
    }

    .vq-quick-icon{
        width:60px !important;
        height:60px !important;
        flex-basis:60px !important;
        font-size:27px !important;
    }

    /* ---------- Small shortcut buttons ---------- */
    #mainView .menu-btn{
        min-height:66px !important;
        padding:14px 18px !important;
        overflow:visible !important;
    }

    .menu-title{
        font-size:18px !important;
        line-height:1.25 !important;
        color:#ffffff !important;
        font-weight:850 !important;
    }

    .menu-description{
        font-size:15px !important;
        line-height:1.35 !important;
        color:#e2e8f0 !important;
    }

    /* ---------- KPI cards ---------- */
    .vq-stat-card{
        min-height:170px !important;
        padding:22px !important;
        overflow:visible !important;
    }

    .vq-stat-label{
        font-size:17px !important;
        line-height:1.3 !important;
        color:#ffffff !important;
        font-weight:900 !important;
    }

    .vq-stat-number{
        font-size:48px !important;
        line-height:1 !important;
    }

    .vq-stat-note{
        font-size:17px !important;
        line-height:1.35 !important;
        color:#ffffff !important;
        font-weight:650 !important;
    }

    /* ---------- Lower dashboard panels ---------- */
    .vq-panel{
        min-height:250px !important;
        padding:24px !important;
        overflow:visible !important;
    }

    .vq-panel-title{
        font-size:26px !important;
        line-height:1.2 !important;
        color:#ffffff !important;
        font-weight:900 !important;
    }

    .vq-panel-subtitle{
        font-size:18px !important;
        line-height:1.4 !important;
        color:#f1f5f9 !important;
        font-weight:600 !important;
    }

    /* Informational empty/status texts */
    .vq-pool-empty,
    .vq-attention-empty,
    .vq-empty-state,
    .vq-empty-state-text,
    .vq-pool-message,
    .vq-info-text,
    .vq-search-empty,
    .vq-history-empty,
    .vq-list-empty{
        font-size:18px !important;
        line-height:1.55 !important;
        color:#ffffff !important;
        font-weight:650 !important;
        opacity:1 !important;
    }

    /* ---------- Today shift ---------- */
    .vq-today-title{
        font-size:26px !important;
        color:#ffffff !important;
        font-weight:900 !important;
    }

    .vq-today-card-title,
    .vq-today-stat-label{
        font-size:17px !important;
        line-height:1.3 !important;
        color:#ffffff !important;
        font-weight:900 !important;
    }

    .vq-today-stat-number{
        font-size:44px !important;
        line-height:1 !important;
    }

    .vq-today-stat-note,
    .vq-today-meta,
    .vq-today-foot{
        font-size:16px !important;
        line-height:1.45 !important;
        color:#f1f5f9 !important;
        font-weight:600 !important;
    }

    /* ---------- Document library ---------- */
    .vq-history-item,
    .vq-open-item{
        min-height:132px !important;
        height:auto !important;
        padding:20px 22px !important;
        overflow:visible !important;
        align-items:flex-start !important;
    }

    .vq-history-item > *,
    .vq-open-item > *{
        min-width:0;
    }

    .vq-history-title,
    .vq-open-title,
    .document-name{
        font-size:21px !important;
        line-height:1.28 !important;
        color:#ffffff !important;
        font-weight:900 !important;
        margin-bottom:6px !important;
        white-space:normal !important;
        overflow:visible !important;
        text-overflow:clip !important;
    }

    .document-type,
    .vq-history-meta,
    .vq-open-meta,
    .document-id,
    .form-meta{
        font-size:16px !important;
        line-height:1.5 !important;
        color:#f1f5f9 !important;
        font-weight:600 !important;
        white-space:normal !important;
        overflow:visible !important;
        text-overflow:clip !important;
    }

    .vq-history-list{
        row-gap:14px !important;
    }

    .vq-history-grid{
        grid-template-columns:minmax(430px,.95fr) minmax(0,1.35fr) !important;
        gap:20px !important;
    }

    .vq-history-detail{
        min-height:420px !important;
    }

    .vq-empty-state,
    .vq-empty-state-text{
        font-size:18px !important;
        color:#ffffff !important;
    }

    /* ---------- Search ---------- */
    .vq-search-box input,
    #vqArchiveSearch,
    #vqSearchText{
        font-size:18px !important;
        min-height:56px !important;
    }

    .vq-search-filter-label,
    .vq-detail-label{
        font-size:16px !important;
        color:#ffffff !important;
    }

    .vq-search-help,
    .vq-search-result-meta{
        font-size:16px !important;
        color:#e2e8f0 !important;
    }

    /* ---------- Forms / all documents ---------- */
    .form-section{
        padding:26px !important;
    }

    .form-section-title,
    .vq-legal-title,
    .signature-title{
        font-size:21px !important;
        color:#ffffff !important;
    }

    label,
    .field > label{
        font-size:17px !important;
        line-height:1.4 !important;
        color:#f1f5f9 !important;
        font-weight:850 !important;
    }

    input,
    select,
    textarea,
    .qr-field{
        font-size:18px !important;
        min-height:54px !important;
    }

    .form-section :where(p,li,span,div),
    .vq-legal-note,
    .vq-legal-section,
    .vq-camera-note,
    .vq-lifecycle-note,
    .vq-protocol-selector-help,
    .vq-inline-question,
    .issue-note,
    .issue-detail,
    .vq-person-exercise,
    .vq-witness-block{
        font-size:17px !important;
        line-height:1.65 !important;
        color:#f8fafc !important;
    }

    .vq-participant-table th,
    .dynamic-table th,
    .vq-camera-table th,
    .vq-fields-table th{
        font-size:16px !important;
        color:#ffffff !important;
    }

    .vq-participant-table td,
    .dynamic-table td,
    .vq-camera-table td,
    .vq-fields-table td{
        font-size:17px !important;
        color:#f8fafc !important;
    }

    .signature-tools,
    .clear-signature,
    .qr-info,
    .hash,
    .vq-lifecycle-note{
        font-size:15px !important;
        color:#e2e8f0 !important;
    }

    /* ---------- Bottom nav ---------- */
    .vq-bottom-nav{
        min-height:78px !important;
    }

    .vq-nav-btn small{
        font-size:14px !important;
        color:#ffffff !important;
        font-weight:800 !important;
    }

    .footer{
        font-size:14px !important;
        color:#cbd5e1 !important;
    }
}

/* ---------------------------------------------------------
   SMALL LAPTOP HEIGHT FIX
   Prevent vertical crowding on 1366x768-like screens.
--------------------------------------------------------- */
@media screen and (min-width:700px) and (max-width:1439px) and (max-height:850px){

    .vq-history-item,
    .vq-open-item{
        min-height:124px !important;
    }

    .vq-stat-card{
        min-height:160px !important;
    }

    .vq-panel{
        min-height:230px !important;
    }

    .vq-bottom-nav{
        position:sticky !important;
        bottom:10px !important;
    }
}

/* ---------------------------------------------------------
   MOBILE IS INTENTIONALLY NOT OVERRIDDEN HERE.
   Existing 4.3 phone rules remain in control.
--------------------------------------------------------- */


/* =========================================================
   VARDIQO v2 — SPRINT 4.5
   TARGETED TILE TYPOGRAPHY
   Only the main 3 tiles + 6 shortcut buttons are adjusted.
========================================================= */

/* Laptop and desktop only — mobile remains unchanged */
@media screen and (min-width:700px){

    /* -----------------------------------------------------
       TOP 3 PRIMARY ACTION TILES
    ----------------------------------------------------- */
    .vq-quick{
        min-height:132px !important;
        padding:22px 24px !important;
        gap:16px !important;
        overflow:visible !important;
    }

    .vq-quick-title{
        font-size:26px !important;
        line-height:1.15 !important;
        color:#ffffff !important;
        font-weight:900 !important;
        letter-spacing:-0.01em !important;
        opacity:1 !important;
    }

    .vq-quick-caption{
        font-size:18px !important;
        line-height:1.4 !important;
        color:#f8fafc !important;
        font-weight:650 !important;
        opacity:1 !important;
        margin-top:5px !important;
    }

    .vq-quick-icon{
        width:64px !important;
        height:64px !important;
        flex-basis:64px !important;
        font-size:29px !important;
        border-radius:18px !important;
    }

    /* -----------------------------------------------------
       SIX SMALL SHORTCUT BUTTONS
    ----------------------------------------------------- */
    #mainView .menu-grid{
        gap:14px !important;
    }

    #mainView .menu-btn{
        min-height:72px !important;
        padding:16px 18px !important;
        border-radius:18px !important;
        overflow:visible !important;
    }

    #mainView .menu-btn,
    #mainView .menu-btn *{
        color:#ffffff !important;
        opacity:1 !important;
    }

    #mainView .menu-title{
        font-size:19px !important;
        line-height:1.25 !important;
        font-weight:850 !important;
        color:#ffffff !important;
        letter-spacing:0 !important;
    }

    #mainView .menu-description{
        font-size:16px !important;
        line-height:1.35 !important;
        color:#f1f5f9 !important;
        font-weight:600 !important;
    }
}

/* Typical laptop widths: allow a little more height */
@media screen and (min-width:700px) and (max-width:1439px){

    .vq-quick{
        min-height:138px !important;
    }

    #mainView .menu-btn{
        min-height:74px !important;
    }

    .vq-quick-title{
        font-size:25px !important;
    }

    .vq-quick-caption{
        font-size:18px !important;
    }

    #mainView .menu-title{
        font-size:19px !important;
    }
}

/* Large desktop */
@media screen and (min-width:1440px){

    .vq-quick-title{
        font-size:27px !important;
    }

    .vq-quick-caption{
        font-size:19px !important;
    }

    #mainView .menu-title{
        font-size:20px !important;
    }

    #mainView .menu-btn{
        min-height:76px !important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 4.6
   CORRECTED RESPONSIVE TYPOGRAPHY
   Fixes the REAL dashboard selectors and archive card overlap.
========================================================= */

/* ---------------------------------------------------------
   LAPTOP + DESKTOP
   Correct selectors for the actual primary/secondary controls.
   Mobile (<700px) intentionally unchanged.
--------------------------------------------------------- */
@media screen and (min-width:700px){

    /* ===== REAL TOP 3 PRIMARY ACTIONS ===== */
    .vq-primary-actions{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:16px !important;
        margin-bottom:16px !important;
    }

    .vq-primary-action{
        min-height:118px !important;
        padding:20px 22px !important;
        gap:18px !important;
        border-radius:22px !important;
        overflow:visible !important;
    }

    .vq-primary-icon{
        width:58px !important;
        height:58px !important;
        flex:0 0 58px !important;
        border-radius:17px !important;
        font-size:26px !important;
    }

    .vq-primary-copy{
        min-width:0 !important;
        display:flex !important;
        flex-direction:column !important;
        justify-content:center !important;
        gap:5px !important;
    }

    .vq-primary-title{
        font-size:22px !important;
        line-height:1.2 !important;
        color:#ffffff !important;
        font-weight:900 !important;
        letter-spacing:-0.01em !important;
        opacity:1 !important;
        white-space:normal !important;
    }

    .vq-primary-sub{
        margin-top:0 !important;
        font-size:16px !important;
        line-height:1.4 !important;
        color:#f1f5f9 !important;
        font-weight:650 !important;
        opacity:1 !important;
        white-space:normal !important;
    }

    /* ===== REAL SIX SECONDARY ACTION BUTTONS ===== */
    .vq-secondary-actions{
        display:grid !important;
        grid-template-columns:repeat(6,minmax(0,1fr)) !important;
        gap:12px !important;
        overflow:visible !important;
        padding:0 0 8px !important;
    }

    .vq-secondary-btn{
        width:100% !important;
        min-width:0 !important;
        min-height:64px !important;
        padding:13px 12px !important;
        border-radius:18px !important;
        font-size:16px !important;
        line-height:1.25 !important;
        color:#ffffff !important;
        font-weight:850 !important;
        opacity:1 !important;
        white-space:normal !important;
        text-align:center !important;
    }

    .vq-secondary-btn:hover{
        color:#ffffff !important;
    }

    /* ===== DOCUMENT LIBRARY: STABLE CARD LAYOUT ===== */
    .vq-history-list{
        gap:10px !important;
        padding-right:6px !important;
    }

    .vq-history-item{
        display:grid !important;
        grid-template-columns:46px minmax(0,1fr) auto !important;
        align-items:center !important;
        column-gap:14px !important;
        min-height:104px !important;
        height:auto !important;
        padding:15px 16px !important;
        overflow:hidden !important;
    }

    .vq-history-icon{
        width:42px !important;
        height:42px !important;
        flex:none !important;
    }

    .vq-history-main{
        min-width:0 !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        justify-content:center !important;
        gap:3px !important;
        overflow:hidden !important;
    }

    .vq-history-title{
        display:block !important;
        width:100% !important;
        margin:0 !important;
        font-size:17px !important;
        line-height:1.25 !important;
        color:#ffffff !important;
        font-weight:850 !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }

    .vq-history-date{
        display:block !important;
        width:100% !important;
        margin:0 !important;
        font-size:12px !important;
        line-height:1.25 !important;
        color:#dbeafe !important;
        font-weight:700 !important;
        white-space:nowrap !important;
    }

    .vq-history-meta{
        display:flex !important;
        width:100% !important;
        gap:5px !important;
        flex-wrap:wrap !important;
        margin-top:1px !important;
        font-size:12px !important;
        line-height:1.3 !important;
        color:#e2e8f0 !important;
        font-weight:650 !important;
        white-space:normal !important;
        overflow:visible !important;
    }

    .vq-history-meta > span{
        font-size:inherit !important;
        line-height:inherit !important;
        color:inherit !important;
    }

    .vq-pill{
        align-self:center !important;
        flex:none !important;
        font-size:11px !important;
        line-height:1.1 !important;
        padding:7px 10px !important;
        white-space:nowrap !important;
    }

    /* Archive/search toolbar stays readable, but not oversized */
    .vq-archive-toolbar input,
    .vq-archive-toolbar select{
        min-height:50px !important;
        height:auto !important;
        font-size:15px !important;
    }

    /* Right-side empty/detail panel */
    .vq-history-detail .vq-empty,
    .vq-history-detail .vq-empty-state,
    .vq-history-detail .vq-empty-state-text{
        font-size:15px !important;
        line-height:1.5 !important;
        color:#e2e8f0 !important;
    }
}

/* ---------------------------------------------------------
   LAPTOP: 700–1439
--------------------------------------------------------- */
@media screen and (min-width:700px) and (max-width:1439px){

    .vq-primary-action{
        min-height:112px !important;
        padding:18px 20px !important;
        gap:15px !important;
    }

    .vq-primary-icon{
        width:54px !important;
        height:54px !important;
        flex-basis:54px !important;
        font-size:24px !important;
    }

    .vq-primary-title{
        font-size:20px !important;
    }

    .vq-primary-sub{
        font-size:14px !important;
        line-height:1.35 !important;
    }

    .vq-secondary-actions{
        gap:10px !important;
    }

    .vq-secondary-btn{
        min-height:60px !important;
        font-size:15px !important;
        padding:11px 8px !important;
    }

    /* Archive intentionally smaller than previous 4.4 to prevent overlap */
    .vq-history-grid{
        grid-template-columns:minmax(390px,.92fr) minmax(0,1.25fr) !important;
        gap:16px !important;
    }

    .vq-history-item{
        min-height:96px !important;
        grid-template-columns:42px minmax(0,1fr) auto !important;
        padding:13px 14px !important;
        column-gap:12px !important;
    }

    .vq-history-icon{
        width:38px !important;
        height:38px !important;
    }

    .vq-history-title{
        font-size:16px !important;
    }

    .vq-history-date{
        font-size:11px !important;
    }

    .vq-history-meta{
        font-size:11px !important;
        line-height:1.25 !important;
    }

    .vq-pill{
        font-size:10px !important;
        padding:6px 9px !important;
    }
}

/* ---------------------------------------------------------
   LARGE DESKTOP >=1440
--------------------------------------------------------- */
@media screen and (min-width:1440px){

    .vq-primary-action{
        min-height:126px !important;
    }

    .vq-primary-title{
        font-size:24px !important;
    }

    .vq-primary-sub{
        font-size:17px !important;
    }

    .vq-secondary-btn{
        min-height:68px !important;
        font-size:17px !important;
    }

    .vq-history-title{
        font-size:18px !important;
    }

    .vq-history-date,
    .vq-history-meta{
        font-size:13px !important;
    }
}


/* =========================================================
   VARDIQO v2 — SPRINT 4.7
   EXECUTIVE / BUSINESS CLASS DESKTOP THEME
   Mobile (<700px) intentionally unchanged
========================================================= */

@media screen and (min-width:700px){

    :root{
        --exec-bg:#08111f;
        --exec-panel:#0e1a2b;
        --exec-panel-2:#111f32;
        --exec-border:#26364a;
        --exec-border-soft:#1c2b3c;
        --exec-text:#f7f9fc;
        --exec-text-2:#d6e0ec;
        --exec-text-3:#aebdcd;
        --exec-accent:#67d4df;
        --exec-accent-soft:rgba(103,212,223,.10);
    }

    body{
        background:
            radial-gradient(circle at 12% 0%,rgba(58,82,112,.10),transparent 30%),
            linear-gradient(180deg,#08111f 0%,#07101c 100%) !important;
        color:var(--exec-text) !important;
        font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
        font-size:16px !important;
        line-height:1.5 !important;
        letter-spacing:0 !important;
    }

    /* ---------- overall surfaces ---------- */
    .vq-appbar,
    .vq-dashboard-hero,
    .vq-panel,
    .vq-stat-card,
    .vq-primary-action,
    .vq-secondary-btn,
    .vq-history-item,
    .vq-history-detail,
    .vq-open-item,
    .vq-detail-card,
    .vq-bottom-nav,
    .vq-quick-sheet{
        background:linear-gradient(180deg,var(--exec-panel-2),var(--exec-panel)) !important;
        border-color:var(--exec-border) !important;
        box-shadow:none !important;
    }

    /* Remove rainbow / playful emphasis on the main cards */
    .vq-primary-action,
    .vq-stat-card{
        border-width:1px !important;
    }

    .vq-primary-action:nth-child(n),
    .vq-stat-card:nth-child(n){
        box-shadow:none !important;
    }

    /* Keep only one restrained accent line */
    .vq-stat-card::before{
        opacity:.65 !important;
        width:3px !important;
    }

    /* Emoji/icon saturation toned down */
    .vq-primary-icon,
    .vq-secondary-btn span:first-child,
    .vq-stat-icon,
    .vq-quick-sheet-icon{
        filter:saturate(.68) contrast(.96);
    }

    /* ---------- header ---------- */
    .vq-brand-name{
        font-size:30px !important;
        font-weight:800 !important;
        letter-spacing:.01em !important;
        color:#ffffff !important;
    }

    .vq-brand-tagline{
        font-size:12px !important;
        font-weight:700 !important;
        letter-spacing:.19em !important;
        color:var(--exec-text-3) !important;
    }

    .vq-usertext strong{
        font-size:16px !important;
        font-weight:700 !important;
        color:#ffffff !important;
    }

    .vq-usertext span,
    .vq-server-state{
        font-size:12px !important;
        color:var(--exec-text-3) !important;
        font-weight:500 !important;
    }

    .vq-logout{
        font-size:14px !important;
        font-weight:650 !important;
    }

    /* ---------- top three primary cards ---------- */
    .vq-primary-actions{
        gap:14px !important;
    }

    .vq-primary-action{
        min-height:108px !important;
        padding:18px 20px !important;
        gap:16px !important;
        border-radius:18px !important;
    }

    .vq-primary-action:hover{
        border-color:#40536a !important;
        background:linear-gradient(180deg,#132238,#101d30) !important;
        transform:none !important;
    }

    .vq-primary-icon{
        width:54px !important;
        height:54px !important;
        flex:0 0 54px !important;
        border-radius:14px !important;
        background:#12283a !important;
        border:1px solid #1f4054 !important;
        box-shadow:none !important;
        font-size:23px !important;
    }

    .vq-primary-title{
        font-size:20px !important;
        line-height:1.22 !important;
        font-weight:750 !important;
        letter-spacing:0 !important;
        color:#ffffff !important;
    }

    .vq-primary-sub{
        font-size:14px !important;
        line-height:1.4 !important;
        font-weight:500 !important;
        color:var(--exec-text-2) !important;
        margin-top:3px !important;
    }

    /* ---------- six secondary actions ---------- */
    .vq-secondary-actions{
        gap:10px !important;
    }

    .vq-secondary-btn{
        min-height:56px !important;
        border-radius:14px !important;
        padding:12px 10px !important;
        font-size:15px !important;
        line-height:1.25 !important;
        font-weight:650 !important;
        color:var(--exec-text) !important;
    }

    .vq-secondary-btn:hover{
        background:#142235 !important;
        border-color:#3a4b60 !important;
        color:#ffffff !important;
        transform:none !important;
    }

    /* ---------- KPI cards ---------- */
    .vq-stat-grid{
        gap:12px !important;
    }

    .vq-stat-card{
        min-height:142px !important;
        padding:18px 18px !important;
        border-radius:16px !important;
    }

    .vq-stat-label{
        font-size:14px !important;
        line-height:1.3 !important;
        color:var(--exec-text-2) !important;
        font-weight:700 !important;
        letter-spacing:.02em !important;
    }

    .vq-stat-number{
        font-size:40px !important;
        line-height:1 !important;
        margin:10px 0 8px !important;
        font-weight:750 !important;
    }

    .vq-stat-note{
        font-size:14px !important;
        line-height:1.35 !important;
        color:var(--exec-text-2) !important;
        font-weight:500 !important;
    }

    /* ---------- lower dashboard ---------- */
    .vq-panel{
        min-height:220px !important;
        padding:20px !important;
        border-radius:18px !important;
    }

    .vq-panel-title,
    .vq-today-title{
        font-size:21px !important;
        font-weight:750 !important;
        color:#ffffff !important;
    }

    .vq-panel-subtitle{
        font-size:14px !important;
        color:var(--exec-text-2) !important;
        font-weight:500 !important;
    }

    .vq-pool-empty,
    .vq-attention-empty,
    .vq-empty-state,
    .vq-empty-state-text,
    .vq-pool-message,
    .vq-info-text{
        font-size:15px !important;
        line-height:1.5 !important;
        color:var(--exec-text-2) !important;
        font-weight:500 !important;
    }

    .vq-today-card-title,
    .vq-today-stat-label{
        font-size:13px !important;
        color:var(--exec-text-2) !important;
        font-weight:700 !important;
    }

    .vq-today-stat-number{
        font-size:34px !important;
        font-weight:750 !important;
    }

    .vq-today-stat-note,
    .vq-today-meta,
    .vq-today-foot{
        font-size:13px !important;
        line-height:1.4 !important;
        color:var(--exec-text-3) !important;
        font-weight:500 !important;
    }

    /* ---------- document library: compact, stable ---------- */
    .vq-history-grid{
        grid-template-columns:minmax(390px,.90fr) minmax(0,1.30fr) !important;
        gap:16px !important;
    }

    .vq-history-list{
        gap:9px !important;
    }

    .vq-history-item{
        display:grid !important;
        grid-template-columns:40px minmax(0,1fr) auto !important;
        align-items:center !important;
        column-gap:12px !important;
        min-height:92px !important;
        height:auto !important;
        padding:12px 14px !important;
        border-radius:14px !important;
        overflow:hidden !important;
    }

    .vq-history-main{
        min-width:0 !important;
        display:flex !important;
        flex-direction:column !important;
        gap:2px !important;
        overflow:hidden !important;
    }

    .vq-history-title{
        font-size:15px !important;
        line-height:1.25 !important;
        font-weight:700 !important;
        color:#ffffff !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        margin:0 !important;
    }

    .vq-history-date{
        font-size:11px !important;
        line-height:1.2 !important;
        color:var(--exec-text-3) !important;
        font-weight:550 !important;
    }

    .vq-history-meta{
        display:flex !important;
        flex-wrap:wrap !important;
        gap:4px !important;
        font-size:11px !important;
        line-height:1.25 !important;
        color:var(--exec-text-2) !important;
        font-weight:500 !important;
    }

    .vq-pill{
        font-size:10px !important;
        padding:6px 8px !important;
        font-weight:700 !important;
    }

    /* ---------- quick actions modal ---------- */
    .vq-quick-sheet-backdrop{
        background:rgba(2,8,16,.66) !important;
        backdrop-filter:blur(8px) !important;
    }

    .vq-quick-sheet{
        width:min(100%,620px) !important;
        padding:20px !important;
        border-radius:18px !important;
    }

    .vq-quick-sheet-head{
        margin-bottom:16px !important;
    }

    .vq-quick-sheet-title{
        font-size:18px !important;
        line-height:1.25 !important;
        font-weight:750 !important;
        color:#ffffff !important;
    }

    .vq-quick-sheet-sub{
        font-size:13px !important;
        line-height:1.4 !important;
        color:var(--exec-text-3) !important;
        font-weight:500 !important;
    }

    .vq-quick-sheet-close{
        width:38px !important;
        height:38px !important;
        font-size:18px !important;
        color:var(--exec-text-2) !important;
        background:#101c2b !important;
        border-color:var(--exec-border) !important;
    }

    .vq-quick-sheet-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px !important;
    }

    .vq-quick-sheet-action{
        min-height:104px !important;
        padding:16px !important;
        border-radius:14px !important;
        background:#101d2e !important;
        border:1px solid var(--exec-border) !important;
        color:var(--exec-text) !important;
        display:flex !important;
        align-items:center !important;
        gap:14px !important;
        text-align:left !important;
    }

    .vq-quick-sheet-action:hover{
        background:#142336 !important;
        border-color:#40536a !important;
        transform:none !important;
    }

    .vq-quick-sheet-icon{
        width:44px !important;
        height:44px !important;
        flex:0 0 44px !important;
        margin:0 !important;
        border-radius:12px !important;
        background:#12283a !important;
        border:1px solid #1f4054 !important;
        font-size:19px !important;
    }

    .vq-quick-sheet-action strong{
        display:block !important;
        font-size:15px !important;
        line-height:1.3 !important;
        color:#ffffff !important;
        font-weight:700 !important;
    }

    .vq-quick-sheet-action small{
        display:block !important;
        margin-top:4px !important;
        font-size:12px !important;
        line-height:1.4 !important;
        color:var(--exec-text-3) !important;
        font-weight:500 !important;
    }

    /* ---------- bottom nav ---------- */
    .vq-bottom-nav{
        min-height:70px !important;
        border-radius:18px !important;
    }

    .vq-nav-btn{
        font-weight:600 !important;
    }

    .vq-nav-btn small{
        font-size:12px !important;
        color:var(--exec-text-2) !important;
        font-weight:600 !important;
    }

    .vq-nav-btn.active small{
        color:#ffffff !important;
    }

    .vq-fab{
        box-shadow:none !important;
        background:linear-gradient(180deg,#4d93dc,#5367db) !important;
    }

    /* ---------- forms / general UI ---------- */
    label,
    .field > label{
        color:var(--exec-text-2) !important;
        font-weight:650 !important;
    }

    .footer{
        color:var(--exec-text-3) !important;
        font-size:12px !important;
        letter-spacing:.05em !important;
    }
}

/* Laptop refinement */
@media screen and (min-width:700px) and (max-width:1439px){

    body{
        font-size:15px !important;
    }

    .vq-primary-title{
        font-size:19px !important;
    }

    .vq-primary-sub{
        font-size:13px !important;
    }

    .vq-secondary-btn{
        font-size:14px !important;
        min-height:54px !important;
    }

    .vq-stat-label{
        font-size:13px !important;
    }

    .vq-stat-note{
        font-size:13px !important;
    }

    .vq-panel-title,
    .vq-today-title{
        font-size:20px !important;
    }

    .vq-quick-sheet{
        width:min(100%,580px) !important;
    }

    .vq-quick-sheet-action strong{
        font-size:14px !important;
    }

    .vq-quick-sheet-action small{
        font-size:12px !important;
    }
}

/* Mobile remains controlled by existing styles */


/* =========================================================
   VARDIQO 5.0 — CONTROL CENTER
   Desktop architecture rebuild
   Mobile (<700px) keeps the existing application layout.
========================================================= */

@media screen and (min-width:700px){

    :root{
        --cc-bg:#0a0f16;
        --cc-surface:#111821;
        --cc-surface-2:#151e29;
        --cc-surface-3:#182330;
        --cc-border:#283442;
        --cc-border-soft:#202b37;
        --cc-text:#f4f7fa;
        --cc-text-2:#d5dde6;
        --cc-text-3:#9eacbb;
        --cc-accent:#7da7b7;
        --cc-accent-strong:#9fc3cf;
        --cc-ok:#6aa889;
        --cc-warn:#b49b68;
        --cc-danger:#b97979;
    }

    html,body{
        background:var(--cc-bg) !important;
    }

    body{
        padding:0 18px 36px !important;
        color:var(--cc-text) !important;
        font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif !important;
        font-size:15px !important;
        line-height:1.5 !important;
        letter-spacing:0 !important;
    }

    .app{
        max-width:1720px !important;
        margin:0 auto !important;
    }

    /* ---------- HEADER ---------- */
    .vq-appbar{
        margin:0 -18px 10px !important;
        padding:12px 18px !important;
        background:#0d141d !important;
        border-bottom:1px solid var(--cc-border-soft) !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
        box-shadow:none !important;
    }

    .vq-appbar-inner{
        max-width:1720px !important;
        min-height:68px !important;
        gap:13px !important;
    }

    .vq-mark{
        width:48px !important;
        height:48px !important;
        flex-basis:48px !important;
        border-radius:11px !important;
        background:#121c27 !important;
        border:1px solid #324253 !important;
        box-shadow:none !important;
    }

    .vq-mark svg{
        width:30px !important;
        height:30px !important;
        filter:none !important;
    }

    .vq-mark svg path:first-of-type{
        stroke:#8ca9b7 !important;
    }

    .vq-brand-name{
        font-size:25px !important;
        line-height:1 !important;
        font-weight:700 !important;
        letter-spacing:.035em !important;
        color:#f7f9fb !important;
    }

    .vq-brand-tagline{
        margin-top:5px !important;
        font-size:10px !important;
        line-height:1.2 !important;
        font-weight:500 !important;
        color:#91a0ae !important;
        letter-spacing:.18em !important;
        text-transform:uppercase !important;
    }

    .vq-userbox{
        gap:12px !important;
    }

    .vq-usertext{
        display:grid !important;
        grid-template-columns:auto auto !important;
        grid-template-areas:
            "name clock"
            "meta state" !important;
        column-gap:12px !important;
        row-gap:2px !important;
        align-items:center !important;
        text-align:right !important;
    }

    .vq-usertext strong{
        grid-area:name !important;
        font-size:15px !important;
        font-weight:600 !important;
        color:#f7f9fb !important;
    }

    #vqUserMeta{
        grid-area:meta !important;
        font-size:12px !important;
        font-weight:400 !important;
        color:#a9b5c1 !important;
    }

    .vq-header-clock{
        grid-area:clock !important;
        font-size:14px !important;
        font-variant-numeric:tabular-nums !important;
        font-weight:600 !important;
        color:#dce4eb !important;
    }

    .vq-server-state{
        grid-area:state !important;
        font-size:11px !important;
        font-weight:500 !important;
        color:#94a5b5 !important;
    }

    .vq-server-state.online{
        color:#9ebba9 !important;
    }

    .vq-logout,
    .vq-header-action{
        min-height:40px !important;
        border-radius:9px !important;
        background:#121b25 !important;
        border:1px solid #2b3948 !important;
        color:#dce4eb !important;
        box-shadow:none !important;
    }

    .vq-logout{
        padding:0 15px !important;
        font-size:13px !important;
        font-weight:600 !important;
    }

    .vq-header-action{
        width:40px !important;
    }

    /* ---------- REMOVE DUPLICATE HERO INFO ---------- */
    #mainView .vq-compact-head{
        display:none !important;
    }

    /* The card is now only the control-center canvas. */
    .card{
        padding:14px !important;
        border-radius:14px !important;
        border:1px solid var(--cc-border-soft) !important;
        background:#0d141c !important;
        box-shadow:none !important;
    }

    /* ---------- CONTROL CENTER GRID ---------- */
    #mainView{
        display:grid !important;
        grid-template-columns:230px minmax(0,1fr) 245px !important;
        grid-template-areas:
            "sidebar search status"
            "sidebar workspace status" !important;
        gap:14px !important;
        min-height:calc(100vh - 120px) !important;
        align-items:start !important;
    }

    #mainView > .vq-global-search{
        grid-area:search !important;
        margin:0 !important;
        align-self:start !important;
    }

    .vq-global-search input{
        height:50px !important;
        min-height:50px !important;
        border-radius:10px !important;
        background:#121b25 !important;
        border:1px solid #2b3948 !important;
        color:#f0f4f7 !important;
        font-size:14px !important;
        font-weight:400 !important;
        box-shadow:none !important;
    }

    .vq-global-search input::placeholder{
        color:#7e8d9c !important;
        font-weight:400 !important;
    }

    /* ---------- LEFT NAV ---------- */
    .vq-control-sidebar{
        grid-area:sidebar !important;
        position:sticky !important;
        top:92px !important;
        display:flex !important;
        flex-direction:column !important;
        gap:10px !important;
        padding:14px !important;
        border-radius:12px !important;
        border:1px solid var(--cc-border-soft) !important;
        background:#101720 !important;
    }

    .vq-sidebar-kicker{
        padding:0 2px 5px !important;
        color:#93a3b3 !important;
        font-size:10px !important;
        font-weight:600 !important;
        letter-spacing:.12em !important;
        text-transform:uppercase !important;
    }

    .vq-sidebar-new{
        min-height:42px !important;
        width:100% !important;
        border-radius:8px !important;
        border:1px solid #405363 !important;
        background:#17232e !important;
        color:#edf3f6 !important;
        font-size:13px !important;
        font-weight:600 !important;
        text-align:left !important;
        padding:0 12px !important;
    }

    .vq-primary-actions{
        display:flex !important;
        flex-direction:column !important;
        gap:6px !important;
        margin:0 !important;
    }

    .vq-primary-action{
        min-height:58px !important;
        width:100% !important;
        padding:9px 10px !important;
        gap:10px !important;
        border-radius:8px !important;
        border:1px solid transparent !important;
        background:transparent !important;
        box-shadow:none !important;
        transform:none !important;
    }

    .vq-primary-action:hover{
        background:#17212c !important;
        border-color:#2f3f4f !important;
        transform:none !important;
    }

    .vq-primary-icon{
        width:34px !important;
        height:34px !important;
        flex:0 0 34px !important;
        border-radius:7px !important;
        background:#182633 !important;
        border:1px solid #2b4352 !important;
        font-size:15px !important;
        filter:grayscale(.15) saturate(.55) !important;
    }

    .vq-primary-title{
        font-size:14px !important;
        line-height:1.2 !important;
        font-weight:600 !important;
        color:#f1f4f7 !important;
        letter-spacing:0 !important;
    }

    .vq-primary-sub{
        margin-top:2px !important;
        font-size:11px !important;
        line-height:1.25 !important;
        font-weight:400 !important;
        color:#8fa0b0 !important;
    }

    .vq-secondary-actions{
        display:flex !important;
        flex-direction:column !important;
        gap:2px !important;
        padding-top:7px !important;
        border-top:1px solid #202c38 !important;
        overflow:visible !important;
    }

    .vq-secondary-btn{
        width:100% !important;
        min-height:36px !important;
        padding:7px 9px !important;
        border:0 !important;
        border-radius:7px !important;
        background:transparent !important;
        color:#c7d1db !important;
        text-align:left !important;
        white-space:normal !important;
        font-size:12px !important;
        line-height:1.25 !important;
        font-weight:500 !important;
    }

    .vq-secondary-btn:hover{
        background:#17212c !important;
        color:#ffffff !important;
    }

    /* ---------- RIGHT STATUS COLUMN ---------- */
    #mainView > .vq-stat-grid.vq-compact-stats{
        grid-area:status !important;
        position:sticky !important;
        top:92px !important;
        display:flex !important;
        flex-direction:column !important;
        gap:7px !important;
        margin:0 !important;
        padding:14px !important;
        border-radius:12px !important;
        border:1px solid var(--cc-border-soft) !important;
        background:#101720 !important;
    }

    #mainView > .vq-stat-grid.vq-compact-stats::before{
        content:"Aktuális állapot";
        display:block;
        padding:0 2px 5px;
        color:#93a3b3;
        font-size:10px;
        font-weight:600;
        letter-spacing:.12em;
        text-transform:uppercase;
    }

    .vq-compact-stats .vq-stat-card{
        min-height:auto !important;
        padding:10px 11px !important;
        border-radius:8px !important;
        border:1px solid #263544 !important;
        background:#121b25 !important;
        box-shadow:none !important;
        overflow:visible !important;
    }

    .vq-compact-stats .vq-stat-card::before{
        display:none !important;
    }

    .vq-compact-stats .vq-stat-top{
        gap:7px !important;
    }

    .vq-compact-stats .vq-stat-label{
        font-size:11px !important;
        line-height:1.25 !important;
        font-weight:500 !important;
        letter-spacing:0 !important;
        text-transform:none !important;
        color:#c9d3dd !important;
    }

    .vq-compact-stats .vq-stat-icon{
        width:24px !important;
        height:24px !important;
        border-radius:6px !important;
        background:#192633 !important;
        border:1px solid #2b3a49 !important;
        font-size:11px !important;
        filter:grayscale(.2) saturate(.5) !important;
    }

    .vq-compact-stats .vq-stat-number{
        margin-top:6px !important;
        font-size:27px !important;
        line-height:1 !important;
        font-weight:600 !important;
        color:#f4f7fa !important;
        letter-spacing:-.02em !important;
    }

    .vq-compact-stats .vq-stat-note{
        margin-top:4px !important;
        font-size:10px !important;
        line-height:1.25 !important;
        font-weight:400 !important;
        color:#8797a6 !important;
    }

    /* ---------- CENTRAL WORKSPACE ---------- */
    #mainView > .vq-dashboard-bottom{
        grid-area:workspace !important;
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,.86fr) !important;
        gap:12px !important;
        margin:0 !important;
        align-items:start !important;
    }

    .vq-dashboard-bottom .vq-panel{
        min-height:260px !important;
        padding:16px !important;
        border-radius:11px !important;
        border:1px solid #263442 !important;
        background:#111922 !important;
        box-shadow:none !important;
    }

    .vq-panel-head{
        margin-bottom:13px !important;
    }

    .vq-panel-title,
    .vq-today-title{
        font-size:17px !important;
        line-height:1.25 !important;
        font-weight:600 !important;
        color:#f2f5f8 !important;
    }

    .vq-panel-subtitle{
        margin-top:3px !important;
        font-size:11px !important;
        line-height:1.4 !important;
        font-weight:400 !important;
        color:#8f9eac !important;
    }

    .vq-text-btn{
        color:#a8c1cc !important;
        font-size:11px !important;
        font-weight:500 !important;
    }

    .vq-pool-empty,
    .vq-attention-empty,
    .vq-empty-state,
    .vq-empty-state-text,
    .vq-pool-message,
    .vq-info-text{
        font-size:13px !important;
        line-height:1.5 !important;
        font-weight:400 !important;
        color:#c7d0d9 !important;
    }

    .vq-shift-grid{
        gap:8px !important;
    }

    .vq-shift-card{
        min-height:100px !important;
        padding:12px !important;
        border-radius:8px !important;
        border:1px solid #263442 !important;
        background:#141e28 !important;
    }

    .vq-shift-label{
        font-size:10px !important;
        font-weight:600 !important;
        color:#aebbc8 !important;
        letter-spacing:.02em !important;
    }

    .vq-shift-value{
        margin-top:7px !important;
        font-size:28px !important;
        line-height:1 !important;
        font-weight:600 !important;
        color:#f2f5f8 !important;
    }

    .vq-shift-note{
        margin-top:7px !important;
        font-size:10px !important;
        line-height:1.3 !important;
        font-weight:400 !important;
        color:#8798a8 !important;
    }

    .vq-shift-foot{
        margin-top:9px !important;
        font-size:10px !important;
        color:#748596 !important;
    }

    /* ---------- QUICK ACTION DIALOG ---------- */
    .vq-quick-sheet-backdrop{
        background:rgba(5,9,14,.70) !important;
        backdrop-filter:blur(5px) !important;
    }

    .vq-quick-sheet{
        width:min(100%,560px) !important;
        padding:18px !important;
        border-radius:12px !important;
        border:1px solid #344353 !important;
        background:#101821 !important;
        box-shadow:0 22px 55px rgba(0,0,0,.38) !important;
    }

    .vq-quick-sheet-title{
        font-size:16px !important;
        font-weight:600 !important;
        color:#f3f6f8 !important;
    }

    .vq-quick-sheet-sub{
        margin-top:2px !important;
        font-size:11px !important;
        color:#8e9dab !important;
        font-weight:400 !important;
    }

    .vq-quick-sheet-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:8px !important;
    }

    .vq-quick-sheet-action{
        min-height:84px !important;
        padding:12px !important;
        border-radius:8px !important;
        border:1px solid #2b3947 !important;
        background:#141e28 !important;
        display:grid !important;
        grid-template-columns:34px minmax(0,1fr) !important;
        gap:10px !important;
        align-items:center !important;
        text-align:left !important;
    }

    .vq-quick-sheet-action:hover{
        background:#18232e !important;
        border-color:#405161 !important;
        transform:none !important;
    }

    .vq-quick-sheet-icon{
        width:34px !important;
        height:34px !important;
        margin:0 !important;
        border-radius:7px !important;
        background:#1a2834 !important;
        border:1px solid #2d4352 !important;
        font-size:15px !important;
        filter:grayscale(.15) saturate(.5) !important;
    }

    .vq-quick-sheet-action strong{
        font-size:13px !important;
        line-height:1.25 !important;
        font-weight:600 !important;
        color:#f2f5f8 !important;
    }

    .vq-quick-sheet-action small{
        margin-top:2px !important;
        font-size:10px !important;
        line-height:1.3 !important;
        font-weight:400 !important;
        color:#8d9dab !important;
    }

    /* ---------- DESKTOP NAV ---------- */
    .vq-bottom-nav{
        display:none !important;
    }

    .footer{
        margin-top:16px !important;
        font-size:10px !important;
        color:#697887 !important;
        letter-spacing:.06em !important;
    }

    /* ---------- FORMS / OTHER VIEWS ---------- */
    #documentsView,
    #formView,
    #searchView,
    #archiveView,
    #statisticsView,
    #openItemsView,
    #verificationView{
        font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif !important;
    }

    .section-title{
        font-size:22px !important;
        font-weight:600 !important;
        color:#eef2f5 !important;
    }

    .vq-page-action-btn,
    .back,
    .action,
    .add-row{
        font-family:inherit !important;
    }
}

/* ---------- SMALLER LAPTOP ---------- */
@media screen and (min-width:700px) and (max-width:1199px){

    #mainView{
        grid-template-columns:205px minmax(0,1fr) 205px !important;
        gap:10px !important;
    }

    .vq-control-sidebar,
    #mainView > .vq-stat-grid.vq-compact-stats{
        padding:11px !important;
    }

    .vq-primary-sub{
        display:none !important;
    }

    .vq-secondary-btn{
        font-size:11px !important;
    }

    #mainView > .vq-dashboard-bottom{
        grid-template-columns:1fr !important;
    }

    .vq-dashboard-bottom .vq-panel{
        min-height:210px !important;
    }
}

/* Existing mobile CSS remains authoritative below 700px. */


/* =========================================================
   VARDIQO 5.1 — ADAPTIVE CONTROL CENTER
   Fluid responsive desktop/laptop scaling
   Mobile (<700px) remains on the existing mobile layout.
========================================================= */

@media screen and (min-width:700px){

    :root{
        --a-bg:#07101b;
        --a-bg-2:#0a1421;
        --a-surface:#0f1a28;
        --a-surface-2:#132031;
        --a-surface-3:#162638;
        --a-border:#26394c;
        --a-border-soft:#1d2d3e;
        --a-text:#f7f9fb;
        --a-text-2:#d6e2eb;
        --a-text-3:#9fb0bf;
        --a-cyan:#55d6df;
        --a-cyan-soft:#8ce4e9;
        --a-green:#67b28e;
        --a-amber:#c7a764;
        --a-red:#c57f7f;

        /* Fluid UI scale */
        --ui-gap:clamp(8px, .75vw, 16px);
        --ui-pad:clamp(10px, .85vw, 18px);
        --ui-radius:clamp(9px, .7vw, 14px);
        --sidebar-w:clamp(190px, 14vw, 250px);
        --status-w:clamp(190px, 14vw, 250px);

        --fs-xxs:clamp(10px, .63vw, 12px);
        --fs-xs:clamp(11px, .72vw, 13px);
        --fs-sm:clamp(12px, .82vw, 14px);
        --fs-md:clamp(13px, .92vw, 16px);
        --fs-lg:clamp(15px, 1.08vw, 19px);
        --fs-xl:clamp(18px, 1.35vw, 23px);
        --fs-2xl:clamp(22px, 1.65vw, 28px);
        --fs-kpi:clamp(28px, 2.35vw, 46px);
    }

    html,body{
        min-height:100%;
        background:
            radial-gradient(circle at 50% -10%,rgba(56,113,144,.12),transparent 34%),
            linear-gradient(180deg,var(--a-bg) 0%,#060d16 100%) !important;
    }

    body{
        margin:0 !important;
        padding:0 clamp(10px,1vw,22px) clamp(18px,1.4vw,32px) !important;
        color:var(--a-text) !important;
        font-family:"Manrope","Segoe UI",Arial,sans-serif !important;
        font-size:var(--fs-md) !important;
        line-height:1.48 !important;
        overflow-x:hidden !important;
    }

    .app,
    .vq-appbar-inner{
        width:100% !important;
        max-width:none !important;
    }

    .app{
        margin:0 !important;
    }

    /* ===== Header ===== */
    .vq-appbar{
        margin:0 calc(-1 * clamp(10px,1vw,22px)) var(--ui-gap) !important;
        padding:clamp(9px,.7vw,14px) clamp(12px,1vw,22px) !important;
        background:rgba(9,18,29,.96) !important;
        border-bottom:1px solid var(--a-border-soft) !important;
        box-shadow:none !important;
        backdrop-filter:blur(10px) !important;
    }

    .vq-appbar-inner{
        min-height:clamp(58px,5.3vw,76px) !important;
        gap:clamp(10px,.9vw,16px) !important;
    }

    .vq-mark{
        width:clamp(42px,3.7vw,54px) !important;
        height:clamp(42px,3.7vw,54px) !important;
        flex-basis:clamp(42px,3.7vw,54px) !important;
        border-radius:12px !important;
        background:linear-gradient(180deg,#122332,#0f1a27) !important;
        border:1px solid #2d4859 !important;
    }

    .vq-brand-name{
        font-size:clamp(23px,2.1vw,32px) !important;
        font-weight:800 !important;
        letter-spacing:.025em !important;
        color:#ffffff !important;
    }

    .vq-brand-tagline{
        font-size:var(--fs-xxs) !important;
        color:var(--a-cyan-soft) !important;
        font-weight:700 !important;
        letter-spacing:.18em !important;
    }

    .vq-usertext strong{
        font-size:var(--fs-md) !important;
        font-weight:700 !important;
        color:#fff !important;
    }

    #vqUserMeta{
        font-size:var(--fs-xs) !important;
        color:var(--a-text-3) !important;
    }

    .vq-header-clock{
        font-size:var(--fs-sm) !important;
        color:var(--a-text-2) !important;
    }

    .vq-server-state{
        font-size:var(--fs-xxs) !important;
        color:var(--a-text-3) !important;
    }

    .vq-server-state.online{
        color:#8fc4a6 !important;
    }

    .vq-logout,
    .vq-header-action{
        min-height:clamp(36px,3vw,42px) !important;
        border-radius:9px !important;
        background:#121c28 !important;
        border:1px solid #2b3b4b !important;
    }

    .vq-logout{
        font-size:var(--fs-sm) !important;
        padding:0 clamp(12px,1vw,16px) !important;
    }

    /* ===== Main responsive grid ===== */
    #mainView{
        display:grid !important;
        grid-template-columns:var(--sidebar-w) minmax(0,1fr) var(--status-w) !important;
        grid-template-areas:
            "sidebar search status"
            "sidebar workspace status" !important;
        gap:var(--ui-gap) !important;
        align-items:stretch !important;
        min-height:calc(100vh - clamp(82px,7vw,110px)) !important;
    }

    #mainView .vq-compact-head{
        display:none !important;
    }

    #mainView > .vq-global-search{
        grid-area:search !important;
        margin:0 !important;
    }

    .vq-global-search input{
        height:clamp(46px,4.2vw,58px) !important;
        min-height:0 !important;
        border-radius:var(--ui-radius) !important;
        background:#121d2a !important;
        border:1px solid var(--a-border) !important;
        color:#f3f6f9 !important;
        font-size:var(--fs-md) !important;
        padding-left:clamp(42px,3.6vw,52px) !important;
    }

    .vq-global-search input::placeholder{
        color:#8091a1 !important;
    }

    /* ===== Sidebar ===== */
    .vq-control-sidebar{
        grid-area:sidebar !important;
        position:sticky !important;
        top:calc(clamp(58px,5.3vw,76px) + 20px) !important;
        align-self:start !important;
        display:flex !important;
        flex-direction:column !important;
        gap:clamp(5px,.45vw,9px) !important;
        padding:var(--ui-pad) !important;
        border:1px solid var(--a-border-soft) !important;
        border-radius:var(--ui-radius) !important;
        background:linear-gradient(180deg,#101a26,#0e1721) !important;
        min-height:calc(100vh - clamp(110px,9vw,145px)) !important;
    }

    .vq-sidebar-kicker{
        font-size:var(--fs-xxs) !important;
        letter-spacing:.14em !important;
        color:#8fa1b2 !important;
    }

    .vq-sidebar-new{
        min-height:clamp(38px,3.3vw,46px) !important;
        border-radius:8px !important;
        background:linear-gradient(180deg,#183141,#152735) !important;
        border:1px solid #355364 !important;
        color:#eff7f8 !important;
        font-size:var(--fs-sm) !important;
        font-weight:700 !important;
        padding:0 12px !important;
    }

    .vq-primary-actions{
        display:flex !important;
        flex-direction:column !important;
        gap:clamp(4px,.35vw,7px) !important;
        margin:0 !important;
    }

    .vq-primary-action{
        width:100% !important;
        min-height:clamp(54px,4.6vw,68px) !important;
        padding:clamp(8px,.65vw,11px) !important;
        gap:clamp(8px,.65vw,12px) !important;
        border-radius:9px !important;
        background:transparent !important;
        border:1px solid transparent !important;
        box-shadow:none !important;
    }

    .vq-primary-action:hover{
        background:#152230 !important;
        border-color:#2c4051 !important;
    }

    .vq-primary-icon{
        width:clamp(32px,2.8vw,40px) !important;
        height:clamp(32px,2.8vw,40px) !important;
        flex-basis:clamp(32px,2.8vw,40px) !important;
        border-radius:8px !important;
        background:#173042 !important;
        border:1px solid #294c5e !important;
        font-size:clamp(14px,1.1vw,18px) !important;
        filter:saturate(.62) !important;
    }

    .vq-primary-title{
        font-size:var(--fs-md) !important;
        color:#f4f7fa !important;
        font-weight:700 !important;
    }

    .vq-primary-sub{
        margin-top:2px !important;
        font-size:var(--fs-xxs) !important;
        color:#91a1b0 !important;
        font-weight:500 !important;
    }

    .vq-secondary-actions{
        display:flex !important;
        flex-direction:column !important;
        gap:2px !important;
        padding-top:clamp(6px,.5vw,10px) !important;
        border-top:1px solid var(--a-border-soft) !important;
        overflow:visible !important;
    }

    .vq-secondary-btn{
        width:100% !important;
        min-height:clamp(33px,2.7vw,39px) !important;
        padding:6px 9px !important;
        border:0 !important;
        border-radius:7px !important;
        background:transparent !important;
        color:#c9d3dc !important;
        font-size:var(--fs-xs) !important;
        font-weight:600 !important;
        text-align:left !important;
        white-space:normal !important;
    }

    .vq-secondary-btn:hover{
        background:#152230 !important;
        color:#ffffff !important;
    }

    /* ===== Status column ===== */
    #mainView > .vq-stat-grid.vq-compact-stats{
        grid-area:status !important;
        position:sticky !important;
        top:calc(clamp(58px,5.3vw,76px) + 20px) !important;
        align-self:start !important;
        display:flex !important;
        flex-direction:column !important;
        gap:clamp(5px,.45vw,8px) !important;
        margin:0 !important;
        padding:var(--ui-pad) !important;
        border-radius:var(--ui-radius) !important;
        border:1px solid var(--a-border-soft) !important;
        background:linear-gradient(180deg,#101a26,#0e1721) !important;
        min-height:calc(100vh - clamp(110px,9vw,145px)) !important;
    }

    #mainView > .vq-stat-grid.vq-compact-stats::before{
        content:"Aktuális állapot";
        display:block;
        font-size:var(--fs-xxs);
        color:#8fa1b2;
        font-weight:700;
        letter-spacing:.14em;
        text-transform:uppercase;
        margin-bottom:3px;
    }

    .vq-compact-stats .vq-stat-card{
        min-height:auto !important;
        padding:clamp(9px,.7vw,12px) !important;
        border-radius:8px !important;
        background:#121d2a !important;
        border:1px solid var(--a-border) !important;
        box-shadow:none !important;
    }

    .vq-compact-stats .vq-stat-card::before{
        display:none !important;
    }

    .vq-compact-stats .vq-stat-label{
        font-size:var(--fs-xs) !important;
        color:#ccd6df !important;
        font-weight:600 !important;
    }

    .vq-compact-stats .vq-stat-icon{
        width:clamp(23px,1.9vw,28px) !important;
        height:clamp(23px,1.9vw,28px) !important;
        border-radius:6px !important;
        background:#173042 !important;
        border:1px solid #294c5e !important;
        font-size:clamp(10px,.8vw,12px) !important;
        filter:saturate(.55) !important;
    }

    .vq-compact-stats .vq-stat-number{
        margin-top:clamp(5px,.4vw,7px) !important;
        font-size:var(--fs-kpi) !important;
        font-weight:700 !important;
        color:#ffffff !important;
        letter-spacing:-.03em !important;
    }

    .vq-compact-stats .vq-stat-note{
        margin-top:3px !important;
        font-size:var(--fs-xxs) !important;
        color:#8293a3 !important;
    }

    /* ===== Central workspace ===== */
    #mainView > .vq-dashboard-bottom{
        grid-area:workspace !important;
        display:grid !important;
        grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
        gap:var(--ui-gap) !important;
        margin:0 !important;
        align-items:stretch !important;
        min-height:calc(100vh - clamp(150px,12vw,190px)) !important;
    }

    .vq-dashboard-bottom .vq-panel{
        min-height:100% !important;
        padding:var(--ui-pad) !important;
        border-radius:var(--ui-radius) !important;
        background:linear-gradient(180deg,#111b27,#0f1822) !important;
        border:1px solid var(--a-border) !important;
        box-shadow:none !important;
    }

    .vq-panel-title,
    .vq-today-title{
        font-size:var(--fs-lg) !important;
        color:#f7f9fb !important;
        font-weight:700 !important;
    }

    .vq-panel-subtitle{
        font-size:var(--fs-xs) !important;
        color:#8fa0af !important;
        font-weight:500 !important;
    }

    .vq-pool-empty,
    .vq-attention-empty,
    .vq-empty-state,
    .vq-empty-state-text,
    .vq-pool-message,
    .vq-info-text{
        font-size:var(--fs-sm) !important;
        color:#cad4dc !important;
        line-height:1.5 !important;
    }

    .vq-shift-grid{
        gap:clamp(6px,.5vw,9px) !important;
    }

    .vq-shift-card{
        min-height:clamp(92px,7vw,118px) !important;
        padding:clamp(10px,.75vw,13px) !important;
        border-radius:8px !important;
        background:#14202c !important;
        border:1px solid var(--a-border) !important;
    }

    .vq-shift-label{
        font-size:var(--fs-xxs) !important;
        color:#aab8c4 !important;
        font-weight:700 !important;
    }

    .vq-shift-value{
        margin-top:6px !important;
        font-size:clamp(25px,2vw,36px) !important;
        color:#ffffff !important;
        font-weight:700 !important;
    }

    .vq-shift-note,
    .vq-shift-foot{
        font-size:var(--fs-xxs) !important;
        color:#8293a3 !important;
        line-height:1.35 !important;
    }

    /* ===== Quick action dialog ===== */
    .vq-quick-sheet{
        width:min(92vw,clamp(480px,39vw,660px)) !important;
        padding:clamp(14px,1vw,20px) !important;
        border-radius:12px !important;
        background:#101923 !important;
        border:1px solid #334555 !important;
        box-shadow:0 24px 60px rgba(0,0,0,.42) !important;
    }

    .vq-quick-sheet-title{
        font-size:var(--fs-lg) !important;
        color:#ffffff !important;
        font-weight:700 !important;
    }

    .vq-quick-sheet-sub{
        font-size:var(--fs-xs) !important;
        color:#8fa0af !important;
    }

    .vq-quick-sheet-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:clamp(7px,.55vw,10px) !important;
    }

    .vq-quick-sheet-action{
        min-height:clamp(78px,6vw,100px) !important;
        padding:clamp(10px,.75vw,14px) !important;
        border-radius:9px !important;
        background:#14212d !important;
        border:1px solid #2b3c4b !important;
        display:grid !important;
        grid-template-columns:clamp(30px,2.5vw,38px) minmax(0,1fr) !important;
        gap:clamp(8px,.6vw,11px) !important;
        align-items:center !important;
        text-align:left !important;
    }

    .vq-quick-sheet-action:hover{
        background:#182734 !important;
        border-color:#405565 !important;
    }

    .vq-quick-sheet-icon{
        width:clamp(30px,2.5vw,38px) !important;
        height:clamp(30px,2.5vw,38px) !important;
        margin:0 !important;
        border-radius:8px !important;
        background:#173042 !important;
        border:1px solid #294c5e !important;
        font-size:clamp(13px,1vw,16px) !important;
        filter:saturate(.58) !important;
    }

    .vq-quick-sheet-action strong{
        font-size:var(--fs-sm) !important;
        color:#f4f7fa !important;
        font-weight:700 !important;
    }

    .vq-quick-sheet-action small{
        margin-top:2px !important;
        font-size:var(--fs-xxs) !important;
        color:#8c9cab !important;
    }

    /* ===== Desktop nav hidden; sidebar is navigation ===== */
    .vq-bottom-nav{
        display:none !important;
    }

    .footer{
        margin-top:clamp(10px,.8vw,16px) !important;
        font-size:var(--fs-xxs) !important;
        color:#647585 !important;
    }

    /* ===== Consistent type across all views ===== */
    #documentsView,
    #formView,
    #searchView,
    #archiveView,
    #statisticsView,
    #openItemsView,
    #verificationView{
        font-family:"Manrope","Segoe UI",Arial,sans-serif !important;
    }
}

/* ===== Small laptop: reduce side columns before stacking ===== */
@media screen and (min-width:700px) and (max-width:1050px){

    :root{
        --sidebar-w:175px;
        --status-w:175px;
    }

    #mainView{
        gap:8px !important;
    }

    .vq-primary-sub{
        display:none !important;
    }

    .vq-secondary-btn{
        font-size:10px !important;
    }

    #mainView > .vq-dashboard-bottom{
        grid-template-columns:1fr !important;
    }
}

/* ===== Very wide monitor: use the available space ===== */
@media screen and (min-width:1800px){

    :root{
        --sidebar-w:260px;
        --status-w:270px;
    }

    #mainView > .vq-dashboard-bottom{
        grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr) !important;
    }
}

/* Existing mobile CSS remains authoritative below 700px. */


/* =========================================================
   VARDIQO 5.2 — OPERATIONS DESK
   Graphite + petrol enterprise theme
   Desktop/laptop only. Existing mobile (<700px) is retained.
========================================================= */
@media screen and (min-width:700px){
    :root{
        --ops-bg:#101214; --ops-bg-2:#141719;
        --ops-surface:#191d20; --ops-surface-2:#1e2428;
        --ops-border:#343c41; --ops-border-soft:#2a3034;
        --ops-text:#f3f1ec; --ops-text-2:#d8d7d2; --ops-text-3:#a5aaab;
        --ops-petrol:#648f91; --ops-petrol-hi:#86acad;
        --ops-ok:#739c83; --ops-warn:#b09a6a; --ops-danger:#ad7773;
    }

    html,body{
        background:
            radial-gradient(circle at 48% -12%,rgba(100,143,145,.10),transparent 32%),
            linear-gradient(180deg,#111416 0%,#0d0f11 100%) !important;
    }
    body{color:var(--ops-text)!important;font-family:"Manrope","Segoe UI",Arial,sans-serif!important;}

    .vq-appbar,.vq-control-sidebar,#mainView>.vq-stat-grid.vq-compact-stats,
    .vq-dashboard-bottom .vq-panel,.vq-history-item,.vq-history-detail,.vq-open-item,
    .vq-detail-card,.vq-quick-sheet{
        background:linear-gradient(180deg,var(--ops-surface-2),var(--ops-surface))!important;
        border-color:var(--ops-border)!important;box-shadow:none!important;
    }

    .vq-appbar{background:rgba(23,27,29,.97)!important;border-bottom-color:var(--ops-border-soft)!important;}
    .vq-mark{background:#20282b!important;border-color:#3a4c50!important;}
    .vq-brand-tagline{color:var(--ops-petrol-hi)!important;}
    .vq-server-state.online{color:#8fb79c!important;}

    .vq-global-search input{background:#1b2023!important;border-color:#394247!important;color:var(--ops-text)!important;}
    .vq-global-search input::placeholder{color:#858e91!important;}

    .vq-sidebar-new{background:#243033!important;border-color:#496064!important;color:#f4f3ef!important;}
    .vq-primary-action:hover,.vq-secondary-btn:hover{background:#252c30!important;border-color:#404a4f!important;}
    .vq-primary-icon,.vq-compact-stats .vq-stat-icon{
        background:#263438!important;border-color:#3b5559!important;filter:grayscale(.15) saturate(.42)!important;
    }
    .vq-primary-title{color:var(--ops-text)!important;}
    .vq-primary-sub,.vq-secondary-btn{color:var(--ops-text-3)!important;}

    .vq-compact-stats .vq-stat-card{background:#1c2225!important;border-color:#343e43!important;}
    .vq-compact-stats .vq-stat-label{color:var(--ops-text-2)!important;}
    .vq-compact-stats .vq-stat-number{color:var(--ops-text)!important;}
    .vq-compact-stats .vq-stat-note{color:#8f989b!important;}

    .vq-rail-shift{margin-top:5px!important;padding:11px!important;border-radius:8px!important;border:1px solid #384247!important;background:#1b2124!important;}
    .vq-rail-shift-head{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:8px!important;margin-bottom:8px!important;color:var(--ops-text-2)!important;font-size:var(--fs-xs)!important;font-weight:700!important;}
    .vq-rail-shift-head button{border:0!important;background:transparent!important;color:var(--ops-petrol-hi)!important;font:inherit!important;font-size:var(--fs-xxs)!important;cursor:pointer!important;}
    .vq-rail-shift-row{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:5px 0!important;border-top:1px solid #2d3539!important;font-size:var(--fs-xxs)!important;color:#aeb4b4!important;}
    .vq-rail-shift-row strong{font-size:var(--fs-sm)!important;color:var(--ops-text)!important;font-weight:700!important;font-variant-numeric:tabular-nums!important;}
    .vq-rail-shift-foot{padding-top:6px!important;color:#7f888b!important;font-size:10px!important;}

    #mainView>.vq-dashboard-bottom{grid-template-columns:minmax(0,1fr)!important;min-height:calc(100vh - clamp(150px,12vw,190px))!important;}
    .vq-dashboard-bottom .vq-panel{min-height:100%!important;background:linear-gradient(180deg,#1b2023,#181c1f)!important;}
    .vq-panel-title{color:var(--ops-text)!important;}
    .vq-panel-subtitle{color:#9da5a7!important;}
    .vq-text-btn{color:var(--ops-petrol-hi)!important;}

    .vq-attention-list{display:flex!important;flex-direction:column!important;gap:7px!important;}
    .vq-ops-item{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;gap:11px!important;align-items:center!important;min-height:62px!important;padding:10px 11px!important;border:1px solid #333c40!important;border-radius:9px!important;background:#1d2326!important;}
    .vq-ops-item:hover{border-color:#49565b!important;background:#21282c!important;}
    .vq-ops-icon{width:34px!important;height:34px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:7px!important;background:#263438!important;border:1px solid #3a5054!important;font-size:15px!important;filter:grayscale(.10) saturate(.55)!important;}
    .vq-ops-copy{min-width:0!important;}
    .vq-ops-title{color:var(--ops-text)!important;font-size:var(--fs-sm)!important;line-height:1.3!important;font-weight:700!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
    .vq-ops-meta{margin-top:2px!important;color:#929b9e!important;font-size:var(--fs-xxs)!important;line-height:1.35!important;}
    .vq-ops-actions{display:flex!important;align-items:center!important;gap:6px!important;}
    .vq-ops-open,.vq-ops-finish{min-height:32px!important;padding:0 10px!important;border-radius:7px!important;font-family:inherit!important;font-size:var(--fs-xxs)!important;font-weight:700!important;cursor:pointer!important;}
    .vq-ops-open{background:transparent!important;border:1px solid #3a4449!important;color:#c8cdcd!important;}
    .vq-ops-finish{background:#263b3b!important;border:1px solid #47605e!important;color:#e7f0ed!important;}
    .vq-ops-finish:hover{background:#304747!important;}
    .vq-ops-empty{display:flex!important;align-items:center!important;justify-content:center!important;min-height:180px!important;color:#9ca4a5!important;font-size:var(--fs-sm)!important;}

    body.vq-modal-open{overflow:hidden!important;}
    body.vq-modal-open::before{content:"";position:fixed;inset:0;z-index:4800;background:rgba(7,9,10,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
    .view.vq-desktop-modal-view{display:block!important;position:fixed!important;z-index:4900!important;top:clamp(72px,7vh,96px)!important;left:clamp(18px,4vw,78px)!important;right:clamp(18px,4vw,78px)!important;bottom:clamp(18px,4vh,46px)!important;width:auto!important;max-width:none!important;margin:0!important;padding:clamp(15px,1.3vw,24px)!important;overflow:auto!important;border-radius:14px!important;border:1px solid #3a4449!important;background:linear-gradient(180deg,#1b2023,#171b1d)!important;box-shadow:0 28px 75px rgba(0,0,0,.45)!important;}
    .vq-modal-close-float{position:sticky!important;top:0!important;z-index:5!important;float:right!important;width:38px!important;height:38px!important;margin:-3px -3px 8px 12px!important;border-radius:8px!important;border:1px solid #3d474c!important;background:#22282b!important;color:#dadddc!important;font-size:18px!important;cursor:pointer!important;}
    .vq-modal-close-float:hover{background:#2b3236!important;color:#fff!important;}
    .view.vq-desktop-modal-view .card,.view.vq-desktop-modal-view .form-section{background:#1d2225!important;border-color:#383f43!important;box-shadow:none!important;}
    .view.vq-desktop-modal-view .section-title,.view.vq-desktop-modal-view .form-section-title{color:var(--ops-text)!important;}
    .view.vq-desktop-modal-view label{color:#c7cac8!important;}

    .vq-quick-sheet{background:#1b2023!important;border-color:#424b50!important;}
    .vq-quick-sheet-action{background:#20272a!important;border-color:#394348!important;}
    .vq-quick-sheet-action:hover{background:#262e32!important;}
    .vq-quick-sheet-icon{background:#29383b!important;border-color:#40575a!important;}
    .vq-fab{background:linear-gradient(180deg,#6e9496,#557c7e)!important;box-shadow:none!important;}
}
@media screen and (min-width:700px) and (max-width:1100px){
    .view.vq-desktop-modal-view{top:68px!important;left:10px!important;right:10px!important;bottom:10px!important;padding:14px!important;}
    .vq-ops-item{grid-template-columns:30px minmax(0,1fr) auto!important;gap:8px!important;padding:9px!important;}
    .vq-ops-actions{flex-direction:column!important;align-items:stretch!important;}
}


/* =========================================================
   VARDIQO 5.3 — ENTERPRISE UI
   Premium SaaS / Security Operations visual system
   Desktop/laptop only. Mobile remains unchanged.
========================================================= */

@media screen and (min-width:700px){

    :root{
        --ent-bg:#090d16;
        --ent-bg-2:#0b0f17;
        --ent-surface:#111827;
        --ent-surface-2:#141c2a;
        --ent-surface-3:#182234;

        --ent-border:rgba(255,255,255,.08);
        --ent-border-hover:rgba(255,255,255,.15);
        --ent-border-focus:rgba(59,130,246,.42);

        --ent-text:#f8fafc;
        --ent-text-2:#dbe4ee;
        --ent-text-3:#94a3b8;
        --ent-text-4:#64748b;

        --ent-accent:#3b82f6;
        --ent-accent-2:#2563eb;
        --ent-accent-soft:rgba(59,130,246,.12);

        --ent-ok:#22c55e;
        --ent-warn:#f59e0b;
        --ent-danger:#ef4444;

        --ent-shadow:0 10px 30px -12px rgba(0,0,0,.58);
        --ent-shadow-soft:0 6px 20px -12px rgba(0,0,0,.5);
    }

    html,body{
        background:
            radial-gradient(circle at 50% -14%,rgba(37,99,235,.10),transparent 31%),
            linear-gradient(180deg,var(--ent-bg) 0%,var(--ent-bg-2) 100%) !important;
    }

    body{
        color:var(--ent-text)!important;
        font-family:"Inter","Segoe UI",Arial,sans-serif!important;
        font-feature-settings:"cv02","cv03","cv04","cv11";
        -webkit-font-smoothing:antialiased;
        text-rendering:optimizeLegibility;
    }

    /* ---------- global premium surface ---------- */
    .vq-control-sidebar,
    #mainView>.vq-stat-grid.vq-compact-stats,
    .vq-dashboard-bottom .vq-panel,
    .vq-history-item,
    .vq-history-detail,
    .vq-open-item,
    .vq-detail-card,
    .vq-quick-sheet,
    .view.vq-desktop-modal-view .card,
    .view.vq-desktop-modal-view .form-section{
        background:linear-gradient(180deg,var(--ent-surface-2),var(--ent-surface))!important;
        border:1px solid var(--ent-border)!important;
        box-shadow:var(--ent-shadow-soft)!important;
    }

    /* ---------- header ---------- */
    .vq-appbar{
        background:rgba(9,13,22,.94)!important;
        border-bottom:1px solid var(--ent-border)!important;
        box-shadow:0 1px 0 rgba(255,255,255,.02)!important;
        backdrop-filter:blur(14px)!important;
        -webkit-backdrop-filter:blur(14px)!important;
    }

    .vq-mark{
        background:#0f172a!important;
        border:1px solid rgba(148,163,184,.18)!important;
        box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)!important;
    }

    .vq-mark svg{
        filter:none!important;
    }

    .vq-mark svg path:first-of-type{
        stroke:#7dd3fc!important;
    }

    .vq-brand-name{
        font-family:"Inter","Segoe UI",sans-serif!important;
        font-weight:800!important;
        letter-spacing:-.025em!important;
        color:#ffffff!important;
    }

    .vq-brand-tagline{
        color:#94a3b8!important;
        font-weight:600!important;
        letter-spacing:.16em!important;
    }

    .vq-usertext strong{color:#f8fafc!important;}
    #vqUserMeta,.vq-header-clock{color:#cbd5e1!important;}
    .vq-server-state{color:#94a3b8!important;}
    .vq-server-state.online{color:#86efac!important;}

    .vq-logout,
    .vq-header-action{
        background:#111827!important;
        border:1px solid var(--ent-border)!important;
        color:#e5edf6!important;
        transition:all .18s ease!important;
    }

    .vq-logout:hover,
    .vq-header-action:hover{
        border-color:var(--ent-border-hover)!important;
        background:#162033!important;
        transform:translateY(-1px)!important;
    }

    /* ---------- search ---------- */
    .vq-global-search{
        position:relative!important;
    }

    .vq-global-search input{
        background:#111827!important;
        border:1px solid var(--ent-border)!important;
        color:#f8fafc!important;
        box-shadow:var(--ent-shadow-soft)!important;
        transition:border-color .18s ease,background .18s ease,box-shadow .18s ease!important;
        padding-right:78px!important;
    }

    .vq-global-search input::placeholder{
        color:#64748b!important;
    }

    .vq-global-search input:focus{
        border-color:var(--ent-border-focus)!important;
        background:#131d2e!important;
        box-shadow:0 0 0 3px rgba(59,130,246,.08),var(--ent-shadow-soft)!important;
        outline:none!important;
    }

    .vq-search-shortcut{
        position:absolute!important;
        z-index:5!important;
        right:12px!important;
        top:50%!important;
        transform:translateY(-50%)!important;
        display:inline-flex!important;
        align-items:center!important;
        height:24px!important;
        padding:0 8px!important;
        border-radius:6px!important;
        border:1px solid rgba(148,163,184,.18)!important;
        background:#0f172a!important;
        color:#94a3b8!important;
        font-size:10px!important;
        font-weight:600!important;
        letter-spacing:.03em!important;
        pointer-events:none!important;
    }

    /* ---------- sidebar ---------- */
    .vq-sidebar-kicker{
        color:#64748b!important;
        font-weight:700!important;
    }

    .vq-sidebar-new{
        background:linear-gradient(180deg,#3b82f6,#2563eb)!important;
        border:1px solid rgba(96,165,250,.50)!important;
        color:#ffffff!important;
        box-shadow:0 8px 20px -10px rgba(37,99,235,.72)!important;
        transition:all .18s cubic-bezier(.16,1,.3,1)!important;
    }

    .vq-sidebar-new:hover{
        transform:translateY(-1px)!important;
        background:linear-gradient(180deg,#4b8df7,#2f6de0)!important;
        box-shadow:0 10px 24px -10px rgba(37,99,235,.8)!important;
    }

    .vq-primary-action{
        transition:all .18s cubic-bezier(.16,1,.3,1)!important;
    }

    .vq-primary-action:hover{
        background:#162033!important;
        border-color:var(--ent-border-hover)!important;
        transform:translateY(-1px)!important;
    }

    .vq-primary-icon,
    .vq-compact-stats .vq-stat-icon,
    .vq-ops-icon,
    .vq-quick-sheet-icon{
        background:#172033!important;
        border:1px solid rgba(148,163,184,.14)!important;
        filter:grayscale(.35) saturate(.50)!important;
        color:#cbd5e1!important;
        box-shadow:none!important;
    }

    .vq-primary-title{color:#f8fafc!important;}
    .vq-primary-sub{color:#94a3b8!important;}

    .vq-secondary-btn{
        color:#cbd5e1!important;
        transition:all .16s ease!important;
    }

    .vq-secondary-btn:hover{
        background:#162033!important;
        color:#ffffff!important;
        transform:translateX(2px)!important;
    }

    /* ---------- right status rail ---------- */
    .vq-compact-stats .vq-stat-card{
        background:#111827!important;
        border:1px solid var(--ent-border)!important;
        box-shadow:none!important;
        transition:all .18s ease!important;
    }

    .vq-compact-stats .vq-stat-card:hover{
        border-color:var(--ent-border-hover)!important;
        transform:translateY(-1px)!important;
    }

    .vq-compact-stats .vq-stat-label{
        color:#cbd5e1!important;
    }

    .vq-compact-stats .vq-stat-number{
        color:#f8fafc!important;
        font-weight:800!important;
        text-shadow:0 0 22px rgba(59,130,246,.08)!important;
    }

    .vq-compact-stats .vq-stat-card:first-of-type .vq-stat-number{
        color:#86efac!important;
        text-shadow:0 0 22px rgba(34,197,94,.15)!important;
    }

    .vq-compact-stats .vq-stat-note{
        color:#94a3b8!important;
    }

    .vq-rail-shift{
        background:#111827!important;
        border:1px solid var(--ent-border)!important;
        box-shadow:none!important;
    }

    .vq-rail-shift-head{color:#cbd5e1!important;}
    .vq-rail-shift-head button{color:#60a5fa!important;}
    .vq-rail-shift-row{border-color:rgba(255,255,255,.06)!important;color:#94a3b8!important;}
    .vq-rail-shift-row strong{color:#f8fafc!important;}
    .vq-rail-shift-foot{color:#64748b!important;}

    /* ---------- operations panel ---------- */
    .vq-dashboard-bottom .vq-panel{
        background:linear-gradient(180deg,#121a28,#101724)!important;
        box-shadow:var(--ent-shadow)!important;
    }

    .vq-panel-title{color:#f8fafc!important;}
    .vq-panel-subtitle{color:#94a3b8!important;}
    .vq-text-btn{color:#60a5fa!important;}

    .vq-ops-item{
        background:#111827!important;
        border:1px solid var(--ent-border)!important;
        box-shadow:none!important;
        transition:all .18s cubic-bezier(.16,1,.3,1)!important;
    }

    .vq-ops-item:hover{
        background:#151f31!important;
        border-color:var(--ent-border-hover)!important;
        transform:translateY(-1px)!important;
        box-shadow:0 8px 24px -18px rgba(0,0,0,.7)!important;
    }

    .vq-ops-title{color:#f8fafc!important;}
    .vq-ops-meta{color:#94a3b8!important;}

    .vq-ops-open{
        background:#0f172a!important;
        border:1px solid rgba(148,163,184,.16)!important;
        color:#cbd5e1!important;
        transition:all .16s ease!important;
    }

    .vq-ops-open:hover{
        border-color:rgba(96,165,250,.35)!important;
        color:#ffffff!important;
        background:#152033!important;
    }

    .vq-ops-finish{
        background:#14261d!important;
        border:1px solid rgba(34,197,94,.22)!important;
        color:#bbf7d0!important;
        transition:all .16s ease!important;
    }

    .vq-ops-finish:hover{
        background:#183020!important;
        border-color:rgba(34,197,94,.36)!important;
    }

    .vq-ops-empty{
        min-height:220px!important;
        color:#94a3b8!important;
        position:relative!important;
        padding-top:54px!important;
        text-align:center!important;
    }

    .vq-ops-empty::before{
        content:"✓";
        position:absolute;
        top:58px;
        left:50%;
        transform:translateX(-50%);
        width:34px;
        height:34px;
        display:flex;
        align-items:center;
        justify-content:center;
        border-radius:50%;
        background:rgba(34,197,94,.10);
        border:1px solid rgba(34,197,94,.20);
        color:#86efac;
        font-weight:800;
    }

    /* ---------- quick modal / overlay ---------- */
    body.vq-modal-open::before{
        background:rgba(2,6,12,.74)!important;
        backdrop-filter:blur(8px)!important;
        -webkit-backdrop-filter:blur(8px)!important;
    }

    .view.vq-desktop-modal-view{
        background:linear-gradient(180deg,#0f1724,#0c131f)!important;
        border:1px solid var(--ent-border-hover)!important;
        box-shadow:0 28px 70px -12px rgba(0,0,0,.72)!important;
    }

    .vq-modal-close-float{
        background:#111827!important;
        border:1px solid var(--ent-border)!important;
        color:#cbd5e1!important;
    }

    .vq-modal-close-float:hover{
        background:#172033!important;
        border-color:var(--ent-border-hover)!important;
        color:#ffffff!important;
    }

    .vq-quick-sheet{
        background:#0f1724!important;
        border:1px solid var(--ent-border-hover)!important;
        box-shadow:0 28px 70px -14px rgba(0,0,0,.68)!important;
    }

    .vq-quick-sheet-title{color:#f8fafc!important;}
    .vq-quick-sheet-sub{color:#94a3b8!important;}

    .vq-quick-sheet-action{
        background:#111827!important;
        border:1px solid var(--ent-border)!important;
        transition:all .18s ease!important;
    }

    .vq-quick-sheet-action:hover{
        background:#162033!important;
        border-color:var(--ent-border-hover)!important;
        transform:translateY(-1px)!important;
    }

    .vq-quick-sheet-action strong{color:#f8fafc!important;}
    .vq-quick-sheet-action small{color:#94a3b8!important;}

    .vq-fab{
        background:linear-gradient(180deg,#3b82f6,#2563eb)!important;
        box-shadow:0 10px 24px -10px rgba(37,99,235,.72)!important;
    }

    /* ---------- forms ---------- */
    .view.vq-desktop-modal-view input,
    .view.vq-desktop-modal-view select,
    .view.vq-desktop-modal-view textarea{
        background:#0f172a!important;
        border:1px solid rgba(148,163,184,.16)!important;
        color:#f8fafc!important;
        box-shadow:none!important;
        transition:all .16s ease!important;
    }

    .view.vq-desktop-modal-view input:focus,
    .view.vq-desktop-modal-view select:focus,
    .view.vq-desktop-modal-view textarea:focus{
        border-color:rgba(59,130,246,.48)!important;
        box-shadow:0 0 0 3px rgba(59,130,246,.08)!important;
        outline:none!important;
    }

    .view.vq-desktop-modal-view input::placeholder,
    .view.vq-desktop-modal-view textarea::placeholder{
        color:#64748b!important;
    }

    .view.vq-desktop-modal-view label{
        color:#cbd5e1!important;
    }

    .view.vq-desktop-modal-view .section-title,
    .view.vq-desktop-modal-view .form-section-title{
        color:#f8fafc!important;
    }

    /* ---------- neutralize leftover rainbow/glow ---------- */
    [style*="linear-gradient(90deg"],
    [style*="linear-gradient(135deg"]{
        filter:saturate(.65);
    }
}


/* =========================================================
   VARDIQO 5.3.1 — MODAL STACKING FIX
   Authoritative desktop overlay layer
========================================================= */
@media screen and (min-width:700px){

    body.vq-modal-open{
        overflow:hidden !important;
    }

    body.vq-modal-open::before{
        content:"" !important;
        position:fixed !important;
        inset:0 !important;
        z-index:2147483000 !important;
        background:rgba(2,6,12,.76) !important;
        backdrop-filter:blur(8px) !important;
        -webkit-backdrop-filter:blur(8px) !important;
        pointer-events:auto !important;
    }

    body > .view.vq-desktop-modal-view{
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;

        position:fixed !important;
        z-index:2147483100 !important;

        top:clamp(72px,6vh,92px) !important;
        right:clamp(16px,3vw,56px) !important;
        bottom:clamp(16px,3vh,38px) !important;
        left:clamp(16px,3vw,56px) !important;

        width:auto !important;
        height:auto !important;
        max-width:none !important;
        max-height:none !important;

        margin:0 !important;
        padding:clamp(16px,1.25vw,24px) !important;

        overflow:auto !important;
        overscroll-behavior:contain !important;

        border:1px solid rgba(255,255,255,.14) !important;
        border-radius:14px !important;
        background:linear-gradient(180deg,#0f1724,#0c131f) !important;
        box-shadow:0 32px 90px -18px rgba(0,0,0,.82) !important;

        animation:vqModalIn .16s cubic-bezier(.16,1,.3,1) both !important;
        transform:none !important;
        filter:none !important;
    }

    @keyframes vqModalIn{
        from{
            opacity:0;
            transform:translateY(8px) scale(.995);
        }
        to{
            opacity:1;
            transform:translateY(0) scale(1);
        }
    }

    body > .view.vq-desktop-modal-view .vq-modal-close-float{
        position:sticky !important;
        z-index:2147483200 !important;
        top:0 !important;
    }
}


/* =========================================================
   VARDIQO 5.3.2 — MODAL CONTENT CLEANUP
   Hide legacy page navigation inside desktop modals.
========================================================= */
@media screen and (min-width:700px){

    body > .view.vq-desktop-modal-view > .vq-page-actions{
        display:none !important;
    }

    body > .view.vq-desktop-modal-view > .section-header{
        margin-top:0 !important;
        padding-top:0 !important;
        min-height:auto !important;
    }

    body > .view.vq-desktop-modal-view > .section-header .back{
        display:none !important;
    }

    body > .view.vq-desktop-modal-view > .section-header .section-title{
        margin-top:0 !important;
        padding-top:0 !important;
    }

    /* Give the close button clear ownership of modal navigation */
    body > .view.vq-desktop-modal-view .vq-modal-close-float{
        position:sticky !important;
        top:0 !important;
        float:right !important;
        margin:0 0 10px 14px !important;
    }
}


/* =========================================================
   VARDIQO 5.3.3 — HEADER SEARCH / COMPACT WORKSPACE
   Search moves to the appbar; unused dashboard row is removed.
========================================================= */
@media screen and (min-width:700px){

    /* Header: brand + centered fluid search + account actions */
    .vq-appbar-inner{
        display:flex !important;
        align-items:center !important;
        gap:clamp(12px,1vw,20px) !important;
    }

    .vq-brand-home{
        flex:0 0 auto !important;
    }

    .vq-appbar-spacer{
        display:none !important;
    }

    .vq-header-search{
        position:relative !important;
        flex:1 1 520px !important;
        min-width:240px !important;
        max-width:900px !important;
        margin:0 auto !important;
        align-self:center !important;
    }

    .vq-header-search input{
        width:100% !important;
        height:clamp(42px,3.1vw,48px) !important;
        min-height:0 !important;
        margin:0 !important;
        padding-left:42px !important;
        padding-right:72px !important;
        border-radius:10px !important;
        background:#111827 !important;
        border:1px solid rgba(255,255,255,.09) !important;
        color:#f8fafc !important;
        font-size:clamp(12px,.82vw,14px) !important;
        box-shadow:none !important;
    }

    .vq-header-search .vq-global-search-icon{
        left:15px !important;
    }

    .vq-header-search .vq-search-results{
        top:calc(100% + 8px) !important;
        z-index:2500 !important;
    }

    .vq-header-search .vq-search-shortcut{
        right:10px !important;
    }

    .vq-userbox{
        flex:0 0 auto !important;
    }

    /* No search row in the main grid anymore */
    #mainView{
        display:grid !important;
        grid-template-columns:var(--sidebar-w) minmax(0,1fr) var(--status-w) !important;
        grid-template-areas:"sidebar workspace status" !important;
        grid-template-rows:minmax(0,1fr) !important;
        gap:var(--ui-gap) !important;
        align-items:stretch !important;
        min-height:calc(100vh - clamp(92px,7vw,112px)) !important;
    }

    #mainView > .vq-dashboard-bottom{
        grid-area:workspace !important;
        margin:0 !important;
        min-height:calc(100vh - clamp(108px,8vw,132px)) !important;
    }

    .vq-dashboard-bottom .vq-panel{
        min-height:calc(100vh - clamp(108px,8vw,132px)) !important;
        height:auto !important;
    }

    .vq-control-sidebar,
    #mainView > .vq-stat-grid.vq-compact-stats{
        min-height:calc(100vh - clamp(108px,8vw,132px)) !important;
    }
}

/* Small laptop: keep all header pieces on one line */
@media screen and (min-width:700px) and (max-width:1100px){
    .vq-header-search{
        flex-basis:300px !important;
        min-width:180px !important;
    }

    .vq-header-search input{
        font-size:11px !important;
        padding-left:36px !important;
        padding-right:60px !important;
    }

    .vq-usertext #vqUserMeta{
        max-width:150px !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        white-space:nowrap !important;
    }
}


/* =========================================================
   VARDIQO 5.4 — ALERT / OPERATIONS DASHBOARD
========================================================= */
@media screen and (min-width:700px){

    #mainView > .vq-dashboard-bottom{
        display:block !important;
        min-width:0 !important;
    }

    .vq-center-stack{
        display:flex !important;
        flex-direction:column !important;
        gap:clamp(10px,.8vw,14px) !important;
        min-width:0 !important;
        min-height:100% !important;
    }

    .vq-top-kpis{
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:clamp(8px,.65vw,12px) !important;
    }

    .vq-top-kpi{
        min-width:0 !important;
        min-height:clamp(82px,6.7vw,104px) !important;
        display:grid !important;
        grid-template-columns:clamp(34px,2.8vw,44px) minmax(0,1fr) !important;
        align-items:center !important;
        gap:clamp(9px,.7vw,12px) !important;
        padding:clamp(10px,.8vw,14px) !important;
        border-radius:11px !important;
        border:1px solid rgba(255,255,255,.08) !important;
        background:linear-gradient(180deg,#121b2a,#0f1724) !important;
        color:#f8fafc !important;
        text-align:left !important;
        cursor:pointer !important;
        transition:border-color .18s ease,transform .18s ease,background .18s ease !important;
    }

    .vq-top-kpi:hover{
        border-color:rgba(255,255,255,.16) !important;
        background:#152033 !important;
        transform:translateY(-1px) !important;
    }

    .vq-top-kpi-icon{
        width:clamp(34px,2.8vw,44px) !important;
        height:clamp(34px,2.8vw,44px) !important;
        display:grid !important;
        place-items:center !important;
        border-radius:9px !important;
        border:1px solid rgba(148,163,184,.13) !important;
        background:#172033 !important;
        font-size:clamp(14px,1.15vw,18px) !important;
        filter:grayscale(.20) saturate(.65) !important;
    }

    .vq-top-kpi-copy{
        min-width:0 !important;
        display:grid !important;
        grid-template-columns:1fr auto !important;
        grid-template-areas:"label value" "note value" !important;
        align-items:center !important;
        column-gap:8px !important;
    }

    .vq-top-kpi-label{
        grid-area:label !important;
        color:#cbd5e1 !important;
        font-size:clamp(10px,.72vw,12px) !important;
        font-weight:600 !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }

    .vq-top-kpi strong{
        grid-area:value !important;
        font-size:clamp(25px,1.95vw,37px) !important;
        line-height:1 !important;
        font-weight:800 !important;
        color:#f8fafc !important;
        font-variant-numeric:tabular-nums !important;
    }

    .vq-top-kpi-note{
        grid-area:note !important;
        color:#94a3b8 !important;
        font-size:clamp(9px,.63vw,11px) !important;
    }

    /* Horizontal overdue alert */
    .vq-center-stack > .vq-overdue-banner{
        flex:none !important;
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
        padding:clamp(10px,.75vw,13px) clamp(13px,1vw,18px) !important;
        border-radius:10px !important;
        border:1px solid rgba(239,68,68,.48) !important;
        background:linear-gradient(90deg,rgba(127,29,29,.28),rgba(69,10,10,.13)),#15131a !important;
        cursor:pointer !important;
    }

    .vq-center-stack > .vq-overdue-banner.visible{
        display:grid !important;
        grid-template-columns:auto minmax(0,1fr) !important;
        align-items:center !important;
        column-gap:14px !important;
        animation:vqEnterpriseAlertPulse 1.45s ease-in-out infinite !important;
    }

    .vq-overdue-title{
        margin:0 !important;
        color:#f87171 !important;
        font-size:clamp(11px,.78vw,13px) !important;
        font-weight:800 !important;
        letter-spacing:.01em !important;
        text-transform:none !important;
        white-space:nowrap !important;
    }

    .vq-overdue-count{
        display:inline-grid !important;
        place-items:center !important;
        min-width:22px !important;
        height:22px !important;
        margin-right:7px !important;
        padding:0 6px !important;
        border-radius:999px !important;
        background:#dc2626 !important;
        color:#fff !important;
        font-size:11px !important;
    }

    .vq-overdue-list{
        min-width:0 !important;
        color:#fecaca !important;
        font-size:clamp(10px,.7vw,12px) !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }

    @keyframes vqEnterpriseAlertPulse{
        0%,100%{border-color:rgba(239,68,68,.38);box-shadow:0 0 0 0 rgba(239,68,68,0)}
        50%{border-color:rgba(248,113,113,.84);box-shadow:0 0 0 3px rgba(239,68,68,.08),0 0 24px rgba(239,68,68,.11)}
    }

    .vq-ops-toolbar{margin:0 0 10px !important;}
    .vq-ops-tabs{
        display:flex !important;
        gap:4px !important;
        padding:4px !important;
        border-radius:9px !important;
        background:#0e1622 !important;
        border:1px solid rgba(255,255,255,.055) !important;
        overflow-x:auto !important;
    }
    .vq-ops-tabs button{
        min-height:34px !important;
        flex:0 0 auto !important;
        padding:0 11px !important;
        border:0 !important;
        border-radius:7px !important;
        background:transparent !important;
        color:#94a3b8 !important;
        font-family:inherit !important;
        font-size:clamp(10px,.72vw,12px) !important;
        font-weight:600 !important;
        cursor:pointer !important;
    }
    .vq-ops-tabs button.active{
        background:#172033 !important;
        color:#f8fafc !important;
        box-shadow:inset 0 -2px 0 #3b82f6 !important;
    }
    .vq-ops-tabs button span{margin-left:4px !important;color:#64748b !important;font-size:.92em !important;}

    .vq-ops-item{
        grid-template-columns:34px minmax(0,1fr) minmax(120px,auto) 118px !important;
        gap:clamp(9px,.7vw,13px) !important;
        min-height:78px !important;
    }

    .vq-ops-deadline{
        min-width:120px !important;
        text-align:right !important;
        align-self:center !important;
    }
    .vq-ops-deadline strong{
        display:block !important;
        font-size:clamp(11px,.75vw,13px) !important;
        font-weight:800 !important;
        color:#94a3b8 !important;
        white-space:nowrap !important;
    }
    .vq-ops-deadline small{
        display:block !important;
        margin-top:3px !important;
        color:#64748b !important;
        font-size:clamp(9px,.62vw,10px) !important;
        white-space:nowrap !important;
    }

    .vq-ops-item.pool-warning{
        border-color:rgba(245,158,11,.34) !important;
        background:linear-gradient(90deg,rgba(120,53,15,.10),transparent 30%),#111827 !important;
    }
    .vq-ops-item.pool-warning .vq-ops-title,
    .vq-ops-item.pool-warning .vq-ops-deadline strong{color:#fbbf24 !important;}

    .vq-ops-item.pool-overdue{
        border-color:rgba(239,68,68,.44) !important;
        background:linear-gradient(90deg,rgba(127,29,29,.14),transparent 34%),#111827 !important;
    }
    .vq-ops-item.pool-overdue .vq-ops-title,
    .vq-ops-item.pool-overdue .vq-ops-deadline strong{color:#f87171 !important;}

    /* Same-size action buttons, pixel-aligned */
    .vq-ops-actions{
        width:118px !important;
        min-width:118px !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        grid-template-rows:repeat(2,36px) !important;
        gap:6px !important;
        align-self:center !important;
    }
    .vq-ops-open,.vq-ops-finish{
        width:118px !important;
        min-width:118px !important;
        max-width:118px !important;
        height:36px !important;
        min-height:36px !important;
        max-height:36px !important;
        margin:0 !important;
        padding:0 8px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        border-radius:7px !important;
        white-space:nowrap !important;
        line-height:1 !important;
        box-sizing:border-box !important;
    }

    /* Pool status tile is FIRST in right rail */
    #vqPoolKeysTile{order:-10 !important;}

    /* Due soon = yellow */
    #vqPoolKeysTile.pool-tile-warning,
    #vqTopPoolKeysTile.pool-tile-warning{
        border-color:rgba(245,158,11,.52) !important;
        background:linear-gradient(180deg,rgba(120,53,15,.18),rgba(17,24,39,.97)) !important;
    }
    #vqPoolKeysTile.pool-tile-warning .vq-stat-label,
    #vqPoolKeysTile.pool-tile-warning .vq-stat-number,
    #vqPoolKeysTile.pool-tile-warning .vq-stat-note,
    #vqTopPoolKeysTile.pool-tile-warning .vq-top-kpi-label,
    #vqTopPoolKeysTile.pool-tile-warning strong,
    #vqTopPoolKeysTile.pool-tile-warning .vq-top-kpi-note{
        color:#fbbf24 !important;
    }

    /* Overdue = red + pulse/blink */
    #vqPoolKeysTile.pool-tile-overdue,
    #vqTopPoolKeysTile.pool-tile-overdue{
        border-color:rgba(239,68,68,.76) !important;
        background:radial-gradient(circle at 88% 14%,rgba(239,68,68,.13),transparent 34%),linear-gradient(180deg,rgba(127,29,29,.24),rgba(17,24,39,.98)) !important;
        animation:vqPoolCriticalBlink 1.2s ease-in-out infinite !important;
    }
    #vqPoolKeysTile.pool-tile-overdue .vq-stat-label,
    #vqPoolKeysTile.pool-tile-overdue .vq-stat-number,
    #vqPoolKeysTile.pool-tile-overdue .vq-stat-note,
    #vqTopPoolKeysTile.pool-tile-overdue .vq-top-kpi-label,
    #vqTopPoolKeysTile.pool-tile-overdue strong,
    #vqTopPoolKeysTile.pool-tile-overdue .vq-top-kpi-note{
        color:#f87171 !important;
        font-weight:800 !important;
    }
    #vqPoolKeysTile.pool-tile-overdue .vq-stat-note::after{
        content:" · LEJÁRT HATÁRIDŐ";
        color:#ef4444;
        font-weight:800;
    }
    @keyframes vqPoolCriticalBlink{
        0%,100%{border-color:rgba(239,68,68,.52);box-shadow:0 0 0 0 rgba(239,68,68,0)}
        50%{border-color:rgba(248,113,113,1);box-shadow:0 0 0 3px rgba(239,68,68,.10),0 0 24px rgba(239,68,68,.14)}
    }
}

@media screen and (min-width:700px) and (max-width:1180px){
    .vq-top-kpis{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
    .vq-ops-item{grid-template-columns:30px minmax(0,1fr) 96px 104px !important;gap:7px !important;}
    .vq-ops-deadline{min-width:96px !important;}
    .vq-ops-actions,.vq-ops-open,.vq-ops-finish{
        width:104px !important;min-width:104px !important;max-width:104px !important;
    }
}


/* VARDIQO 5.4.1 — duplicated center KPIs removed */
.vq-top-kpis{display:none!important;}

@media screen and (max-width:699px){
 html,body{overflow-x:hidden!important}
 body{background:#090e16!important}
 #mainView{padding:8px!important}

 /* compact header + search */
 .vq-topbar{height:auto!important;min-height:60px!important;padding:8px 10px!important;gap:7px!important;
   position:sticky!important;top:0!important;z-index:1200!important;background:rgba(9,14,22,.97)!important;
   backdrop-filter:blur(14px)!important;border-bottom:1px solid rgba(255,255,255,.07)!important}
 .vq-brand{gap:7px!important;min-width:0!important}
 .vq-brand-mark{width:36px!important;height:36px!important;min-width:36px!important;border-radius:9px!important}
 .vq-brand-title{font-size:19px!important;letter-spacing:-.025em!important}
 .vq-brand-subtitle,.vq-user-meta,.vq-search-shortcut{display:none!important}
 .vq-user-area{margin-left:auto!important;gap:5px!important}
 .vq-logout{height:36px!important;min-width:auto!important;padding:0 10px!important;font-size:12px!important}
 .vq-header-search{order:3!important;width:100%!important;max-width:none!important;height:40px!important;margin:0!important}
 .vq-header-search input{height:40px!important;font-size:13px!important}

 /* navigation becomes horizontal */
 .vq-sidebar{width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;position:static!important;
   margin:0 0 8px!important;padding:7px!important;display:flex!important;gap:6px!important;overflow-x:auto!important;
   scrollbar-width:none!important;border-radius:10px!important;background:#0f1724!important;border:1px solid rgba(255,255,255,.07)!important}
 .vq-sidebar::-webkit-scrollbar{display:none!important}
 .vq-sidebar-title,.vq-sidebar-separator,.vq-sidebar .vq-nav-description{display:none!important}
 .vq-sidebar .vq-new-action,.vq-sidebar .vq-nav-item{flex:0 0 auto!important;width:auto!important;min-width:max-content!important;
   min-height:42px!important;margin:0!important;padding:0 11px!important;display:flex!important;align-items:center!important;
   gap:6px!important;border-radius:8px!important;font-size:12px!important}

 /* status is the ONLY KPI/status area */
 .vq-status-panel{width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;position:static!important;
   margin:0 0 8px!important;padding:9px!important;border-radius:10px!important;background:#0f1724!important;
   border:1px solid rgba(255,255,255,.07)!important}
 .vq-status-title{margin:0 0 7px!important;font-size:10px!important;letter-spacing:.10em!important;color:#94a3b8!important}
 .vq-status-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
 .vq-stat-card{min-width:0!important;min-height:78px!important;padding:9px!important;border-radius:9px!important;
   background:#111827!important;border:1px solid rgba(255,255,255,.07)!important}
 #vqPoolKeysTile{order:-10!important}
 #vqPoolKeysTile.pool-tile-warning,#vqPoolKeysTile.pool-tile-overdue{grid-column:1/-1!important}
 .vq-stat-label{font-size:10px!important;line-height:1.2!important}
 .vq-stat-number{margin-top:4px!important;font-size:28px!important;line-height:1!important}
 .vq-stat-note{margin-top:3px!important;font-size:9px!important;line-height:1.25!important}

 /* central operations */
 .vq-dashboard-shell,.vq-dashboard-grid,.vq-dashboard-bottom{display:block!important;width:100%!important;min-width:0!important;
   margin:0!important;padding:0!important}
 .vq-center-stack{display:flex!important;flex-direction:column!important;gap:8px!important;width:100%!important;min-width:0!important}
 .vq-panel{width:100%!important;min-width:0!important;padding:10px!important;border-radius:10px!important;background:#0f1724!important;
   border:1px solid rgba(255,255,255,.07)!important;box-shadow:none!important}
 .vq-panel-title{font-size:17px!important;line-height:1.15!important}
 .vq-panel-subtitle{font-size:10px!important;line-height:1.35!important;color:#94a3b8!important}

 /* alert */
 .vq-center-stack>.vq-overdue-banner{width:100%!important;min-width:0!important;margin:0!important;padding:10px 11px!important;border-radius:9px!important}
 .vq-center-stack>.vq-overdue-banner.visible{display:block!important}
 .vq-overdue-title{white-space:normal!important;font-size:11px!important;line-height:1.35!important}
 .vq-overdue-list{margin-top:4px!important;white-space:normal!important;font-size:10px!important;line-height:1.35!important}

 /* filter tabs */
 .vq-ops-toolbar{margin:0 0 7px!important}
 .vq-ops-tabs{gap:3px!important;padding:3px!important;overflow-x:auto!important;scrollbar-width:none!important}
 .vq-ops-tabs::-webkit-scrollbar{display:none!important}
 .vq-ops-tabs button{min-height:35px!important;padding:0 9px!important;font-size:10px!important}

 /* record cards */
 .vq-attention-list{display:flex!important;flex-direction:column!important;gap:7px!important}
 .vq-ops-item{width:100%!important;min-width:0!important;min-height:0!important;display:grid!important;
   grid-template-columns:32px minmax(0,1fr)!important;grid-template-areas:"icon copy" "deadline deadline" "actions actions"!important;
   gap:7px 8px!important;padding:10px!important;border-radius:9px!important}
 .vq-ops-icon{grid-area:icon!important;width:32px!important;height:32px!important;align-self:start!important}
 .vq-ops-copy{grid-area:copy!important;min-width:0!important}
 .vq-ops-title{font-size:13px!important;line-height:1.25!important;font-weight:700!important}
 .vq-ops-meta{margin-top:3px!important;font-size:10px!important;line-height:1.35!important;color:#94a3b8!important;overflow-wrap:anywhere!important}
 .vq-ops-deadline{grid-area:deadline!important;width:100%!important;min-width:0!important;padding:7px 8px!important;text-align:left!important;
   border-radius:7px!important;background:rgba(255,255,255,.025)!important}
 .vq-ops-deadline:empty{display:none!important}
 .vq-ops-deadline strong,.vq-ops-deadline small{white-space:normal!important}
 .vq-ops-actions{grid-area:actions!important;width:100%!important;min-width:0!important;display:grid!important;
   grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:40px!important;gap:6px!important}
 .vq-ops-open,.vq-ops-finish{width:100%!important;min-width:0!important;max-width:none!important;height:40px!important;
   min-height:40px!important;max-height:40px!important;padding:0 7px!important;font-size:11px!important;border-radius:8px!important}
}


/* =========================================================
   VARDIQO 5.4.2 — COMPACT ACTIONS + NEW PROTOCOL
========================================================= */

@media screen and (min-width:700px){

    /* Dedicated new protocol shortcut under New action */
    .vq-sidebar-protocol{
        width:100% !important;
        min-height:42px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        gap:9px !important;
        margin:0 0 4px !important;
        padding:0 12px !important;
        border-radius:8px !important;
        border:1px solid rgba(96,165,250,.20) !important;
        background:#142033 !important;
        color:#dbeafe !important;
        font-family:inherit !important;
        font-size:12px !important;
        font-weight:700 !important;
        cursor:pointer !important;
        transition:all .16s ease !important;
    }

    .vq-sidebar-protocol:hover{
        background:#18263a !important;
        border-color:rgba(96,165,250,.38) !important;
        color:#ffffff !important;
        transform:translateY(-1px) !important;
    }

    .vq-sidebar-protocol-icon{
        display:grid !important;
        place-items:center !important;
        width:24px !important;
        height:24px !important;
        flex:0 0 24px !important;
        border-radius:6px !important;
        background:#1c2d46 !important;
        color:#93c5fd !important;
        font-size:13px !important;
    }

    /* Lower record cards: actions side-by-side */
    .vq-ops-item{
        grid-template-columns:34px minmax(0,1fr) minmax(120px,auto) 250px !important;
        min-height:66px !important;
    }

    .vq-ops-actions{
        width:250px !important;
        min-width:250px !important;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-template-rows:36px !important;
        gap:7px !important;
        align-self:center !important;
    }

    .vq-ops-open,
    .vq-ops-finish{
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        height:36px !important;
        min-height:36px !important;
        max-height:36px !important;
        margin:0 !important;
        padding:0 8px !important;
        box-sizing:border-box !important;
    }
}

/* Laptop: compact but still side-by-side */
@media screen and (min-width:700px) and (max-width:1180px){

    .vq-ops-item{
        grid-template-columns:30px minmax(0,1fr) 92px 214px !important;
        gap:7px !important;
        min-height:62px !important;
    }

    .vq-ops-deadline{
        min-width:92px !important;
    }

    .vq-ops-actions{
        width:214px !important;
        min-width:214px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-template-rows:34px !important;
        gap:6px !important;
    }

    .vq-ops-open,
    .vq-ops-finish{
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        height:34px !important;
        min-height:34px !important;
        max-height:34px !important;
        font-size:10px !important;
    }
}

/* Mobile: keep the two equal buttons side-by-side */
@media screen and (max-width:699px){

    .vq-sidebar-protocol{
        flex:0 0 auto !important;
        width:auto !important;
        min-width:max-content !important;
        min-height:42px !important;
        margin:0 !important;
        padding:0 11px !important;
        display:flex !important;
        align-items:center !important;
        gap:6px !important;
        border-radius:8px !important;
        border:1px solid rgba(96,165,250,.20) !important;
        background:#142033 !important;
        color:#dbeafe !important;
        font-family:inherit !important;
        font-size:12px !important;
        font-weight:700 !important;
    }

    .vq-sidebar-protocol-icon{
        width:22px !important;
        height:22px !important;
        display:grid !important;
        place-items:center !important;
        border-radius:5px !important;
        background:#1c2d46 !important;
        color:#93c5fd !important;
    }
}


/* =========================================================
   VARDIQO 5.4.3 — Record origin + automatic event sentence
========================================================= */
.vq-record-origin{
    color:#93c5fd !important;
    font-weight:600 !important;
}

.vq-record-summary{
    display:block !important;
    margin-top:4px !important;
    color:#dbe4ee !important;
    font-size:clamp(10px,.72vw,12px) !important;
    line-height:1.4 !important;
    font-weight:500 !important;
    white-space:normal !important;
}

.vq-history-main .vq-record-summary{
    color:#cbd5e1 !important;
    font-size:11px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}

.vq-detail-summary-card{
    grid-column:span 2 !important;
    border-color:rgba(59,130,246,.16) !important;
    background:rgba(59,130,246,.045) !important;
}

.vq-search-event{
    color:#cbd5e1 !important;
    font-weight:500 !important;
}

.vq-ops-copy .vq-record-summary{
    color:#cbd5e1 !important;
    margin-top:3px !important;
}

@media screen and (max-width:699px){
    .vq-record-summary{
        font-size:10px !important;
        line-height:1.35 !important;
    }
    .vq-detail-summary-card{
        grid-column:1 / -1 !important;
    }
}


/* =========================================================
   VARDIQO 5.4.4 — Unified record actions / closure metadata
========================================================= */

.vq-record-closed{
    color:#86efac !important;
    font-weight:600 !important;
}

.vq-record-actions{
    display:flex !important;
    align-items:center !important;
    gap:5px !important;
    flex-wrap:wrap !important;
}

.vq-record-actions.compact{
    justify-content:flex-end !important;
}

.vq-record-action{
    min-height:29px !important;
    padding:0 8px !important;
    border-radius:6px !important;
    border:1px solid rgba(148,163,184,.16) !important;
    background:#111827 !important;
    color:#cbd5e1 !important;
    font-family:inherit !important;
    font-size:9px !important;
    font-weight:700 !important;
    cursor:pointer !important;
}

.vq-record-action:hover{
    border-color:rgba(96,165,250,.38) !important;
    color:#fff !important;
}

.vq-record-action.danger,
.vq-close-action{
    background:#14261d !important;
    border-color:rgba(34,197,94,.24) !important;
    color:#bbf7d0 !important;
}

.vq-record-closedby{
    color:#86efac !important;
    font-size:9px !important;
    font-weight:700 !important;
    white-space:nowrap !important;
}

.vq-history-item{
    cursor:pointer !important;
}

.vq-history-side{
    flex:0 0 auto !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    gap:7px !important;
}

.vq-verification-prefill{
    padding:11px 12px !important;
    border-radius:8px !important;
    background:rgba(59,130,246,.07) !important;
    border:1px solid rgba(59,130,246,.17) !important;
    color:#bfdbfe !important;
    font-size:12px !important;
    line-height:1.45 !important;
}

.vq-verify-action{
    border-color:rgba(96,165,250,.25) !important;
    color:#bfdbfe !important;
}

/* Four actions: 2 × 2, still compact vertically */
@media screen and (min-width:700px){
    .vq-ops-item{
        grid-template-columns:34px minmax(0,1fr) minmax(110px,auto) 232px !important;
    }

    .vq-ops-actions.vq-ops-actions-four{
        width:232px !important;
        min-width:232px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-template-rows:repeat(2,32px) !important;
        gap:5px !important;
    }

    .vq-ops-actions.vq-ops-actions-four .vq-ops-open,
    .vq-ops-actions.vq-ops-actions-four .vq-ops-finish{
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        height:32px !important;
        min-height:32px !important;
        max-height:32px !important;
        font-size:9px !important;
    }
}

@media screen and (max-width:699px){
    .vq-history-side{
        width:100% !important;
        align-items:stretch !important;
    }

    .vq-record-actions.compact{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .vq-record-action{
        width:100% !important;
        min-height:36px !important;
        font-size:10px !important;
    }

    .vq-ops-actions.vq-ops-actions-four{
        width:100% !important;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-template-rows:repeat(2,38px) !important;
        gap:6px !important;
    }

    .vq-ops-actions.vq-ops-actions-four .vq-ops-open,
    .vq-ops-actions.vq-ops-actions-four .vq-ops-finish{
        width:100% !important;
        height:38px !important;
        min-height:38px !important;
        max-height:38px !important;
    }
}


/* =========================================================
   VARDIQO 5.4.5.1 — SAFE CLICKABLE RECORDS + AUDIT
========================================================= */

.vq-sidebar-new,
.vq-sidebar-protocol,
.vq-sidebar-protocol-icon{
    display:none !important;
}

.vq-open-item,
.vq-ops-item,
.vq-history-item,
.vq-search-result{
    cursor:pointer !important;
}

.vq-open-item:hover,
.vq-ops-item:hover,
.vq-history-item:hover,
.vq-search-result:hover{
    border-color:rgba(96,165,250,.30) !important;
}

.vq-open-hint,
.vq-ops-open-indicator{
    color:#93c5fd !important;
    font-size:10px !important;
    font-weight:700 !important;
    white-space:nowrap !important;
}

@media screen and (min-width:700px){
    .vq-ops-item{
        grid-template-columns:34px minmax(0,1fr) minmax(110px,auto) 76px !important;
        min-height:60px !important;
    }

    .vq-ops-open-indicator{
        display:flex !important;
        justify-content:flex-end !important;
        align-items:center !important;
        gap:5px !important;
        min-width:70px !important;
    }
}

.vq-audit-list{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
}

.vq-audit-item{
    padding:11px 12px !important;
    border-radius:9px !important;
    background:#0f172a !important;
    border:1px solid rgba(148,163,184,.11) !important;
}

.vq-audit-head{
    display:flex !important;
    justify-content:space-between !important;
    gap:10px !important;
}

.vq-audit-head strong{
    color:#f8fafc !important;
    font-size:11px !important;
}

.vq-audit-head span{
    color:#94a3b8 !important;
    font-size:9px !important;
}

.vq-audit-meta{
    margin-top:3px !important;
    color:#93c5fd !important;
    font-size:9px !important;
    font-weight:600 !important;
}

.vq-audit-changes{
    margin-top:8px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:5px !important;
}

.vq-audit-changes > div{
    display:grid !important;
    grid-template-columns:minmax(100px,.7fr) minmax(0,1fr) auto minmax(0,1fr) !important;
    gap:7px !important;
    padding:6px 8px !important;
    border-radius:7px !important;
    background:rgba(255,255,255,.025) !important;
    color:#cbd5e1 !important;
    font-size:9px !important;
}

.vq-audit-arrow{
    color:#64748b !important;
}

@media screen and (max-width:699px){
    .vq-ops-open-indicator{
        grid-area:actions !important;
        width:100% !important;
        min-height:34px !important;
        display:flex !important;
        justify-content:flex-end !important;
        align-items:center !important;
        gap:5px !important;
    }

    .vq-audit-changes > div{
        grid-template-columns:1fr !important;
    }

    .vq-audit-arrow{
        display:none !important;
    }
}


/* =========================================================
   VARDIQO 5.4.6 — WORKFLOW POLISH
========================================================= */

.vq-ops-quick-wrap{
    width:116px !important;
    min-width:116px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
}

.vq-ops-quick-finish{
    width:116px !important;
    min-width:116px !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    margin:0 !important;
    padding:0 9px !important;
    border-radius:7px !important;
    font-size:10px !important;
    font-weight:750 !important;
}

.vq-close-summary-card{
    border-color:rgba(34,197,94,.18) !important;
    background:rgba(34,197,94,.045) !important;
}

.vq-confirm-overlay{
    position:fixed !important;
    inset:0 !important;
    z-index:99999 !important;
    display:none !important;
    align-items:center !important;
    justify-content:center !important;
    padding:20px !important;
    background:rgba(2,6,12,.68) !important;
    backdrop-filter:blur(8px) !important;
}

.vq-confirm-overlay.visible{
    display:flex !important;
}

.vq-confirm-dialog{
    width:min(440px,calc(100vw - 32px)) !important;
    padding:20px !important;
    border-radius:13px !important;
    background:#101826 !important;
    border:1px solid rgba(148,163,184,.16) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.48) !important;
}

.vq-confirm-icon{
    width:38px !important;
    height:38px !important;
    display:grid !important;
    place-items:center !important;
    margin-bottom:13px !important;
    border-radius:9px !important;
    background:rgba(34,197,94,.10) !important;
    border:1px solid rgba(34,197,94,.18) !important;
    color:#86efac !important;
    font-size:17px !important;
    font-weight:800 !important;
}

.vq-confirm-title{
    color:#f8fafc !important;
    font-size:16px !important;
    line-height:1.25 !important;
    font-weight:750 !important;
}

.vq-confirm-text{
    margin-top:7px !important;
    color:#aebdce !important;
    font-size:12px !important;
    line-height:1.5 !important;
}

.vq-confirm-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    margin-top:18px !important;
}

.vq-confirm-actions button{
    height:40px !important;
    border-radius:8px !important;
    font-family:inherit !important;
    font-size:11px !important;
    font-weight:750 !important;
    cursor:pointer !important;
}

.vq-confirm-cancel{
    background:#111827 !important;
    color:#cbd5e1 !important;
    border:1px solid rgba(148,163,184,.14) !important;
}

.vq-confirm-ok{
    background:#173323 !important;
    color:#dcfce7 !important;
    border:1px solid rgba(34,197,94,.26) !important;
}

@media screen and (min-width:700px){
    .vq-ops-item{
        grid-template-columns:34px minmax(0,1fr) minmax(110px,auto) 116px !important;
    }
}

@media screen and (max-width:699px){
    .vq-ops-quick-wrap{
        grid-area:actions !important;
        width:100% !important;
        min-width:0 !important;
    }

    .vq-ops-quick-finish{
        width:100% !important;
        min-width:0 !important;
        height:40px !important;
        min-height:40px !important;
        max-height:40px !important;
        font-size:11px !important;
    }

    .vq-confirm-dialog{
        padding:17px !important;
    }
}


/* =========================================================
   VARDIQO 5.4.7 — SEARCH / FILTER / MASTER DATA
========================================================= */

.vq-ops-controls{
    display:grid !important;
    grid-template-columns:minmax(260px,1fr) auto !important;
    gap:8px !important;
    margin-bottom:7px !important;
}

.vq-ops-search-wrap{
    position:relative !important;
    min-width:0 !important;
}

.vq-ops-search-icon{
    position:absolute !important;
    left:12px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    color:#64748b !important;
    pointer-events:none !important;
}

.vq-ops-search-wrap input{
    width:100% !important;
    height:38px !important;
    padding:0 12px 0 36px !important;
    border-radius:8px !important;
    background:#0e1622 !important;
    border:1px solid rgba(255,255,255,.07) !important;
    color:#f8fafc !important;
    font-family:inherit !important;
    font-size:11px !important;
}

.vq-state-toggle{
    display:flex !important;
    align-items:center !important;
    gap:3px !important;
    padding:3px !important;
    border-radius:8px !important;
    background:#0e1622 !important;
    border:1px solid rgba(255,255,255,.06) !important;
}

.vq-state-toggle button{
    height:30px !important;
    padding:0 10px !important;
    border:0 !important;
    border-radius:6px !important;
    background:transparent !important;
    color:#94a3b8 !important;
    font-family:inherit !important;
    font-size:10px !important;
    font-weight:700 !important;
    cursor:pointer !important;
}

.vq-state-toggle button.active{
    background:#172033 !important;
    color:#f8fafc !important;
    box-shadow:inset 0 -2px 0 #3b82f6 !important;
}

.vq-ops-resultbar{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:10px !important;
    margin-top:6px !important;
    color:#64748b !important;
    font-size:9px !important;
}

.vq-ops-resultbar button{
    border:0 !important;
    background:transparent !important;
    color:#60a5fa !important;
    font-family:inherit !important;
    font-size:9px !important;
    font-weight:700 !important;
    cursor:pointer !important;
}

.vq-closed-chip{
    min-height:32px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 9px !important;
    border-radius:7px !important;
    background:rgba(34,197,94,.07) !important;
    border:1px solid rgba(34,197,94,.15) !important;
    color:#86efac !important;
    font-size:9px !important;
    font-weight:700 !important;
    white-space:nowrap !important;
}

/* Master data */
.vq-master-toolbar{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 180px !important;
    gap:8px !important;
    margin-bottom:12px !important;
}

.vq-master-toolbar input,
.vq-master-toolbar select{
    height:40px !important;
    border-radius:8px !important;
    background:#0f172a !important;
    border:1px solid rgba(148,163,184,.14) !important;
    color:#f8fafc !important;
    font-family:inherit !important;
}

.vq-master-list{
    display:flex !important;
    flex-direction:column !important;
    gap:7px !important;
}

.vq-master-item{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    padding:10px 11px !important;
    border-radius:8px !important;
    background:#111827 !important;
    border:1px solid rgba(148,163,184,.10) !important;
}

.vq-master-type{
    color:#64748b !important;
    font-size:8px !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
    letter-spacing:.07em !important;
}

.vq-master-value{
    margin-top:2px !important;
    color:#e2e8f0 !important;
    font-size:12px !important;
    font-weight:600 !important;
}

.vq-master-actions{
    display:flex !important;
    gap:5px !important;
}

.vq-master-actions button{
    min-height:30px !important;
    padding:0 8px !important;
    border-radius:6px !important;
    background:#0f172a !important;
    border:1px solid rgba(148,163,184,.15) !important;
    color:#cbd5e1 !important;
    font-family:inherit !important;
    font-size:9px !important;
    font-weight:700 !important;
    cursor:pointer !important;
}

.vq-master-actions button.danger{
    color:#fca5a5 !important;
    border-color:rgba(239,68,68,.18) !important;
}

@media screen and (max-width:699px){
    .vq-ops-controls{
        grid-template-columns:1fr !important;
    }

    .vq-state-toggle{
        width:100% !important;
    }

    .vq-state-toggle button{
        flex:1 1 0 !important;
    }

    .vq-master-toolbar{
        grid-template-columns:1fr !important;
    }

    .vq-master-item{
        align-items:flex-start !important;
        flex-direction:column !important;
    }

    .vq-master-actions{
        width:100% !important;
    }

    .vq-master-actions button{
        flex:1 1 0 !important;
    }
}

/* VARDIQO 5.4.8 */
.vq-header-search-compact{flex:0 0 auto!important;width:42px!important;min-width:42px!important;position:relative!important}
.vq-global-search-trigger{width:40px!important;height:40px!important;display:grid!important;place-items:center!important;border-radius:9px!important;border:1px solid rgba(148,163,184,.14)!important;background:#101827!important;color:#94a3b8!important;font:700 17px/1 inherit!important;cursor:pointer!important}
.vq-global-search-popover{display:none!important;position:absolute!important;top:48px!important;left:0!important;width:min(620px,calc(100vw - 40px))!important;z-index:10020!important;padding:8px!important;border-radius:10px!important;background:#0b1220!important;border:1px solid rgba(148,163,184,.16)!important;box-shadow:0 18px 50px rgba(0,0,0,.42)!important}
.vq-header-search-compact.open .vq-global-search-popover{display:block!important}.vq-global-search-popover input{width:100%!important;min-height:42px!important;padding-left:38px!important;padding-right:72px!important}
.vq-ops-item{border-left:3px solid transparent!important;background:#111827!important}.vq-ops-item.vq-state-open{border-left-color:#3b82f6!important}.vq-ops-item.vq-state-closed{border-left-color:#334155!important;opacity:.88!important}.vq-ops-item.vq-state-soon{border-left-color:#f59e0b!important;background:linear-gradient(90deg,rgba(245,158,11,.055),#111827 18%)!important}.vq-ops-item.vq-state-overdue{border-left-color:#ef4444!important;background:linear-gradient(90deg,rgba(239,68,68,.075),#111827 18%)!important}.vq-ops-item.vq-state-closed .vq-ops-title{color:#cbd5e1!important}.vq-ops-item.vq-state-open .vq-ops-title{color:#f8fafc!important}.vq-ops-item.vq-state-soon .vq-ops-title{color:#fbbf24!important}.vq-ops-item.vq-state-overdue .vq-ops-title{color:#f87171!important}.vq-closed-chip{background:#111827!important;border-color:rgba(148,163,184,.15)!important;color:#94a3b8!important}
.vq-master-layout{display:grid!important;grid-template-columns:190px minmax(0,1fr)!important;gap:12px!important}.vq-master-sidebar{padding:10px!important;border-radius:10px!important;background:#0d1522!important;border:1px solid rgba(148,163,184,.10)!important}.vq-master-side-title{padding:4px 8px 9px!important;color:#64748b!important;font-size:9px!important;font-weight:800!important;letter-spacing:.08em!important}.vq-master-sidebar button{width:100%!important;min-height:36px!important;padding:0 10px!important;text-align:left!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#94a3b8!important;font-family:inherit!important;font-size:10px!important;font-weight:700!important;cursor:pointer!important}.vq-master-sidebar button.active{background:#172033!important;color:#f8fafc!important;box-shadow:inset 2px 0 0 #3b82f6!important}.vq-master-main{min-width:0!important}.vq-master-toolbar{grid-template-columns:minmax(0,1fr) auto!important}.vq-master-add-button{min-width:130px!important;padding:0 14px!important;border-radius:8px!important;border:1px solid #2563eb!important;background:#2563eb!important;color:white!important;font-family:inherit!important;font-weight:800!important;cursor:pointer!important}
.vq-master-editor{margin-bottom:12px!important;padding:12px!important;border-radius:10px!important;background:#0d1522!important;border:1px solid rgba(59,130,246,.25)!important}.vq-master-editor-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;margin-bottom:12px!important}.vq-master-editor-head strong{display:block!important;color:#f8fafc!important;font-size:13px!important}.vq-master-editor-head span{display:block!important;margin-top:3px!important;color:#94a3b8!important;font-size:9px!important}.vq-master-editor-head button{border:0!important;background:transparent!important;color:#94a3b8!important;font-size:20px!important;cursor:pointer!important}.vq-master-editor-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.vq-master-editor-grid label{color:#94a3b8!important;font-size:9px!important;font-weight:700!important}.vq-master-editor-grid input,.vq-master-editor-grid select{width:100%!important;height:38px!important;margin-top:5px!important;padding:0 10px!important;border-radius:7px!important;border:1px solid rgba(148,163,184,.14)!important;background:#111827!important;color:#f8fafc!important;font-family:inherit!important}.vq-master-editor-actions{display:flex!important;justify-content:flex-end!important;gap:7px!important;margin-top:11px!important}.vq-master-editor-actions button{min-height:34px!important;padding:0 12px!important;border-radius:7px!important;border:1px solid rgba(148,163,184,.15)!important;background:#111827!important;color:#cbd5e1!important;font-family:inherit!important;font-weight:700!important;cursor:pointer!important}.vq-master-editor-actions button.primary{background:#2563eb!important;border-color:#2563eb!important;color:white!important}.vq-master-links{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:4px!important;color:#94a3b8!important;font-size:9px!important}
@media(max-width:699px){.vq-master-layout{grid-template-columns:1fr!important}.vq-master-sidebar{display:flex!important;overflow-x:auto!important;gap:4px!important}.vq-master-side-title{display:none!important}.vq-master-sidebar button{width:auto!important;white-space:nowrap!important}.vq-master-editor-grid{grid-template-columns:1fr!important}.vq-global-search-popover{position:fixed!important;top:72px!important;left:12px!important;right:12px!important;width:auto!important}}


/* =========================================================
   VARDIQO 5.4.9 — SITE SHARED POCKETBASE MASTER DATA
========================================================= */
#vqMasterEditSite:disabled{
    opacity:.72 !important;
    cursor:not-allowed !important;
}
.vq-master-links span:first-child{
    color:#93c5fd !important;
    font-weight:700 !important;
}


/* =========================================================
   VARDIQO 5.5.0 — DISPATCHER SITE FILTER
========================================================= */
.vq-dispatcher-site-filter{
    min-width:190px !important;
}

.vq-dispatcher-site-filter select,
.vq-dispatcher-site-select{
    height:36px !important;
    min-width:190px !important;
    padding:0 30px 0 10px !important;
    border-radius:8px !important;
    border:1px solid rgba(148,163,184,.12) !important;
    background:#0e1622 !important;
    color:#dbe4ee !important;
    font-family:inherit !important;
    font-size:10px !important;
    font-weight:650 !important;
}

.vq-archive-toolbar{
    grid-template-columns:minmax(0,1fr) 190px 210px !important;
}

.vq-master-toolbar{
    grid-template-columns:minmax(0,1fr) 210px auto !important;
}

@media screen and (max-width:1050px){
    .vq-ops-controls{
        grid-template-columns:minmax(220px,1fr) auto !important;
        align-items:stretch !important;
    }

    .vq-dispatcher-site-filter{
        grid-column:1 / -1 !important;
        width:100% !important;
    }

    .vq-dispatcher-site-filter select{
        width:100% !important;
    }
}

@media screen and (max-width:699px){
    .vq-archive-toolbar,
    .vq-master-toolbar{
        grid-template-columns:1fr !important;
    }

    .vq-dispatcher-site-select,
    .vq-dispatcher-site-filter select{
        width:100% !important;
        min-width:0 !important;
    }
}


/* =========================================================
   VARDIQO 5.6.1 — MOBILE APP REDESIGN
   Desktop remains unchanged. Mobile <= 699px gets its own
   application-style information architecture.
========================================================= */
@media screen and (max-width:699px){

    html,body{
        overflow-x:hidden !important;
    }

    body{
        padding-bottom:92px !important;
    }

    /* ---------- GLOBAL MOBILE WIDTH SAFETY ---------- */
    *,*::before,*::after{
        box-sizing:border-box;
    }

    .container,
    .card,
    .view,
    #mainView,
    #archiveView,
    #formView,
    #documentsView,
    #verificationView{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }

    /* ---------- HEADER ---------- */
    .header,
    header{
        min-height:82px !important;
        padding:12px 18px !important;
        gap:10px !important;
        border-bottom:1px solid rgba(148,163,184,.10) !important;
    }

    .logo{
        min-width:0 !important;
    }

    .logo-title,
    .brand-title{
        font-size:24px !important;
        letter-spacing:.04em !important;
    }

    .logo-subtitle,
    .brand-subtitle{
        font-size:9px !important;
        letter-spacing:.17em !important;
    }

    /* User/site text is redundant on phone; Logout + search are enough. */
    #vqUserBox .user-info,
    #vqUserBox .vq-user-copy,
    .vq-user-copy{
        display:none !important;
    }

    /* ---------- REMOVE DESKTOP-ONLY DASHBOARD ELEMENTS ---------- */
    .dashboard{
        display:none !important;
    }

    #mainView .vq-compact-head{
        display:none !important;
    }

    #mainView > .vq-stat-grid.vq-compact-stats{
        display:none !important;
    }

    #mainView .vq-rail-shift{
        display:none !important;
    }

    /* ---------- 4 QUICK ACTIONS ---------- */
    #mainView .vq-control-sidebar{
        display:block !important;
        position:static !important;
        width:auto !important;
        min-width:0 !important;
        margin:0 !important;
        padding:14px 14px 10px !important;
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
    }

    #mainView .vq-sidebar-kicker,
    #mainView .vq-secondary-actions{
        display:none !important;
    }

    #mainView .vq-primary-actions{
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:8px !important;
        margin:0 !important;
    }

    #mainView .vq-primary-action{
        min-width:0 !important;
        min-height:96px !important;
        height:96px !important;
        padding:10px 5px !important;
        border-radius:12px !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        gap:7px !important;
        text-align:center !important;
        background:#111827 !important;
        border:1px solid rgba(148,163,184,.11) !important;
        box-shadow:none !important;
        transform:none !important;
    }

    #mainView .vq-primary-action:hover,
    #mainView .vq-primary-action.key:hover,
    #mainView .vq-primary-action.pool:hover{
        transform:none !important;
        background:#141e2e !important;
    }

    #mainView .vq-primary-icon{
        width:34px !important;
        height:34px !important;
        flex:0 0 34px !important;
        border-radius:9px !important;
        font-size:18px !important;
    }

    #mainView .vq-primary-copy{
        width:100% !important;
    }

    #mainView .vq-primary-title{
        width:100% !important;
        color:#f8fafc !important;
        font-size:10px !important;
        line-height:1.18 !important;
        font-weight:750 !important;
        white-space:normal !important;
        overflow:visible !important;
    }

    #mainView .vq-primary-sub{
        display:none !important;
    }

    /* ---------- OPERATIVE LIST IS THE DASHBOARD ---------- */
    #mainView .vq-dashboard-bottom{
        display:block !important;
        width:100% !important;
        margin:0 !important;
        padding:0 14px 18px !important;
    }

    #mainView .vq-center-stack{
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }

    #mainView .vq-overdue-banner{
        margin:0 0 8px !important;
        border-radius:10px !important;
    }

    #mainView .vq-panel{
        width:100% !important;
        min-width:0 !important;
        padding:0 !important;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
    }

    #mainView .vq-ops-toolbar{
        display:flex !important;
        flex-direction:column !important;
        gap:8px !important;
        margin:0 0 9px !important;
        padding:0 !important;
    }

    #mainView .vq-ops-controls{
        display:grid !important;
        grid-template-columns:1fr !important;
        grid-template-areas:
            "state"
            "search"
            "site" !important;
        gap:8px !important;
        margin:0 !important;
    }

    #mainView .vq-state-toggle{
        grid-area:state !important;
        width:100% !important;
        min-width:0 !important;
        display:grid !important;
        grid-template-columns:repeat(3,1fr) !important;
        padding:3px !important;
        border-radius:9px !important;
    }

    #mainView .vq-state-toggle button{
        width:100% !important;
        min-width:0 !important;
        height:36px !important;
        font-size:11px !important;
    }

    #mainView .vq-ops-search-wrap{
        grid-area:search !important;
        width:100% !important;
        min-width:0 !important;
    }

    #mainView .vq-ops-search-wrap input{
        width:100% !important;
        min-width:0 !important;
        height:42px !important;
        font-size:11px !important;
        text-overflow:ellipsis !important;
    }

    #mainView .vq-dispatcher-site-filter{
        grid-area:site !important;
        width:100% !important;
        min-width:0 !important;
    }

    #mainView .vq-dispatcher-site-filter select{
        width:100% !important;
        min-width:0 !important;
        height:42px !important;
        font-size:11px !important;
    }

    #mainView .vq-ops-tabs{
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:5px !important;
        width:100% !important;
        overflow:visible !important;
    }

    #mainView .vq-ops-tabs button{
        width:100% !important;
        min-width:0 !important;
        min-height:34px !important;
        padding:0 4px !important;
        border-radius:7px !important;
        border:1px solid rgba(148,163,184,.10) !important;
        background:#111827 !important;
        color:#aebdce !important;
        font-size:9px !important;
        line-height:1.1 !important;
        font-weight:700 !important;
        white-space:normal !important;
    }

    #mainView .vq-ops-tabs button.active{
        color:#f8fafc !important;
        background:#172033 !important;
        border-color:rgba(59,130,246,.30) !important;
        box-shadow:inset 0 -2px 0 #3b82f6 !important;
    }

    #mainView .vq-ops-tabs button:nth-child(5),
    #mainView .vq-ops-tabs button:nth-child(6){
        grid-column:span 2 !important;
    }

    #mainView .vq-ops-resultbar{
        margin:1px 0 0 !important;
        padding:0 1px !important;
        font-size:9px !important;
    }

    #mainView .vq-attention-list{
        display:flex !important;
        flex-direction:column !important;
        gap:8px !important;
        width:100% !important;
    }

    #mainView .vq-ops-item{
        width:100% !important;
        min-width:0 !important;
        display:grid !important;
        grid-template-columns:36px minmax(0,1fr) !important;
        grid-template-areas:
            "icon main"
            "deadline deadline"
            "actions actions" !important;
        gap:8px 10px !important;
        padding:11px !important;
        border-radius:11px !important;
        overflow:hidden !important;
    }

    #mainView .vq-ops-icon{
        grid-area:icon !important;
        width:36px !important;
        height:36px !important;
    }

    #mainView .vq-ops-main{
        grid-area:main !important;
        min-width:0 !important;
    }

    #mainView .vq-ops-title{
        font-size:12px !important;
        line-height:1.2 !important;
        white-space:normal !important;
        overflow:visible !important;
        text-overflow:clip !important;
    }

    #mainView .vq-ops-meta,
    #mainView .vq-ops-summary{
        font-size:9px !important;
        line-height:1.35 !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
    }

    #mainView .vq-ops-deadline{
        grid-area:deadline !important;
        width:100% !important;
        text-align:left !important;
        min-width:0 !important;
    }

    #mainView .vq-ops-actions,
    #mainView .vq-ops-quick-wrap{
        grid-area:actions !important;
        width:100% !important;
        min-width:0 !important;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:6px !important;
    }

    #mainView .vq-ops-actions button,
    #mainView .vq-ops-quick-wrap button{
        width:100% !important;
        min-width:0 !important;
        height:38px !important;
        font-size:10px !important;
    }

    /* ---------- DOCUMENT LIBRARY ---------- */
    #archiveView{
        padding:0 14px 22px !important;
    }

    #archiveView > .vq-page-actions{
        display:none !important;
    }

    #archiveView > .section-header{
        min-height:54px !important;
        margin:0 0 10px !important;
        padding:8px 0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        gap:8px !important;
        border-bottom:0 !important;
    }

    #archiveView > .section-header .section-title{
        font-size:18px !important;
        line-height:1.2 !important;
        letter-spacing:.02em !important;
        order:2 !important;
    }

    #archiveView > .section-header .back{
        order:1 !important;
        width:38px !important;
        min-width:38px !important;
        height:38px !important;
        padding:0 !important;
        font-size:0 !important;
        border:0 !important;
        background:transparent !important;
    }

    #archiveView > .section-header .back::before{
        content:"←" !important;
        font-size:24px !important;
        color:#cbd5e1 !important;
    }

    #archiveView .vq-archive-toolbar{
        width:100% !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:8px !important;
        margin:0 0 12px !important;
    }

    #archiveView .vq-archive-toolbar input,
    #archiveView .vq-archive-toolbar select{
        width:100% !important;
        min-width:0 !important;
        height:44px !important;
        min-height:44px !important;
        padding:0 12px !important;
        border-radius:10px !important;
        background:#111827 !important;
        border:1px solid rgba(148,163,184,.11) !important;
        color:#e5edf6 !important;
        font-size:11px !important;
        text-overflow:ellipsis !important;
    }

    #archiveView .vq-history-grid{
        display:block !important;
        width:100% !important;
        min-width:0 !important;
    }

    #archiveView .vq-history-list{
        display:flex !important;
        flex-direction:column !important;
        gap:8px !important;
        width:100% !important;
        min-width:0 !important;
        max-height:none !important;
        padding:0 !important;
        overflow:visible !important;
    }

    #archiveView .vq-history-item{
        width:100% !important;
        min-width:0 !important;
        min-height:0 !important;
        height:auto !important;
        display:grid !important;
        grid-template-columns:40px minmax(0,1fr) !important;
        grid-template-areas:
            "icon main"
            "side side" !important;
        align-items:start !important;
        gap:7px 10px !important;
        padding:12px !important;
        border-radius:11px !important;
        overflow:hidden !important;
        background:#111827 !important;
    }

    #archiveView .vq-history-icon{
        grid-area:icon !important;
        width:38px !important;
        height:38px !important;
        align-self:start !important;
    }

    #archiveView .vq-history-main{
        grid-area:main !important;
        min-width:0 !important;
        width:100% !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:3px !important;
        overflow:visible !important;
    }

    #archiveView .vq-history-title{
        width:100% !important;
        font-size:12px !important;
        line-height:1.22 !important;
        white-space:normal !important;
        overflow:visible !important;
        text-overflow:clip !important;
        overflow-wrap:anywhere !important;
    }

    #archiveView .vq-history-date{
        width:100% !important;
        font-size:9px !important;
        line-height:1.25 !important;
        white-space:normal !important;
        color:#aebdce !important;
    }

    #archiveView .vq-history-meta{
        width:100% !important;
        display:flex !important;
        flex-wrap:wrap !important;
        gap:3px 5px !important;
        font-size:9px !important;
        line-height:1.3 !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
    }

    #archiveView .vq-history-meta > span{
        min-width:0 !important;
        max-width:100% !important;
        overflow-wrap:anywhere !important;
    }

    #archiveView .vq-record-summary{
        display:none !important;
    }

    #archiveView .vq-history-side{
        grid-area:side !important;
        width:100% !important;
        min-width:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end !important;
        margin-top:2px !important;
    }

    #archiveView .vq-pill{
        min-width:0 !important;
        padding:5px 8px !important;
        border-radius:999px !important;
        font-size:8px !important;
    }

    /* List view: detail pane is hidden until a record is selected. */
    #archiveView:not(.vq-mobile-detail-mode) .vq-history-detail{
        display:none !important;
    }

    #archiveView.vq-mobile-detail-mode .vq-archive-toolbar,
    #archiveView.vq-mobile-detail-mode .vq-history-list{
        display:none !important;
    }

    #archiveView.vq-mobile-detail-mode .vq-history-detail{
        display:block !important;
        width:100% !important;
        min-width:0 !important;
        padding:0 !important;
        border:0 !important;
        background:transparent !important;
    }

    .vq-mobile-detail-back{
        width:100% !important;
        height:40px !important;
        margin:0 0 9px !important;
        padding:0 10px !important;
        text-align:left !important;
        border-radius:8px !important;
        border:1px solid rgba(148,163,184,.11) !important;
        background:#111827 !important;
        color:#cbd5e1 !important;
        font-family:inherit !important;
        font-size:10px !important;
        font-weight:700 !important;
    }

    /* ---------- DETAIL VIEW ---------- */
    #archiveView .vq-detail-head{
        width:100% !important;
        min-width:0 !important;
        padding:12px !important;
        border-radius:11px !important;
    }

    #archiveView .vq-detail-title{
        font-size:16px !important;
        line-height:1.25 !important;
        overflow-wrap:anywhere !important;
    }

    #archiveView .vq-detail-id{
        font-size:9px !important;
        overflow-wrap:anywhere !important;
    }

    #archiveView .vq-detail-grid{
        width:100% !important;
        min-width:0 !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:7px !important;
    }

    #archiveView .vq-detail-card{
        width:100% !important;
        min-width:0 !important;
        padding:10px 11px !important;
        border-radius:9px !important;
    }

    #archiveView .vq-detail-label{
        font-size:8px !important;
    }

    #archiveView .vq-detail-value{
        min-width:0 !important;
        font-size:11px !important;
        line-height:1.35 !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
        word-break:break-word !important;
    }

    #archiveView .vq-detail-actions{
        width:100% !important;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:7px !important;
    }

    #archiveView .vq-detail-actions button{
        width:100% !important;
        min-width:0 !important;
        height:38px !important;
        padding:0 7px !important;
        font-size:9px !important;
        white-space:normal !important;
    }

    /* ---------- ALL FORMS ---------- */
    #formView,
    #documentsView,
    #verificationView{
        padding-left:14px !important;
        padding-right:14px !important;
    }

    #formView .vq-page-actions,
    #documentsView .vq-page-actions,
    #verificationView .vq-page-actions{
        width:100% !important;
        min-width:0 !important;
        gap:6px !important;
        flex-wrap:wrap !important;
    }

    .form-section,
    .card{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        padding:12px !important;
        border-radius:11px !important;
    }

    .form-section .grid,
    .grid{
        width:100% !important;
        min-width:0 !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:9px !important;
    }

    .field{
        width:100% !important;
        min-width:0 !important;
    }

    .field label,
    .form-section label{
        max-width:100% !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
        font-size:10px !important;
    }

    .field input,
    .field select,
    .field textarea,
    .form-section input,
    .form-section select,
    .form-section textarea,
    .qr-field{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        font-size:12px !important;
    }

    textarea{
        min-height:92px !important;
    }

    /* Tables are scrollable instead of pushing the viewport wider. */
    .table-wrap,
    .responsive-table,
    .form-section table{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        overflow-x:auto !important;
        -webkit-overflow-scrolling:touch !important;
    }

    /* ---------- FOOTER / BOTTOM NAV ---------- */
    .footer{
        padding:18px 14px 100px !important;
        font-size:9px !important;
        text-align:center !important;
    }

    .vq-bottom-nav{
        position:fixed !important;
        left:10px !important;
        right:10px !important;
        bottom:max(8px,env(safe-area-inset-bottom)) !important;
        width:auto !important;
        z-index:9990 !important;
        border-radius:16px !important;
    }
}




/* =========================================================
   VARDIQO 5.6.2 — MOBILE FINAL FIX
   Exact overrides for real VARDIQO classes.
========================================================= */
@media screen and (max-width:699px){

  :root{ --vq-mobile-gutter:14px; }

  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body{padding-bottom:96px!important}
  .app{width:100%!important;max-width:100%!important;overflow:hidden!important}

  /* ===== APPBAR ===== */
  .vq-appbar{
    position:sticky!important;
    top:0!important;
    z-index:200!important;
    width:100%!important;
    margin:0 0 14px!important;
    padding:11px var(--vq-mobile-gutter)!important;
    background:rgba(5,9,20,.96)!important;
  }
  .vq-appbar-inner{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    align-items:center!important;
    gap:8px!important;
  }
  .vq-brand-home{
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    overflow:hidden!important;
    text-decoration:none!important;
  }
  .vq-mark{
    width:40px!important;height:40px!important;flex:0 0 40px!important;
    border-radius:11px!important;
  }
  .vq-mark svg{width:27px!important;height:27px!important}
  .vq-brand-block{min-width:0!important;overflow:hidden!important}
  .vq-brand-name{
    font-size:18px!important;line-height:1!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
  }
  .vq-brand-tagline{
    margin-top:4px!important;font-size:7px!important;letter-spacing:.14em!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
  }
  .vq-appbar-spacer{display:none!important}

  .vq-header-search-compact{
    grid-column:3!important;
    grid-row:1!important;
    width:40px!important;min-width:40px!important;
  }
  .vq-global-search-trigger{
    width:40px!important;height:40px!important;border-radius:10px!important;
  }

  #vqUserBox{
    grid-column:2!important;
    grid-row:1!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
  }
  #vqUserBox .vq-usertext{display:none!important}
  .vq-logout{
    width:auto!important;
    min-width:76px!important;
    height:40px!important;
    margin:0!important;
    padding:0 13px!important;
    border-radius:10px!important;
    border:1px solid rgba(148,163,184,.14)!important;
    background:#111827!important;
    color:#e5edf6!important;
    font-family:inherit!important;
    font-size:11px!important;
    font-weight:750!important;
    white-space:nowrap!important;
  }
  .vq-header-action{display:none!important}

  /* ===== MAIN PAGE ===== */
  #mainView{
    width:100%!important;
    padding:0 var(--vq-mobile-gutter) 18px!important;
    margin:0!important;
  }
  #mainView .vq-dashboard-layout{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }
  #mainView .vq-control-sidebar{
    display:block!important;
    width:100%!important;
    padding:0!important;
    margin:0 0 10px!important;
  }
  #mainView .vq-primary-actions{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
  }
  #mainView .vq-primary-action{
    width:100%!important;
    min-width:0!important;
    height:92px!important;
    min-height:92px!important;
    padding:8px 4px!important;
    border-radius:11px!important;
  }
  #mainView .vq-primary-icon{
    width:34px!important;height:34px!important;flex:0 0 34px!important;font-size:17px!important
  }
  #mainView .vq-primary-title{
    font-size:9px!important;line-height:1.15!important;
    overflow-wrap:anywhere!important
  }

  /* never show duplicate desktop KPI/shift blocks on mobile */
  #mainView .vq-compact-head,
  #mainView .vq-compact-stats,
  #mainView .vq-stat-grid,
  #mainView .vq-right-rail,
  #mainView .vq-rail-shift,
  #mainView .vq-shift-summary,
  #mainView [class*="shift-summary"]{
    display:none!important;
  }

  #mainView .vq-dashboard-bottom,
  #mainView .vq-center-stack,
  #mainView .vq-panel{
    width:100%!important;min-width:0!important;max-width:100%!important;
    margin:0!important;padding:0!important
  }

  #mainView .vq-ops-controls{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    width:100%!important;
  }
  #mainView .vq-state-toggle{
    order:1!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  #mainView .vq-ops-search-wrap{order:2!important;width:100%!important}
  #mainView .vq-dispatcher-site-filter{order:3!important;width:100%!important}
  #mainView .vq-ops-search-wrap input,
  #mainView .vq-dispatcher-site-filter select{
    width:100%!important;max-width:100%!important;min-width:0!important;height:42px!important
  }

  #mainView .vq-ops-tabs{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
  }
  #mainView .vq-ops-tabs button{
    width:100%!important;min-width:0!important;height:36px!important;
    padding:0 3px!important;font-size:8.5px!important;white-space:normal!important;
    overflow:hidden!important
  }
  #mainView .vq-ops-tabs button:nth-child(5),
  #mainView .vq-ops-tabs button:nth-child(6){grid-column:span 2!important}

  #mainView .vq-ops-resultbar{
    width:100%!important;min-width:0!important;
    display:flex!important;justify-content:space-between!important;gap:8px!important
  }

  #mainView .vq-attention-list{width:100%!important;min-width:0!important}
  #mainView .vq-ops-item{
    width:100%!important;max-width:100%!important;min-width:0!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    overflow:hidden!important
  }
  #mainView .vq-ops-main,
  #mainView .vq-ops-title,
  #mainView .vq-ops-meta,
  #mainView .vq-ops-summary{
    min-width:0!important;max-width:100%!important;
    white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important
  }
  #mainView .vq-ops-title{font-size:12px!important}
  #mainView .vq-ops-meta,#mainView .vq-ops-summary{font-size:9px!important}

  /* Single quick close/return button must not sit in half a row. */
  #mainView .vq-ops-quick-wrap{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  #mainView .vq-ops-quick-wrap .vq-ops-quick-finish,
  #mainView .vq-ops-finish{
    width:100%!important;
    min-width:0!important;
    height:40px!important;
    margin:0!important;
  }
  #mainView .vq-ops-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important
  }

  /* ===== ARCHIVE / DOCUMENT LIBRARY ===== */
  #archiveView{
    width:100%!important;
    max-width:100%!important;
    padding:0 var(--vq-mobile-gutter) 24px!important;
    overflow:hidden!important;
  }
  #archiveView .vq-page-actions{display:none!important}
  #archiveView>.section-header{
    display:flex!important;
    align-items:center!important;
    min-height:50px!important;
    margin:0 0 10px!important;
    padding:0!important;
    border:0!important;
  }
  #archiveView>.section-header .section-title{
    order:2!important;
    font-size:17px!important;
    letter-spacing:.02em!important
  }
  #archiveView>.section-header .back{
    order:1!important;
    width:40px!important;height:40px!important;min-width:40px!important;
    margin-right:4px!important;padding:0!important;
    font-size:0!important;background:transparent!important;border:0!important
  }
  #archiveView>.section-header .back:before{
    content:"←"!important;font-size:23px!important;color:#e2e8f0!important
  }

  #archiveView .vq-archive-toolbar{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    margin:0 0 11px!important
  }
  #archiveView .vq-archive-toolbar input,
  #archiveView .vq-archive-toolbar select{
    width:100%!important;max-width:100%!important;min-width:0!important;
    height:43px!important;padding:0 11px!important;border-radius:9px!important;
    font-size:11px!important
  }

  #archiveView .vq-history-grid{
    display:block!important;width:100%!important;min-width:0!important
  }
  #archiveView .vq-history-list{
    width:100%!important;min-width:0!important;max-height:none!important;
    overflow:visible!important;padding:0!important;gap:8px!important
  }
  #archiveView .vq-history-item{
    width:100%!important;max-width:100%!important;min-width:0!important;
    height:auto!important;min-height:0!important;
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    grid-template-areas:"icon main" "pill pill"!important;
    gap:7px 9px!important;
    padding:11px!important;
    overflow:hidden!important
  }
  #archiveView .vq-history-icon{
    grid-area:icon!important;width:38px!important;height:38px!important
  }
  #archiveView .vq-history-main{
    grid-area:main!important;
    width:100%!important;min-width:0!important;max-width:100%!important;
    display:block!important;
  }
  #archiveView .vq-history-title{
    display:block!important;width:100%!important;min-width:0!important;
    font-size:12px!important;line-height:1.2!important;
    white-space:normal!important;overflow:visible!important;text-overflow:clip!important;
    overflow-wrap:anywhere!important
  }
  #archiveView .vq-history-date{
    display:block!important;margin-top:3px!important;
    font-size:9px!important;line-height:1.25!important;color:#94a3b8!important
  }
  #archiveView .vq-history-meta{
    display:block!important;width:100%!important;min-width:0!important;
    margin-top:6px!important;font-size:9px!important;line-height:1.4!important;
    color:#9fb0c5!important;white-space:normal!important;overflow-wrap:anywhere!important
  }
  #archiveView .vq-history-meta span{
    white-space:normal!important;overflow-wrap:anywhere!important
  }
  #archiveView .vq-record-summary{display:none!important}
  #archiveView .vq-history-side{
    grid-area:pill!important;
    width:100%!important;min-width:0!important;
    display:flex!important;justify-content:flex-end!important
  }
  #archiveView .vq-pill{
    width:auto!important;min-width:0!important;
    padding:5px 9px!important;font-size:8px!important
  }

  #archiveView:not(.vq-mobile-detail-mode) .vq-history-detail{display:none!important}
  #archiveView.vq-mobile-detail-mode .vq-archive-toolbar,
  #archiveView.vq-mobile-detail-mode .vq-history-list{display:none!important}
  #archiveView.vq-mobile-detail-mode .vq-history-detail{
    display:block!important;width:100%!important;min-width:0!important;
    padding:0!important;border:0!important;background:transparent!important
  }

  #archiveView .vq-detail-head{
    width:100%!important;min-width:0!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;padding:11px!important
  }
  #archiveView .vq-detail-title,
  #archiveView .vq-detail-id{
    min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important
  }
  #archiveView .vq-detail-title{font-size:15px!important}
  #archiveView .vq-detail-grid{
    width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:7px!important
  }
  #archiveView .vq-detail-card{
    width:100%!important;min-width:0!important;padding:10px!important
  }
  #archiveView .vq-detail-value{
    width:100%!important;min-width:0!important;
    white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;
    font-size:11px!important
  }
  #archiveView table{
    width:100%!important;table-layout:fixed!important
  }
  #archiveView td{
    min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important
  }
  #archiveView td:first-child{width:38%!important}
  #archiveView .vq-detail-actions{
    width:100%!important;display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important
  }
  #archiveView .vq-detail-actions button{
    width:100%!important;min-width:0!important;height:39px!important;
    padding:0 6px!important;font-size:9px!important;white-space:normal!important
  }

  /* ===== FORMS ===== */
  #formView,#documentsView,#verificationView{
    width:100%!important;max-width:100%!important;
    padding-left:var(--vq-mobile-gutter)!important;padding-right:var(--vq-mobile-gutter)!important
  }
  .form-section,.field,.grid,.qr-field{
    max-width:100%!important;min-width:0!important
  }
  .form-section .grid,.grid{grid-template-columns:minmax(0,1fr)!important}
  .field input,.field select,.field textarea,.qr-field{
    width:100%!important;max-width:100%!important;min-width:0!important
  }

  /* ===== BOTTOM NAV: FIX THE HALF-MISSING BAR ===== */
  .vq-bottom-nav{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    bottom:max(8px,env(safe-area-inset-bottom))!important;
    transform:none!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    height:68px!important;
    min-height:68px!important;
    padding:7px 5px!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:1fr 1fr 58px 1fr 1fr!important;
    align-items:center!important;
    justify-content:stretch!important;
    gap:2px!important;
    border-radius:16px!important;
    z-index:9999!important
  }
  .vq-nav-btn{
    width:100%!important;min-width:0!important;max-width:none!important;
    height:50px!important;padding:4px 2px!important;margin:0!important;
    border-radius:11px!important;font-size:15px!important
  }
  .vq-nav-btn small{
    max-width:100%!important;font-size:7px!important;line-height:1!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
  }
  .vq-fab{
    width:54px!important;height:54px!important;
    margin:-22px auto 0!important;
    transform:none!important;
    border-radius:17px!important;font-size:28px!important
  }

  .footer{
    width:100%!important;
    padding:26px 14px 98px!important;
    font-size:8px!important
  }
}



/* =========================================================
   VARDIQO 5.6.6 — MOBILE RECORD CARD LAYOUT FIX
   Uses the ACTUAL rendered classes: vq-ops-copy / vq-record-summary.
========================================================= */
@media screen and (max-width:699px){

    #mainView .vq-attention-list{
        width:100% !important;
        min-width:0 !important;
        display:flex !important;
        flex-direction:column !important;
        gap:8px !important;
    }

    #mainView .vq-ops-item{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        min-height:0 !important;

        display:grid !important;
        grid-template-columns:40px minmax(0,1fr) !important;
        grid-template-rows:auto auto auto !important;
        grid-template-areas:
            "icon copy"
            "deadline deadline"
            "action action" !important;

        align-items:start !important;
        gap:8px 10px !important;

        padding:11px !important;
        border-radius:12px !important;
        overflow:hidden !important;
    }

    #mainView .vq-ops-icon{
        grid-area:icon !important;
        width:38px !important;
        height:38px !important;
        min-width:38px !important;

        display:grid !important;
        place-items:center !important;
        align-self:start !important;

        margin:0 !important;
    }

    /* ACTUAL text wrapper */
    #mainView .vq-ops-copy{
        grid-area:copy !important;

        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;

        display:block !important;
        text-align:left !important;
    }

    #mainView .vq-ops-title{
        width:100% !important;
        min-width:0 !important;

        margin:0 0 3px !important;

        font-size:12px !important;
        line-height:1.25 !important;
        font-weight:750 !important;

        white-space:normal !important;
        overflow:visible !important;
        text-overflow:clip !important;
        overflow-wrap:anywhere !important;
        word-break:normal !important;
    }

    #mainView .vq-ops-meta{
        width:100% !important;
        min-width:0 !important;

        margin:0 !important;

        font-size:9px !important;
        line-height:1.4 !important;

        white-space:normal !important;
        overflow:visible !important;
        overflow-wrap:anywhere !important;
        word-break:normal !important;
    }

    #mainView .vq-record-summary{
        display:block !important;

        width:100% !important;
        min-width:0 !important;

        margin:5px 0 0 !important;

        font-size:9.5px !important;
        line-height:1.4 !important;

        white-space:normal !important;
        overflow:visible !important;
        overflow-wrap:anywhere !important;
        word-break:normal !important;
    }

    #mainView .vq-ops-deadline{
        grid-area:deadline !important;

        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;

        margin:0 !important;
        padding:7px 9px !important;

        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:8px !important;

        text-align:left !important;

        border-radius:8px !important;
        background:rgba(255,255,255,.025) !important;
    }

    #mainView .vq-ops-deadline:empty{
        display:none !important;
    }

    #mainView .vq-ops-deadline strong{
        margin:0 !important;

        font-size:11px !important;
        line-height:1.25 !important;

        white-space:normal !important;
        overflow-wrap:anywhere !important;
    }

    #mainView .vq-ops-deadline small{
        margin:0 !important;

        font-size:8.5px !important;
        line-height:1.25 !important;

        text-align:right !important;

        white-space:normal !important;
        overflow-wrap:anywhere !important;
    }

    #mainView .vq-ops-quick-wrap{
        grid-area:action !important;

        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;

        display:block !important;
    }

    #mainView .vq-ops-quick-wrap .vq-ops-finish,
    #mainView .vq-ops-quick-wrap .vq-ops-quick-finish{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;

        height:40px !important;
        min-height:40px !important;

        margin:0 !important;
        padding:0 12px !important;

        border-radius:8px !important;

        font-size:10px !important;
        font-weight:800 !important;

        white-space:nowrap !important;
    }

    #mainView .vq-closed-chip{
        width:100% !important;
        min-height:36px !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        padding:0 10px !important;
        border-radius:8px !important;
    }

    /* Pool urgency: still visually strong, but content stays readable. */
    #mainView .vq-ops-item.pool-overdue,
    #mainView .vq-ops-item.vq-state-overdue{
        border-left-width:4px !important;
    }

    #mainView .vq-ops-item.pool-warning,
    #mainView .vq-ops-item.vq-state-soon{
        border-left-width:4px !important;
    }

    /* The deadline should never become a narrow vertical column again. */
    #mainView .vq-ops-item > .vq-ops-deadline{
        grid-column:1 / -1 !important;
    }

    #mainView .vq-ops-item > .vq-ops-quick-wrap{
        grid-column:1 / -1 !important;
    }

    /* Give content breathing room above the fixed navigation. */
    #mainView .vq-attention-list{
        padding-bottom:18px !important;
    }
}



/* =========================================================
   VARDIQO 5.6.7 — MOBILE LOGGED-IN USER
========================================================= */
@media screen and (max-width:699px){

    /* Mobilon a bejelentkezett felhasználó neve látszik,
       a Site / óra / szerver státusz nem zsúfolja a fejlécet. */
    #vqUserBox{
        grid-column:2 !important;
        grid-row:1 !important;

        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:center !important;

        width:92px !important;
        min-width:92px !important;
        max-width:92px !important;

        gap:4px !important;
        margin:0 !important;
    }

    #vqUserBox .vq-usertext{
        display:block !important;

        width:100% !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;

        text-align:center !important;
        line-height:1 !important;
    }

    #vqUserBox #vqUserName{
        display:block !important;

        width:100% !important;
        min-width:0 !important;

        color:#94a3b8 !important;

        font-family:inherit !important;
        font-size:8px !important;
        line-height:1.15 !important;
        font-weight:700 !important;
        letter-spacing:.01em !important;

        white-space:normal !important;
        overflow-wrap:anywhere !important;
    }

    #vqUserBox #vqUserMeta,
    #vqUserBox #vqHeaderClock,
    #vqUserBox #vqServerState{
        display:none !important;
    }

    #vqUserBox .vq-logout{
        width:100% !important;
        min-width:0 !important;
        height:36px !important;

        margin:0 !important;
        padding:0 8px !important;

        border-radius:9px !important;

        font-size:10px !important;
        line-height:1 !important;
        font-weight:800 !important;
    }

    /* A fejléc három eleme stabilan kifér: brand / user / kereső. */
    .vq-appbar-inner{
        grid-template-columns:minmax(0,1fr) 92px 40px !important;
        gap:7px !important;
    }
}



/* =========================================================
   VARDIQO 5.6.8 — DISPATCHER DOCUMENT SITE SELECTOR
========================================================= */
[data-field-label="Helyszín"].vq-dispatcher-document-site,
#formView select[data-field-label="Helyszín"]{
    border-color:rgba(59,130,246,.30) !important;
    background:#0f1a2b !important;
    color:#f8fafc !important;
    font-weight:700 !important;
}

#formView select[data-field-label="Helyszín"]:focus{
    border-color:#3b82f6 !important;
    box-shadow:0 0 0 3px rgba(59,130,246,.10) !important;
}

@media screen and (max-width:699px){
    #formView select[data-field-label="Helyszín"]{
        width:100% !important;
        min-width:0 !important;
        height:44px !important;
        font-size:12px !important;
    }
}



.vq-userbox{position:relative!important}
.vq-profile-trigger{height:42px;min-width:106px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid rgba(148,163,184,.14);border-radius:10px;background:#111827;color:#e8eef6;font-family:inherit;font-size:11px;font-weight:750;cursor:pointer;transition:.18s ease}
.vq-profile-trigger:hover,.vq-profile-trigger[aria-expanded="true"]{background:#162033;border-color:rgba(96,165,250,.28)}
.vq-profile-trigger-icon{color:#60a5fa;font-size:12px}
.vq-profile-chevron{color:#7f8da1;font-size:12px;transition:transform .18s ease}
.vq-profile-trigger[aria-expanded="true"] .vq-profile-chevron{transform:rotate(180deg)}
.vq-profile-menu{position:absolute;top:calc(100% + 10px);right:0;width:min(360px,calc(100vw - 28px));z-index:10050;display:none;overflow:hidden;border:1px solid rgba(148,163,184,.13);border-radius:14px;background:#0d1522;box-shadow:0 24px 70px -24px rgba(0,0,0,.78)}
.vq-profile-menu.open{display:block;animation:vqProfileIn .16s ease-out}
@keyframes vqProfileIn{from{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.vq-profile-head{display:flex;align-items:center;gap:11px;padding:15px 16px 12px;border-bottom:1px solid rgba(148,163,184,.09)}
.vq-profile-avatar{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:11px;border:1px solid rgba(56,189,248,.22);background:#102337;color:#67e8f9;font-size:15px;font-weight:800}
.vq-profile-head-copy{min-width:0;display:flex;flex-direction:column;gap:4px}
.vq-profile-head-copy strong{color:#f8fafc;font-size:13px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}
#vqProfileRoleBadge{width:max-content;max-width:100%;padding:3px 7px;border-radius:999px;background:rgba(59,130,246,.10);border:1px solid rgba(59,130,246,.18);color:#93c5fd;font-size:8px;line-height:1;font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.vq-profile-status{display:flex;align-items:center;gap:7px;padding:10px 16px;color:#86efac;font-size:9px;font-weight:700;background:rgba(34,197,94,.035);border-bottom:1px solid rgba(148,163,184,.07)}
.vq-profile-status-dot{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 0 3px rgba(52,211,153,.08)}
.vq-profile-info{padding:7px 8px}
.vq-profile-row{display:grid;grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:start;padding:8px 8px;border-radius:8px}
.vq-profile-row:nth-child(odd){background:rgba(255,255,255,.018)}
.vq-profile-row span{color:#78879a;font-size:8.5px;line-height:1.35;font-weight:650}
.vq-profile-row strong{min-width:0;color:#dbe5ef;font-size:9px;line-height:1.35;font-weight:650;text-align:right;white-space:normal;overflow-wrap:anywhere}
.vq-profile-actions{padding:10px;border-top:1px solid rgba(148,163,184,.09)}
.vq-profile-logout{width:100%;height:40px;border-radius:9px;border:1px solid rgba(248,113,113,.18);background:rgba(127,29,29,.12);color:#fca5a5;font-family:inherit;font-size:10px;font-weight:800;cursor:pointer}
.vq-profile-logout:hover{background:rgba(127,29,29,.22);border-color:rgba(248,113,113,.28)}
@media screen and (max-width:699px){
  #vqUserBox{width:auto!important;min-width:0!important;max-width:none!important;flex-direction:row!important;align-items:center!important;gap:0!important}
  #vqUserBox .vq-usertext{display:none!important}
  .vq-profile-trigger{width:82px!important;min-width:82px!important;height:40px!important;padding:0 8px!important;gap:5px!important;font-size:10px!important}
  .vq-profile-trigger-icon{display:none!important}
  .vq-profile-menu{position:fixed!important;top:76px!important;right:12px!important;left:12px!important;width:auto!important;max-height:calc(100dvh - 100px)!important;overflow:auto!important;border-radius:13px!important}
  .vq-profile-row{grid-template-columns:105px minmax(0,1fr)!important}
  .vq-appbar-inner{grid-template-columns:minmax(0,1fr) 82px 40px!important}
}



#vqLoginGate{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 0%,rgba(34,211,238,.12),transparent 35%),radial-gradient(circle at 90% 10%,rgba(139,92,246,.18),transparent 38%),#050914}
.vq-login-card{width:min(100%,420px);padding:28px;border-radius:24px;border:1px solid rgba(125,211,252,.16);background:rgba(12,23,40,.96);box-shadow:0 28px 80px rgba(0,0,0,.55)}
.vq-login-logo{font-size:28px;font-weight:800;letter-spacing:.08em}.vq-login-sub{margin:7px 0 22px;color:#94a3b8;font-size:11px}.vq-login-card label{margin-top:12px}.vq-login-card input{height:46px}.vq-login-btn{width:100%;margin-top:18px;padding:13px;border:0;border-radius:12px;color:white;font-weight:800;background:linear-gradient(145deg,#22d3ee,#7c3aed)}
#vqLoginError{min-height:18px;margin-top:12px;color:#fb7185;font-size:10px}.vq-userbox{display:flex;align-items:center;gap:8px}.vq-usertext{text-align:right;font-size:9px;color:#94a3b8}.vq-usertext strong{display:block;color:#e2e8f0;font-size:10px}.vq-logout{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);color:#cbd5e1;border-radius:10px;padding:8px 10px;font-size:9px;font-weight:800}
@media(max-width:600px){.vq-usertext{display:none}.vq-logout{padding:8px}}
