/* Глобальный сброс */
    .step-container, .step-container *, .step-container *::before, .step-container *::after {
        box-sizing: border-box !important;
    }

    .step-container {
        padding: 0; 
        margin: 0 auto; 
        width: 100%; 
        max-width: 100%;
        padding-bottom: 20px; 
        overflow-x: hidden;
    }

    /* Карточка с фиксированными отступами */
    .card-main {
        background: #fff; 
        border: 1px solid #e0e0e0; 
        border-radius: 12px; 
        overflow: hidden; 
        margin: 10px; 
        width: calc(100% - 20px);
        box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    }

    /* Таблица - фиксируем макет */
    .card-table {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed; 
    }

    .card-table td { padding: 15px; border-bottom: 1px solid #f2f2f2; }
    .card-table tr:last-child td { border-bottom: none; }

    .card-table td:first-child {
        width: 60px; 
        text-align: center;
        vertical-align: middle;
    }

    .info-label {
        font-size: 11px; color: #000; font-weight: 700; 
        text-transform: uppercase; display: block; letter-spacing: 0.5px;
        margin-bottom: 5px;
    }

    /* Поле ввода */
    .compact-input {
        width: 100% !important; 
        box-sizing: border-box !important;
        border: 1px solid #ccc; 
        border-radius: 8px;
        padding: 12px; 
        font-size: 16px;
        background: #f8faff; 
        font-weight: 600;
        outline: none;
        display: block;
    }

    /* Секция PIN с пунктиром */
    .code-input-wrapper {
        padding: 20px; 
        background: #fdfdfd; 
        border-top: 2px dashed #1a6d8a;
        text-align: center;
    }

    .code-wrapper {
        display: flex; 
        align-items: center; 
        justify-content: space-between;
        gap: 5px; 
        margin-top: 10px;
        width: 100%;
    }

    /* Квадратные ячейки PIN */
    .pin-digit {
        width: 30% !important; 
        height: 55px; 
        text-align: center;
        font-size: 20px; 
        font-weight: 800; 
        border: 2px solid #1a6d8a;
        border-radius: 8px; 
        background: #fff;
        outline: none;
    }

    .pin-digit:focus { border-color: #28a745; background: #f0fff4; }

    /* Кнопка */
    .btn-submit {
        background-color: #1a6d8a; 
        color: #fff; 
        border: none; 
        border-radius: 8px; 
        text-transform: uppercase; 
        padding: 18px 0; 
        font-size: 14px; 
        font-weight: bold; 
        width: calc(100% - 20px); 
        margin: 0 10px;
        cursor: pointer;
    }

    #ajax-response {
        display: none;
        margin: 10px;
        padding: 15px;
        border-radius: 8px;
        font-weight: 800;
        text-align: center;
        font-size: 13px;
    }

    @media (min-width: 768px) {
        .step-container { width: 400px; margin: 0 auto; }
    }