/* Mobile-first улучшения для AZS Pro */

/* ===== Минимум 44x44 для touch-целей ===== */
@media (max-width: 768px) {
    button, .btn, a.btn-submit, a.btn-shift-link, .nav-pill, .lang-link {
        min-height: 48px;
    }
    input[type="text"], input[type="number"], input[type="password"],
    input[type="email"], input[type="tel"], select, textarea, .form-control, .form-select {
        min-height: 50px !important;
        font-size: 16px !important; /* iOS не зумит при >=16px */
        padding: 12px 14px !important;
    }
    body { padding-bottom: 80px !important; } /* чтобы плавающие кнопки не перекрывали контент */
}

/* ===== Большие кнопки на ввод чисел ===== */
.col-yesterday, .col-today, .ved-org-input {
    -webkit-appearance: none;
    appearance: none;
}
@media (max-width: 768px) {
    .col-yesterday, .col-today {
        font-size: 22px !important;
        font-weight: 800 !important;
        text-align: center !important;
        letter-spacing: 1px !important;
    }
}

/* ===== Sticky submit на мобиле ===== */
@media (max-width: 768px) {
    .sticky-submit {
        position: sticky;
        bottom: 8px;
        z-index: 10;
        box-shadow: 0 -10px 28px rgba(20,99,200,0.18);
    }
}

/* ===== Кнопка установки PWA ===== */
.pwa-install-btn {
    display: none;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    border-radius: 12px;
    background: linear-gradient(135deg, #20d4c4 0%, #1463c8 100%);
    color: white !important;
    font-weight: 700;
    font-size: 0.82rem;
    text-decoration: none;
    border: none;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.pwa-install-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 28px rgba(32,212,196,0.36); }

/* ===== Кнопка камеры в форме инкассы ===== */
.camera-btn {
    width: 100%;
    padding: 16px;
    border: 2px dashed var(--glass-border, #cccccc88);
    border-radius: 14px;
    background: var(--glass-strong, rgba(255,255,255,0.04));
    color: var(--text-primary, #0e1322);
    font-weight: 700;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 56px;
}
.camera-btn:hover { border-color: var(--accent, #3aa1ff); }
.camera-btn .camera-emoji { font-size: 1.4rem; }
.camera-preview {
    margin-top: 10px;
    border-radius: 12px;
    overflow: hidden;
    max-width: 100%;
    display: none;
    border: 1px solid var(--glass-border, #cccccc88);
}
.camera-preview.shown { display: block; }
.camera-preview img { display: block; width: 100%; height: auto; max-height: 320px; object-fit: cover; }

/* ===== Свайп-вводы для смены ===== */
@media (max-width: 768px) {
    .shift-line {
        background: rgba(255,255,255,0.03);
        border-radius: 12px;
        margin-bottom: 10px !important;
        padding: 10px 8px !important;
    }
    .col-num {
        font-size: 1.1rem !important;
    }
}

/* ===== Tap highlight off ===== */
* {
    -webkit-tap-highlight-color: transparent;
}

/* ===== Safe area iOS ===== */
@supports (padding: max(0px)) {
    body {
        padding-left: max(env(safe-area-inset-left), 14px);
        padding-right: max(env(safe-area-inset-right), 14px);
        padding-bottom: max(env(safe-area-inset-bottom), 14px);
    }
}
