/* === ОФИЦИАЛЬНЫЕ СТИЛИ ЧИСЛОВОЙ ОСИ (trainer-axis) === */
.wp-axis-trainer-wrapper, .wp-axis-trainer-wrapper * {
    box-sizing: border-box !important; line-height: normal !important;
}
.wp-axis-trainer-wrapper {
    width: 100% !important; display: flex !important; justify-content: center !important; margin: 20px 0 !important;
}
.wp-axis-trainer-wrapper p { margin: 0 !important; padding: 0 !important; display: inline !important; }
.wp-axis-trainer-wrapper br { display: none !important; }

.wp-axis-trainer-wrapper .trainer-card {
    width: 100% !important; max-width: 600px !important; background: #ffffff !important; padding: 25px;
    border-radius: 12px !important; box-shadow: 0 4px 15px rgba(0,0,0,0.08) !important; border: 1px solid #e2e8f0 !important; text-align: center !important;
}
.wp-axis-trainer-wrapper h2 { font-size: 22px !important; margin: 0 0 15px 0 !important; color: #1e293b !important; }

.wp-axis-trainer-wrapper .setup-zone {
    margin: 15px 0 !important; padding: 12px !important; background: #f8fafc !important; border: 1px solid #cbd5e1 !important; border-radius: 8px !important; display: flex !important; flex-wrap: wrap !important; justify-content: center !important; align-items: center !important; gap: 10px !important;
}
.wp-axis-trainer-wrapper .setup-zone label { font-size: 14px !important; font-weight: bold !important; color: #475569 !important; }
.wp-axis-trainer-wrapper .setup-zone select {
    height: 36px !important; font-size: 14px !important; font-weight: bold !important; border: 1px solid #cbd5e1 !important; border-radius: 6px !important; color: #007bff !important; background: #ffffff !important; padding: 0 8px !important;
}

.wp-axis-trainer-wrapper .game-info-bar {
    display: flex !important; justify-content: space-between !important; align-items: center !important; margin: 15px 0 !important; padding: 12px 18px !important; background: #f0fdf4 !important; border: 1px solid #bbf7d0 !important; border-radius: 8px !important; gap: 15px !important;
}
.wp-axis-trainer-wrapper .timer-text { font-weight: bold !important; font-size: 15px !important; color: #1c73a8 !important; }
.wp-axis-trainer-wrapper .combo-text { font-size: 15px !important; font-weight: bold !important; color: #b45309 !important; }

/* Графический холст линейки */
.wp-axis-trainer-wrapper .axis-frame {
    width: 100% !important; max-width: 520px !important; height: 180px !important; margin: 25px auto !important; position: relative !important; background: #fafafa !important; border: 2px dashed #cbd5e1 !important; border-radius: 12px !important; padding: 15px !important;
}
.wp-axis-trainer-wrapper .axis-feedback-zone {
    min-height: 38px !important; display: flex !important; align-items: center !important; justify-content: center !important; border-radius: 6px !important; font-size: 13px !important; font-weight: bold !important; transition: all 0.3s ease !important; color: #475569 !important; background: #ffffff !important; border: 1px solid #cbd5e1 !important; text-align: center !important; padding: 4px 15px !important; margin-bottom: 25px !important;
}

/* Числовая линия */
.wp-axis-trainer-wrapper .axis-line-container {
    position: absolute !important; left: 35px !important; right: 35px !important; top: 125px !important; height: 4px !important; background: #475569 !important; display: flex !important; justify-content: space-between !important;
}
.wp-axis-trainer-wrapper .axis-tick {
    position: relative !important; width: 2px !important; height: 14px !important; background: #64748b !important; top: -5px !important;
}
.wp-axis-trainer-wrapper .axis-tick.tick-major {
    height: 24px !important; background: #1e293b !important; width: 3px !important; top: -10px !important;
}
.wp-axis-trainer-wrapper .tick-number {
    position: absolute !important; top: 28px !important; left: 50% !important; transform: translateX(-50%) !important; font-family: monospace !important; font-size: 18px !important; font-weight: 900 !important; color: #1e293b !important;
}
/* СТИЛИ ИДЕАЛЬНО СИММЕТРИЧНОГО МАРКЕРА 📍 */
.wp-axis-trainer-wrapper .axis-flag {
    position: absolute !important; 
    top: -46px !important; 
    font-size: 40px !important; 
    line-height: 1 !important; 
    cursor: default !important; 
    z-index: 99 !important;
    transform: translateX(-50%) translateY(0) !important; 
    animation: flagBounce 0.5s ease infinite alternate !important;
    transition: left 0.25s ease-in-out !important;
}
@keyframes flagBounce {
    0% { transform: translateX(-50%) translateY(0); }
    100% { transform: translateX(-50%) translateY(-6px); }
}

/* Ввод ответа */
.wp-axis-trainer-wrapper .answer-input-box {
    display: flex !important; justify-content: center !important; align-items: center !important; gap: 10px !important; margin: 20px 0 !important;
}
.wp-axis-trainer-wrapper .game-input {
    width: 130px !important; height: 48px !important; font-size: 24px !important; font-weight: bold !important; text-align: center !important; border: 2px solid #007bff !important; border-radius: 8px !important; color: #1e293b !important; background: #ffffff !important; padding: 0 !important;
}

.wp-axis-trainer-wrapper .action-buttons-box {
    display: flex !important; justify-content: center !important; gap: 12px !important; flex-wrap: wrap !important; margin-top: 15px !important; width: 100% !important;
}
.wp-axis-trainer-wrapper .btn-action {
    background-color: #28a745 !important; color: #ffffff !important; border: none !important; border-radius: 6px !important; font-size: 15px !important; font-weight: bold !important; height: 44px !important; padding: 0 25px !important; cursor: pointer !important; transition: background 0.2s ease-in-out !important; display: inline-block !important; text-decoration: none !important;
}
.wp-axis-trainer-wrapper .btn-action:hover { background-color: #218838 !important; }
.wp-axis-trainer-wrapper .btn-blue { background-color: #007bff !important; }
.wp-axis-trainer-wrapper .btn-blue:hover { background-color: #0056b3 !important; }
.wp-axis-trainer-wrapper .btn-orange { background-color: #f59e0b !important; }
.wp-axis-trainer-wrapper .btn-orange:hover { background-color: #d97706 !important; }

@media (max-width: 480px) {
    .wp-axis-trainer-wrapper .trainer-card { padding: 15px 5px !important; }
    .wp-axis-trainer-wrapper .btn-action { width: 100% !important; }
    .wp-axis-trainer-wrapper .action-buttons-box { flex-direction: column !important; gap: 8px !important; }
    .wp-axis-trainer-wrapper .game-info-bar { flex-direction: column !important; gap: 6px !important; text-align: center !important; }
    
    .wp-axis-trainer-wrapper .axis-frame { 
        padding: 10px 5px !important; 
        height: 220px !important; 
        display: flex !important;
        flex-direction: column !important;
    }
    
    .wp-axis-trainer-wrapper .axis-line-container { 
        left: 20px !important; 
        right: 20px !important; 
        top: 70px !important; 
    }
    .wp-axis-trainer-wrapper .tick-number { font-size: 14px !important; top: 24px !important; }
    
    .wp-axis-trainer-wrapper .axis-flag { font-size: 32px !important; top: -36px !important; }
    
    .wp-axis-trainer-wrapper .axis-feedback-zone {
        position: absolute !important;
        top: 135px !important;
        left: 10px !important;
        right: 10px !important;
        height: auto !important;
        min-height: 70px !important;
        margin-bottom: 0 !important;
        font-size: 12px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}
